Reported issues for MCP Server for Excel
Pod holds 23 of 43 problems reported by people outside the maintainer team. Issues filed by the project's own owners, members and collaborators are excluded entirely — a maintainer's release checklist is not a warning to a prospective user.
Back to MCP Server for Excel.
Most discussed
[BUG] screenshot capture/capture-sheet fails with COMException 0x800A03EC on a protected worksheet
Bug Description
screenshot capture and capture-sheet fail with a bare COMException: 0x800A03EC when the target worksheet is protected. Unprotecting the sheet and repeating the same call succeeds — protection alone is the trigger, not the range, not the workbook, not whether Excel is visible.
v1.10.6 made this easy to reach by adding worksheet protection to the server. A caller can now protect a sheet and then be unable to capture it in the same session, with an error that doesn't expl
Read the thread · 2026-08-17 · open · external user · 6 comments
JSON Schema array items format incompatible with Gemini API (400)
Problem
When mcp-excel is enabled as an MCP server alongside the Gemini API, the server registers ~385 function declarations. Gemini's API rejects the request with HTTP 400 errors like:
` GenerateContentRequest.tools[0].function_declarations[377].parameters.properties[formulas].items: field predicate failed: == Type.ARRAY GenerateContentRequest.tools[0].function_declarations[377].parameters.properties[formats].items: field predicate failed: == Type.ARRAY GenerateContentRequest.tools[0].fu
Read the thread · 2026-06-10 · closed · external user · 5 comments
[MCP] namedrange list crashes session with "Connection closed"
Issue Description
namedrange action list crashes the MCP session with MCP error -32000: Connection closed. Reproduced on v1.8.61 against two different .xlsx files in the same session. After the crash, the session is gone (subsequent calls return Session '<sessionId>' not found), and Excel.exe is left as an orphaned process holding an exclusive lock on the file — file action=open against the same file then fails with `Cannot open '...'. The file is already open in Excel or another p
Read the thread · 2026-05-17 · closed · external user · 9 comments
Session open/create fails with Specified cast is not valid on Windows 11 + Office 365 Click-to-Run
Bug: session open/create fails with Specified cast is not valid
Environment
- Excel MCP extension: 1.8.32
- Server:
Sbroenne.ExcelMcp.McpServer.exe1.8.32.0 - Windows: Microsoft Windows 11 Home, build 26200, x64
- Office: Microsoft 365 Click-to-Run x64
- Office version:
16.0.19725.20190
Command used
Tested these MCP actions:
file(action: 'open')file(action: 'create')file(action: 'test')
Expected behavior
file openshould open a valid workbook and return
Read the thread · 2026-03-22 · closed · external user · 15 comments
[BUG] vba.run fails on existing .xlsm workbook while datamodel.evaluate and VBA project operations succeed
Bug Description
On an existing .xlsm workbook, vba.run consistently fails with:
InvalidOperationException: VBA trust access is not enabled. Enable 'Trust access to the VBA project object model' in Excel Trust Center settings.
The error appears misleading. In the same healthy interactive service/session:
datamodel.evaluatesucceedsvba.listsucceedsvba.updatesucceedsvba.deletesucceedsvba.importsucceeds
The failure appears isolated to vba.run on the existi
Read the thread · 2026-03-20 · closed · external user · 4 comments
[BUG] An error occurred invoking 'excel_range'.
Bug Description
Claude Code fails to read cells with excel_range. All actions (get-values, get-used-range, get-formulas) fail with a generic error message. Other tools like excel_table, excel_range_edit, excel_worksheet, excel_pivottable work correctly. The workaround is using excel_range_edit with action: "find" and searchValue: "*" to read cell values.
Component
- MCP Server (Model Context Protocol server for AI assistants -
mcp-excel)
*For MCP Server:
Read the thread · 2026-02-08 · closed · external user · 5 comments
[FEATURE] DAX EVALUATE query execution
Is your feature request related to a problem?
Currently, there's no way to execute DAX queries and retrieve tabular results programmatically. Users can create measures, but cannot run ad-hoc DAX EVALUATE queries to explore data or debug calculations.
Component
- MCP Server (AI assistant integration)
- CLI (Command-line interface)
- Both (MCP Server and CLI)
- Core Library (Shared functionality)
- Not sure
Describe the solution you'd like
Add
Read the thread · 2026-01-13 · closed · external user · 3 comments
[BUG] v1.4.49 was the last working version – MCP server fails to start
Bug Description
When using the MCP Excel Server to create a new Excel file via the CreateEmpty action, the MCP server fails to start and exits immediately. Version 1.4.49 was the last version where this workflow worked correctly.
Component
- MCP Server (Model Context Protocol server for AI assistants -
mcp-excel) - CLI (Command-line interface -
ExcelMcp.exe) - Core Library (Shared functionality)
- Not sure
Command/Usage
For MCP Server:
- Tool na
Read the thread · 2026-01-10 · closed · external user · 3 comments
Most recent
CLI: powerquery load-to accepts --timeout but ignores it
Reproduced on Windows 11, excelcli.exe 1.10.7 (standalone binary). Companion to the two-clock docs issue; this is the code side.
Bug Description
IPowerQueryCommands.LoadTo has no TimeSpan timeout. Shared CLI settings still accept --timeout on load-to. The value is dropped. Load-to is capped by the session clock (default 120s) plus an internal DataOperationTimeout CTS (30 min), not by the flag the user passed.
Component
- CLI
- Core Library
Comman
Read the thread · 2026-08-19 · closed · external user · 2 comments
CLI: powerquery list always includes full Formula (FormulaPreview already exists)
Using excelcli.exe 1.10.7 (standalone binary). Enhancement, not a local workaround in CLI flags.
Is your feature request related to a problem?
powerquery list serializes the entire M formula for every query. Two medium queries can be tens of thousands of characters. Terminals truncate; coding-agent context fills. Live powerquery list --help has no names-only / --formula-preview switch. view is one query and still full M.
PowerQueryInfo already has both Formula (full) and
Read the thread · 2026-08-19 · closed · external user · 2 comments
CLI: powerquery evaluate cleanup misses Excel-named Connection / Connection1 leftovers
Reproduced on Windows 11, excelcli.exe 1.10.7 (standalone binary).
Bug Description
powerquery evaluate is documented as testing M without a permanent query (“temporary objects auto-deleted”). Cleanup deletes connections whose name contains __pq_eval_*. Excel names ListObjects.Add-from-connection-string connections Connection, Connection1, … Those names do not contain the temp query id, so leftovers remain. A later session close --save writes them into the xlsx (`xl/con
Read the thread · 2026-08-19 · closed · external user · 2 comments
CLI: service status / session list use a 2s pipe timeout; empty session list is not proof of no sessions
Reproduced on Windows 11, excelcli.exe 1.10.7 (standalone binary).
Bug Description
excelcli -q service start returns {"success":true,"message":"Service started."}. Immediate service status / session list often return Service connection timed out. session.open on the same daemon can still work.
session list on a daemon that does not answer in 2s prints {"sessions":[]} with exit 0 — empty list is not proof there are no sessions.
There is no --timeout on `service st
Read the thread · 2026-08-19 · closed · external user · 2 comments
Docs/skill: two timeout clocks; load-to --timeout is accepted and ignored
Using excelcli.exe 1.10.7 and the v1.10.7 excel-cli skill / IPowerQueryCommands XML.
Bug Description
Timeout docs contradict each other, and load-to advertises a timeout it does not take.
Coding agents raise --timeout on load-to or pass timeout: 0 expecting “wait forever,” then hit the session 120s cap (or think refresh’s 30 min clock applies to load-to).
Component
- CLI
- MCP Server (same XML summary)
Command/Usage
session open --timeout hel
Read the thread · 2026-08-19 · closed · external user · 2 comments
CLI: batch JSON timeout as integer fails (CLI --timeout seconds works)
Reproduced on Windows 11, excelcli.exe 1.10.7 (standalone binary).
Bug Description
CLI --timeout 3600 is seconds (ParseTimeSpanOrSeconds, changelog 1.8.63 / #640). The same integer in batch JSON fails deserialization.
Component
- CLI
- Core Library (batch/service args typed as
TimeSpan?)
Command/Usage
[
{"command": "session.open", "args": {"filePath": "C:\\tmp\\probe.xlsx"}},
{"command": "powerquery.refresh", "args": {"queryName": "Probe", "
[Read the thread](https://github.com/sbroenne/mcp-server-excel/issues/783) · 2026-08-19 · closed · external user · 2 comments
### CLI: batch JSON ignores mCodeFile (CLI --m-code-file works)
Reproduced on Windows 11, `excelcli.exe` **1.10.7** (standalone binary).
## Bug Description
`excelcli batch` ignores `args.mCodeFile`. The same evaluate/create/update with CLI `--m-code-file` works. Batch requires inline `mCode`.
## Component
- [x] **CLI**
- [x] **Core Library** (generated `DispatchToCore` / service args)
## Command/Usage
```json
[
{"command": "session.open", "args": {"filePath": "C:\\tmp\\probe.xlsx"}},
{"command": "powerquery.evaluate", "args": {"mCodeFile": "C:\\tmp
[Read the thread](https://github.com/sbroenne/mcp-server-excel/issues/782) · 2026-08-19 · closed · external user · 2 comments
### CLI: powerquery load-to destination `worksheet` reports success and unloads to ConnectionOnly
Reproduced on Windows 11, `excelcli.exe` **1.10.7** (standalone binary).
## Bug Description
`powerquery load-to --load-destination worksheet` returns `"success": true` and leaves the query **connection-only**. If the query was already loaded to a table, the table is **stripped**.
This is the leftover *enum-string* hole after #764 / #770. 1.10.7 now rejects unknown *options*. An unknown *enum value* still succeeds.
Skill XML, `IPowerQueryCommands` XML, and the website table document destinati
[Read the thread](https://github.com/sbroenne/mcp-server-excel/issues/781) · 2026-08-19 · closed · external user · 2 comments
### Docs: cli-commands.md parameter names do not match the binary (--sheet-name vs --sheet); pythoninexcel missing; consider shipping skills/shared
Using `excel-skills-v1.10.5.zip` from the v1.10.5 release, with `excelcli.exe` 1.10.5.
### 1. Parameter names in `cli-commands.md` do not match the binary
`skills/excel-cli/references/cli-commands.md` documents parameter names that the CLI does not accept:
| Documented in `cli-commands.md` | Actual (`excelcli <cmd> --help`) |
|---|---|
| `--sheet-name` | `--sheet` |
| `--range-address` | `--range` |
Affects at least `screenshot`, `chart` and `worksheetstyle`. Example - the `screenshot` param
[Read the thread](https://github.com/sbroenne/mcp-server-excel/issues/767) · 2026-08-14 · closed · external user · 1 comment
### CLI: pythoninexcel get-result exceeding the session timeout wedges the service and strands an EXCEL.EXE
Windows 11, Excel 16.0 (build 20228.0), `excelcli.exe` **1.10.5**, M365 with Python in Excel enabled.
### Summary
When `pythoninexcel get-result` is given a `--max-wait-seconds` **greater than** the session
`--timeout`, the operation does not merely fail - it leaves the session unclosable, then takes the
whole CLI service down, and `service stop --forced` does not reap the child Excel.
### Repro
```console
> excelcli session open C:\tmp\verify.xlsx --timeout 180
> excelcli pythoninexcel set-
[Read the thread](https://github.com/sbroenne/mcp-server-excel/issues/766) · 2026-08-14 · closed · external user · 1 comment
### CLI: session open --show does not make Excel visible (isExcelVisible:true but Application.Visible is False)
Windows 11, Excel 16.0 (build 20228.0), `excelcli.exe` **1.10.5**.
### Summary
`session open --show` reports the session as visible, but Excel is never actually shown.
```console
> excelcli session open C:\tmp\verify.xlsx --show --timeout 600
{"sessionId":"83e65acd...","success":true}
> excelcli session list
{"sessions":[{"sessionId":"83e65acd...","isExcelVisible":true,"activeOperations":0,"canClose":true}]}
Attaching to that same instance via COM reports the opposite:
import
[Read the thread](https://github.com/sbroenne/mcp-server-excel/issues/765) · 2026-08-14 · closed · external user · 1 comment
### CLI: unrecognised arguments are silently ignored and still return success:true (CLI-side recurrence of #473)
Reproduced on Windows 11, Excel 16.0 (build 20228.0), `excelcli.exe` **1.10.5**, countryCode 1.
### Summary
The CLI accepts unrecognised arguments, ignores them, and still reports `"success": true`.
```console
> excelcli diag echo --message "sentinel"
{"action":"echo","message":"sentinel","success":true}
> excelcli diag echo --message "sentinel" --totally-bogus-flag xyz
{"action":"echo","message":"sentinel","success":true} <-- identical; no warning, no error
Relationship to #47
Read the thread · 2026-08-14 · closed · external user · 1 comment
[MCP] conditionalformat add-rule: bool/int parameters throw JsonException ("could not be converted to System.String")
Issue Description
conditionalformat action add-rule fails with a JsonException as soon as any of its non-string parameters is supplied. The tool schema declares them as boolean / integer, but the matching args properties on the service side are typed as string, so a client that follows the schema always gets Cannot get the value of a token type 'True' as a string.
Seven parameters are affected: font_bold, font_italic, data_bar_show_value, icon_set_reverse, `icon_se
Read the thread · 2026-08-06 · closed · external user · 2 comments
[MCP] ## Bug: range get-formulas / set-formulas always fail with COMException 0x800A03EC (de-DE locale, Excel 2019 32-bit)
Bug: range get-formulas / set-formulas always fail with COMException 0x800A03EC (de-DE locale, Excel 2019 32-bit)
Summary
Reading or writing cell formulas via the range tool always fails with COMException: 0x800A03EC, while reading/writing values, formatting, worksheet ops and VBA all work normally. The failure occurs on every cell — including empty cells and trivial, locale-independent formulas — so it is not a formula-content or locale-separator problem. This ma
Read the thread · 2026-08-02 · open · external user · 3 comments
Add type-specific details to list-rules response for colorScale, iconSet, dataBar and visual rule types
Summary
Currently, list-rules and list-worksheet-rules return only common fields (type, appliesTo, priority, stopIfTrue, and interior/font/borders for cellValue/expression rules). For visual rule types (colorScale, dataBar, iconSet, top10, aboveAverage, uniqueValues, blanksCondition, timePeriod), their specific configuration is not exposed, making it impossible to fully inspect or round-trip these rules.
Motivation
- Full inspection: Users need
Read the thread · 2026-07-23 · closed · external user · 1 comment
The remaining reports are on the project's issue tracker.