MCP server for Excel add-ins via WebView2 CDP
Valid MCP server (1 strong, 1 medium validity signals). No known CVEs in dependencies. Package registry verified. Imported from the Official MCP Registry. Trust signals: 5 highly-trusted packages.
3 files analyzed · 1 issue found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
This plugin requests these system permissions. Most are normal for its category.
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-dsbissett-excel-webview2-mcp": {
"args": [
"-y",
"@dsbissett/excel-webview2-mcp"
],
"command": "npx"
}
}
}From the project's GitHub README.
Professional MCP connectivity for Microsoft Excel add-ins running inside WebView2.
| Item | Value |
|---|---|
| Package | @dsbissett/excel-webview2-mcp |
| Upstream | Fork of ChromeDevTools/chrome-devtools-mcp |
| Target runtime | Excel add-ins hosted in WebView2 |
| Debug endpoint | http://127.0.0.1:9222 |
| Recommended setup | Claude Code plugin marketplace |
[!IMPORTANT] As of v0.0.2, this server can launch Excel and sideload your add-in for you. You no longer need to start the dev server or attach a debugger before using it —
excel_launch_addinwill start your local dev server (if configured) and launch Excel with WebView2 remote debugging enabled on port9222. Manual pre-launch is still supported: if an Excel add-in is already running with remote debugging on9222, the server will attach to it.
9222 enabled.excel_context_info, excel_workbook_info, excel_list_worksheets, excel_worksheet_info, excel_active_range, excel_used_range.excel_read_range, excel_range_properties, excel_range_formulas, excel_range_special_cells, excel_find_in_range.excel_list_conditional_formats, excel_list_data_validations.excel_list_tables, excel_table_info, excel_table_rows, excel_table_filters, excel_list_named_items.excel_list_comments, excel_list_shapes.excel_calculation_state, excel_list_pivot_tables, excel_pivot_table_info, excel_pivot_table_values.excel_list_charts, excel_chart_info, excel_chart_image.excel_custom_xml_parts, excel_settings_get.excel_stop_addin now force-kills the dev server process tree via taskkill.This repository is a fork of the Chrome DevTools MCP repository, ChromeDevTools/chrome-devtools-mcp. It preserves the upstream DevTools and MCP foundation, while adapting the connection model for Microsoft Excel add-ins hosted in WebView2.
Claude Code
|
v
excel-webview2-mcp
|
v
WebView2 remote debugging endpoint (localhost:9222)
|
v
Locally running Excel add-in
That separation matters: excel-webview2-mcp is a bridge to an existing debug session. It is not the thing that launches or hosts the add-in.
You have two supported workflows:
manifest.xml and a dev server script) lives on disk.npx @dsbissett/excel-webview2-mcp@latest is runnable.Call excel_detect_addin first to confirm the project is discovered, then excel_launch_addin to start the dev server and sideload the add-in into Excel with CDP port 9222 enabled. Use excel_stop_addin to tear everything down.
9222 (see Launching Excel with the debug port).http://127.0.0.1:9222.Verify with:
curl http://127.0.0.1:9222/json
This section applies to Excel desktop on Windows. Per Microsoft's WebView2 and Office add-in documentation, the supported way to pass Chromium flags into the WebView2 runtime is WEBVIEW2_ADDITIONAL_BROWSER_ARGUMENTS. The WebView2 team also documents a registry-based fallback for persistent configuration.
If you are using Excel for Mac, this MCP server does not apply. Microsoft documents Excel for Mac debugging through Safari Web Inspector instead of a WebView2 CDP port.
Sources:
Set the environment variable before launching Excel so the Excel process inherits it:
$env:WEBVIEW2_ADDITIONAL_BROWSER_ARGUMENTS="--remote-debugging-port=9222"
Then:
Worked example:
$env:WEBVIEW2_ADDITIONAL_BROWSER_ARGUMENTS="--remote-debugging-port=9222"
start excel.exe
The Office add-ins team documents this environment-variable mechanism generically for WebView2-hosted add-ins, and the WebView2 team documents --remote-debugging-port=9222 as a valid browser argument.
If you need a persistent machine-local setting, the WebView2 team documents this registry policy path:
HKEY_CURRENT_USER\Software\Policies\Microsoft\Edge\WebView2\AdditionalBrowserArguments
Use:
EXCEL.EXE--remote-debugging-port=9222Use the environment variable first for local development. It is easier to turn on and off and avoids leaving a persistent machine-wide setting behind.
Run:
curl http://127.0.0.1:9222/json/version
A healthy response is JSON and includes fields such as:
{
"Browser": "...",
"Protocol-Version": "...",
"webSocketDebuggerUrl": "ws://127.0.0.1:9222/devtools/browser/..."
}
If that curl command fails, Excel is not exposing the WebView2 debug port yet, and excel-webview2-mcp will not be able to attach.
The server ships as the npm package @dsbissett/excel-webview2-mcp and is invoked via npx. The configuration below is the same across every host — only the location of the config file changes.
Canonical MCP entry:
{
"mcpServers": {
"excel-webview2": {
"command": "npx",
"args": ["@dsbissett/excel-webview2-mcp@latest"]
}
}
}
One-liner:
claude mcp add excel-webview2 -- npx @dsbissett/excel-webview2-mcp@latest
Use claude mcp add --scope user ... to make the server available in every project, or --scope project to check the config into .mcp.json for teammates.
Alternatively, install the bundled plugin:
.claude-plugin/marketplace.json with /plugin marketplace add dsbissett/excel-webview2-mcp./plugin install excel-webview2-mcp.claude mcp add command in the VS Code integrated terminal — the extension reads the same config.Edit ~/.cursor/mcp.json (global) or .cursor/mcp.json in the project root and add the canonical MCP entry above. Restart Cursor, then open Settings → MCP to confirm excel-webview2 shows as connected.
Codex reads MCP servers from ~/.codex/config.toml. Add:
[mcp_servers.excel-webview2]
command = "npx"
args = ["@dsbissett/excel-webview2-mcp@latest"]
Then launch codex and confirm the server appears in /mcp.
GitHub Copilot Chat in VS Code supports MCP servers through the agent-mode configuration.
Create or edit .vscode/mcp.json in your workspace (or the user-level mcp.json via MCP: Open User Configuration from the command palette).
Add the server entry:
{
"servers": {
"excel-webview2": {
"command": "npx",
"args": ["@dsbissett/excel-webview2-mcp@latest"]
}
}
}
Open Copilot Chat, switch to Agent mode, and click the Tools icon to confirm the excel-webview2 tools are available. Use MCP: List Servers from the command palette to inspect status or restart the server.
After adding the server, ask the model to call excel_detect_addin from your Office add-in project directory. A successful response confirms the MCP server is wired up; from there excel_launch_addin will take care of starting Excel.
By default, the server connects to the local WebView2 debugging endpoint at http://127.0.0.1:9222.
npm install
npm run build
npm start
Supported Node.js versions are ^20.19.0, ^22.12.0, or >=23.
Be the first to review this server!
by Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
by mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.