Skip to main content
Glama

BachStudio Excel MCP Server

Official
README.md3.79 kB
<p align="center"> <img src="https://raw.githubusercontent.com/haris-musa/excel-mcp-server/main/assets/logo.png" alt="Excel MCP Server Logo" width="300"/> </p> [![PyPI version](https://img.shields.io/pypi/v/bachstudio-excel-mcp-server.svg)](https://pypi.org/project/bachstudio-excel-mcp-server/) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) 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. > **基于原项目**: 本项目 fork 自 [haris-musa/excel-mcp-server](https://github.com/haris-musa/excel-mcp-server),由 BachStudio 维护和发布。 ## 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 ## Usage The server supports three transport methods: ### 1. Stdio Transport (for local use) ```bash uvx bachstudio-excel-mcp-server stdio ``` ```json { "mcpServers": { "excel": { "command": "uvx", "args": ["bachstudio-excel-mcp-server", "stdio"] } } } ``` ### 2. SSE Transport (Server-Sent Events - Deprecated) ```bash uvx bachstudio-excel-mcp-server sse ``` **SSE transport connection**: ```json { "mcpServers": { "excel": { "url": "http://localhost:8000/sse", } } } ``` ### 3. Streamable HTTP Transport (Recommended for remote connections) ```bash uvx bachstudio-excel-mcp-server streamable-http ``` **Streamable HTTP transport connection**: ```json { "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): ```powershell $env:EXCEL_FILES_PATH="E:\MyExcelFiles" $env:FASTMCP_PORT="8007" uvx bachstudio-excel-mcp-server streamable-http ``` - Example (Linux/macOS): ```bash EXCEL_FILES_PATH=/path/to/excel_files FASTMCP_PORT=8007 uvx bachstudio-excel-mcp-server 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](TOOLS.md) for complete documentation of all available tools. ## License MIT License - see [LICENSE](LICENSE) for details. ## Credits This project is based on [excel-mcp-server](https://github.com/haris-musa/excel-mcp-server) by haris-musa.

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/BACH-AI-Tools/bachstudio-excel-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server