Skip to main content

Excel MCP Server for manipulating Excel files

Project description

Excel MCP Server Logo

PyPI version Total Downloads License: MIT smithery badge Install MCP Server

A Model Context Protocol (MCP) server that lets you manipulate Excel files without needing Microsoft Excel installed. Create, read, and modify Excel workbooks with your AI agent.

Features

  • 📊 Excel Operations: Create, read, update workbooks and worksheets
  • 📈 Data Manipulation: Formulas, formatting, charts, pivot tables, and Excel tables
  • 🔍 Data Validation: Built-in validation for ranges, formulas, and data integrity
  • 🎨 Formatting: Font styling, colors, borders, alignment, and conditional formatting
  • 📋 Table Operations: Create and manage Excel tables with custom styling
  • 📊 Chart Creation: Generate various chart types (line, bar, pie, scatter, etc.)
  • 🔄 Pivot Tables: Create dynamic pivot tables for data analysis
  • 🔧 Sheet Management: Copy, rename, delete worksheets with ease
  • 🔌 Triple transport support: stdio, SSE (deprecated), and streamable HTTP
  • 🌐 Remote & Local: Works both locally and as a remote service

Installation

# 使用 pip 安装
pip install excel-mcp-server-bachstudio

# 或使用 uvx(推荐)
uvx excel-mcp-server-bachstudio stdio

如果遇到模块导入错误

如果使用 uvx 时遇到 ModuleNotFoundError,请清除 uvx 缓存:

# 清除 uv 缓存
uv cache clean

# 或指定清除特定包
uv cache clean excel-mcp-server-bachstudio

Usage

The server supports three transport methods:

1. Stdio Transport (for local use)

uvx excel-mcp-server-bachstudio stdio
{
   "mcpServers": {
      "excel": {
         "command": "uvx",
         "args": ["excel-mcp-server-bachstudio", "stdio"]
      }
   }
}

2. SSE Transport (Server-Sent Events - Deprecated)

uvx excel-mcp-server-bachstudio sse

SSE transport connection:

{
   "mcpServers": {
      "excel": {
         "url": "http://localhost:8000/sse",
      }
   }
}

3. Streamable HTTP Transport (Recommended for remote connections)

uvx excel-mcp-server-bachstudio streamable-http

Streamable HTTP transport connection:

{
   "mcpServers": {
      "excel": {
         "url": "http://localhost:8000/mcp",
      }
   }
}

Environment Variables & File Path Handling

SSE and Streamable HTTP Transports

When running the server with the SSE or Streamable HTTP protocols, you must set the EXCEL_FILES_PATH environment variable on the server side. This variable tells the server where to read and write Excel files.

  • If not set, it defaults to ./excel_files.

You can also set the FASTMCP_PORT environment variable to control the port the server listens on (default is 8017 if not set).

  • Example (Windows PowerShell):
    $env:EXCEL_FILES_PATH="E:\MyExcelFiles"
    $env:FASTMCP_PORT="8007"
    uvx excel-mcp-server-bachstudio streamable-http
    
  • Example (Linux/macOS):
    EXCEL_FILES_PATH=/path/to/excel_files FASTMCP_PORT=8007 uvx excel-mcp-server-bachstudio streamable-http
    

Stdio Transport

When using the stdio protocol, the file path is provided with each tool call, so you do not need to set EXCEL_FILES_PATH on the server. The server will use the path sent by the client for each operation.

Available Tools

The server provides a comprehensive set of Excel manipulation tools. See TOOLS.md for complete documentation of all available tools.

Credits

本项目基于原项目修改:haris-musa/excel-mcp-server

License

MIT License - see LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

excel_mcp_server_bachstudio-0.1.12.tar.gz (88.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

excel_mcp_server_bachstudio-0.1.12-py3-none-any.whl (31.3 kB view details)

Uploaded Python 3

File details

Details for the file excel_mcp_server_bachstudio-0.1.12.tar.gz.

File metadata

File hashes

Hashes for excel_mcp_server_bachstudio-0.1.12.tar.gz
Algorithm Hash digest
SHA256 ccc11b3459251c00e8429b2e32f6ac038c1226a4c94f5bb98434846ed542cb07
MD5 8834575d8a59cb45ed01d743021873b1
BLAKE2b-256 69af23dfb63594d7179836712a71f5b6b3bfb2276a60e99fe28ca9410955ed4c

See more details on using hashes here.

File details

Details for the file excel_mcp_server_bachstudio-0.1.12-py3-none-any.whl.

File metadata

File hashes

Hashes for excel_mcp_server_bachstudio-0.1.12-py3-none-any.whl
Algorithm Hash digest
SHA256 19f0f6857797437c9f6cb78e8fa71ad0cade2cddbe0d2f9b64952dd0e631824f
MD5 08313e43cc8b58d345896b83e6159a34
BLAKE2b-256 068e88f19c29431d7eff57e63d44ff599509b714c1b5f46bcafe83e15493f501

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page