mirror of
https://github.com/sbroenne/mcp-server-excel.git
synced 2026-09-19 07:53:08 +08:00
0eb11c04e9
* Update README to streamline API safety section and enhance clarity * Update robots.txt to enhance sitemap visibility and prioritize crawling for Googlebot and Bingbot * Remove obsolete PowerQuery integration tests for LoadTo and timeout scenarios * Refactor using directives across multiple command files for consistency * Remove redundant ListExcelSources and Unload methods (#133) Removed ListExcelSources method from PowerQuery commands as it duplicates functionality already available via separate excel_table(list) and excel_namedrange(list) tool calls. LLMs can easily chain these operations. Also removed Unload method as the interface signature was removed during earlier refactoring but enum/tool routing remained. **Changes:** - Removed IPowerQueryCommands.ListExcelSources() interface method - Removed PowerQueryCommands.ListExcelSources() implementation (~95 lines) - Removed PowerQueryAction.ListExcelSources enum value - Removed action mapping for 'list-excel-sources' from ActionExtensions - Removed MCP Server tool routing for ListExcelSources (~15 lines) - Removed PowerQueryAction.Unload enum value - Removed action mapping for 'unload' from ActionExtensions - Removed MCP Server tool routing for Unload (~20 lines) - Converted 10 PowerQuery tests to inline M code (removed .pq file dependencies) **Total cleanup:** ~140 lines removed **Related to #133:** Code cleanup discovered both bugs already fixed: - Bug #1 (Column Preservation): Tests pass - Update handles column changes - Bug #2 (ListObject Accumulation): Delete() removes ListObjects properly - All regression tests passing (2/2) * Remove redundant QueryTable functionality QueryTable functionality duplicates existing Power Query + Table + Connection tool capabilities. LLMs can compose workflows from existing tools without needing a separate QueryTable abstraction. **Redundancy Analysis:** - CreateFromQuery → excel_powerquery(action: 'create', loadDestination: 'worksheet') - CreateFromConnection → excel_connection(action: 'loadto') - List → excel_table(list) + excel_powerquery(list) - Refresh → excel_powerquery(refresh) or excel_connection(refresh) - Delete → excel_powerquery(delete) or excel_table(delete) - UpdateProperties → Rarely needed, can be set during creation **Files Deleted:** - src/ExcelMcp.Core/Commands/QueryTable/ directory (IQueryTableCommands.cs, QueryTableCommands.cs, QueryTableCommands.Lifecycle.cs) - src/ExcelMcp.Core/Models/QueryTableTypes.cs - src/ExcelMcp.CLI/Commands/QueryTable/ directory - src/ExcelMcp.McpServer/Tools/ExcelQueryTableTool.cs - tests/ExcelMcp.Core.Tests/Integration/Commands/QueryTable/ directory (4 test files) - src/ExcelMcp.McpServer/Prompts/Content/excel_querytable.md - specs/QUERYTABLE-SUPPORT-SPECIFICATION.md **Code Changes:** - Removed QueryTableAction enum from ToolActions.cs - Removed ToActionString mapping from ActionExtensions.cs - Removed CLI command registrations from Program.cs - Updated tool count: 12 → 11 in all README files - Updated action count: 163 → 155 in all README files **Total cleanup:** ~800 lines removed (Core: ~400, CLI: ~150, MCP: ~100, Tests: ~150) **Same rationale as ListExcelSources removal:** LLMs don't need convenience wrappers - they can chain operations from focused, single-purpose tools. * Update documentation to remove QueryTable references - GitHub Pages: Update tool count (12→11) and action count (163→155) - Copilot instructions: Remove QueryTable from architecture patterns - MCP prompts: Remove QueryTable guidance from tool selection, user patterns, server quirks - MCP prompts: Update excel_connection and excel_powerquery to remove QueryTable references - Specs: Remove QueryTableTool from session redesign tracking - ComInterop: Remove unused FindQueryTable() helper (~70 lines) - Delete ExcelQueryTablePrompts.cs (no longer needed) - VS Code extension: Update dev dependencies (TypeScript types, eslint)
92 lines
2.3 KiB
JSON
92 lines
2.3 KiB
JSON
{
|
|
"name": "excel-mcp",
|
|
"displayName": "Excel MCP Server",
|
|
"description": "Excel automation for AI assistants - manage Sheets, Power Query, DAX, VBA, Tables, Ranges, Formatting, Validation & more - requires Excel to be installed",
|
|
"version": "1.1.3",
|
|
"publisher": "sbroenne",
|
|
"icon": "icon.png",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/sbroenne/mcp-server-excel"
|
|
},
|
|
"bugs": {
|
|
"url": "https://github.com/sbroenne/mcp-server-excel/issues"
|
|
},
|
|
"homepage": "https://github.com/sbroenne/mcp-server-excel#readme",
|
|
"license": "MIT",
|
|
"engines": {
|
|
"vscode": "^1.105.0"
|
|
},
|
|
"os": [
|
|
"win32"
|
|
],
|
|
"categories": [
|
|
"AI",
|
|
"Chat",
|
|
"Data Science"
|
|
],
|
|
"keywords": [
|
|
"mcp",
|
|
"model context protocol",
|
|
"excel",
|
|
"microsoft",
|
|
"office",
|
|
"spreadsheet",
|
|
"automation",
|
|
"power query",
|
|
"m language",
|
|
"dax",
|
|
"data model",
|
|
"power pivot",
|
|
"vba",
|
|
"macro",
|
|
"table",
|
|
"copilot",
|
|
"ai",
|
|
"github copilot",
|
|
"data analysis"
|
|
],
|
|
"activationEvents": [
|
|
"onStartupFinished"
|
|
],
|
|
"extensionDependencies": [
|
|
"ms-dotnettools.vscode-dotnet-runtime"
|
|
],
|
|
"main": "./out/extension.js",
|
|
"files": [
|
|
"out/**",
|
|
"bin/**",
|
|
"README.md",
|
|
"CHANGELOG.md",
|
|
"LICENSE",
|
|
"icon.png"
|
|
],
|
|
"contributes": {
|
|
"mcpServerDefinitionProviders": [
|
|
{
|
|
"id": "excel-mcp",
|
|
"label": "Excel MCP"
|
|
}
|
|
]
|
|
},
|
|
"scripts": {
|
|
"clean": "cd .. && dotnet clean src/ExcelMcp.McpServer/ExcelMcp.McpServer.csproj -c Release",
|
|
"build:mcp-server": "npm run clean && cd .. && dotnet publish src/ExcelMcp.McpServer/ExcelMcp.McpServer.csproj -c Release -r win-x64 --self-contained -o vscode-extension/bin --verbosity minimal",
|
|
"vscode:prepublish": "npm run build:mcp-server && npm run compile",
|
|
"compile": "tsc -p ./",
|
|
"watch": "tsc -watch -p ./",
|
|
"package": "npm run build:mcp-server && vsce package",
|
|
"lint": "eslint src --ext ts"
|
|
},
|
|
"devDependencies": {
|
|
"@types/node": "^22.19.1",
|
|
"@types/vscode": "^1.106.1",
|
|
"@typescript-eslint/eslint-plugin": "^8.46.2",
|
|
"@typescript-eslint/parser": "^8.46.2",
|
|
"@vscode/vsce": "^3.7.0",
|
|
"eslint": "^9.39.1",
|
|
"typescript": "^5.9.3",
|
|
"typescript-eslint": "^8.47.0"
|
|
}
|
|
}
|