io.github.geniuskey/mcp-server-xlwings

Registre officiel Finance et paiements

Excel automation via xlwings COM. DRM-protected files, live sessions, VBA macros. Windows only.

Que pouvez-vous faire avec io.github.geniuskey/mcp-server-xlwings ?

  • Read the user's current selection -- see exactly what the user is looking at
  • Get the active workbook -- no need to specify a file path
  • Run VBA macros -- execute existing macros and get their return values
  • Live formula results -- set a formula and get the calculated value immediately
  • Force recalculation -- trigger Excel to recalculate all formulas

Installation

Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).

PYPI package mcp-server-xlwings
Claude Code
claude mcp add mcp-server-xlwings -- uvx mcp-server-xlwings==0.4.1
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "mcp-server-xlwings": {
            "command": "uvx",
            "args": [
                "mcp-server-xlwings==0.4.1"
            ]
        }
    }
}

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

Sommaire
  1. mcp-server-xlwings
  2. Why xlwings?
  3. Installation
  4. Configuration
  5. Available Tools (11)
  6. Examples
  7. Requirements
  8. License

mcp-server-xlwings

MCP server for Excel automation via xlwings COM. Works with DRM-protected files.

Why xlwings?

Libraries like openpyxl or pandas read .xlsx files directly from disk. This fails when:

  • DRM / file-level encryption is applied (common in enterprise environments)
  • You need to interact with a live Excel session (formulas, macros, add-ins)
  • Files are locked by another process

mcp-server-xlwings uses COM automation to talk to the running Excel process, so it can read and write any file that Excel itself can open -- including DRM-protected documents.

xlwings-exclusive capabilities

These features are impossible with file-based libraries like openpyxl:

  • Read the user's current selection -- see exactly what the user is looking at
  • Get the active workbook -- no need to specify a file path
  • Run VBA macros -- execute existing macros and get their return values
  • Live formula results -- set a formula and get the calculated value immediately
  • Force recalculation -- trigger Excel to recalculate all formulas

Installation

uvx mcp-server-xlwings
With pip
pip install mcp-server-xlwings

Configuration

Claude Desktop

Add to %APPDATA%\Claude\claude_desktop_config.json:

{
  "mcpServers": {
    "xlwings": {
      "command": "uvx",
      "args": ["mcp-server-xlwings"]
    }
  }
}
Claude Code
claude mcp add xlwings -- uvx mcp-server-xlwings
Roo Code (VS Code)

Add to Roo Code MCP settings or create <project-root>/.roo/mcp.json:

{
  "mcpServers": {
    "xlwings": {
      "command": "uvx",
      "args": ["mcp-server-xlwings"]
    }
  }
}
Cursor

Add to %USERPROFILE%\.cursor\mcp.json:

{
  "mcpServers": {
    "xlwings": {
      "command": "uvx",
      "args": ["mcp-server-xlwings"]
    }
  }
}
Windsurf

Add to %USERPROFILE%\.codeium\windsurf\mcp_config.json:

{
  "mcpServers": {
    "xlwings": {
      "command": "uvx",
      "args": ["mcp-server-xlwings"]
    }
  }
}
Continue (VS Code)

Add to ~/.continue/config.yaml:

mcpServers:
  - name: xlwings
    command: uvx
    args:
      - mcp-server-xlwings

Available Tools (11)

All tools default to the active workbook when workbook is omitted.

ToolDescription
get_active_workbookGet active workbook info, sheets, and current selection with data
manage_workbooksList, open, save, close, or recalculate workbooks
read_dataRead a range with merge_info, header_row, sheet="*" batch read, and detail mode
write_dataWrite a 2D array (data) or a single-cell formula (formula)
manage_sheetsList, add, delete, rename, copy, activate sheets. Insert/delete rows and columns
find_replaceSearch for text, optionally replace it
format_rangeApply formatting (bold, italic, color, borders, alignment, number format, etc.)
run_macroExecute a VBA macro and get its return value
get_formulasGet all formulas in a range with optional calculated values
get_cell_stylesGet formatting/style info (bold, colors, borders, etc.) for cells in a range
get_objectsList charts, images, and shapes on a sheet

Examples

See what the user is working on

"What's in the spreadsheet I have open?"

The agent calls get_active_workbook() to get the workbook name, sheets, and selection data, then read_data() to fetch the full sheet.

Summarize selected data

"Summarize the data I've selected"

The agent calls get_active_workbook() -- the response includes the selection data directly.

Run a macro

"Run the UpdateReport macro"

The agent calls run_macro(macro_name="UpdateReport") and returns the result.

Build a summary row

"Add a SUM formula in C10 that totals C2:C9"

The agent calls write_data(start_cell="C10", formula="=SUM(C2:C9)") and gets back the calculated value.

Format a header row

"Make row 1 bold and centered with a yellow background"

The agent calls format_range(cell_range="A1:D1", bold=true, alignment="center", bg_color="#FFFF00").

Read all sheets at once

"Give me a summary of every sheet"

The agent calls read_data(sheet="*") -- returns all sheet summaries in a single call.

Read merged cells properly

"Read B6:C20 and fill in merged cell values"

The agent calls read_data(cell_range="B6:C20", merge_info=true). Merged cells return the parent value instead of null.

Find all formulas

"Show me all formulas in this sheet"

The agent calls get_formulas(cell_range="A1:Z100", values_too=true) and gets every formula with its calculated value.

Insert rows

"Insert 3 blank rows at row 5"

The agent calls manage_sheets(action="insert_rows", position=5, count=3).

Requirements

  • Windows (Excel COM automation is Windows-only)
  • Microsoft Excel installed
  • Python 3.10+

License

MIT

Questions fréquentes

Qu'est-ce que io.github.geniuskey/mcp-server-xlwings ?

Excel automation via xlwings COM. DRM-protected files, live sessions, VBA macros. Windows only.

Comment installer io.github.geniuskey/mcp-server-xlwings ?

Il s'exécute sur votre machine. Dans Claude Code : claude mcp add mcp-server-xlwings -- uvx mcp-server-xlwings==0.4.1. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.

Faut-il une clé API pour io.github.geniuskey/mcp-server-xlwings ?

Son entrée au registre n'indique aucune clé ni secret obligatoire. Certaines fonctions peuvent tout de même demander un compte auprès du service auquel il se connecte.

io.github.geniuskey/mcp-server-xlwings est-il open source ?

Oui. Son code est sur GitHub sous licence MIT.

Qui maintient io.github.geniuskey/mcp-server-xlwings ?

Il est publié par geniuskey. AI.tn le référence sans le maintenir ni le recommander.

Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.