项目简介
Excel 数据管理 MCP 服务器是一个实现了 Model Context Protocol (MCP) 的后端应用,专注于为大型语言模型(LLM)客户端提供 Excel 文件的处理能力。它允许 LLM 通过标准化的 MCP 接口,安全、高效地访问和操作 Excel 数据,进行数据分析、提取信息和生成可视化内容。
主要功能点
- 全面的 Excel 文件操作: 支持读取多种 Excel 文件格式 (XLSX, XLS, CSV, TSV, JSON),写入和更新 Excel 文件,并能获取文件信息和工作表名称。
- 强大的数据分析能力: 提供描述性统计分析、数据质量评估、创建透视表、数据过滤和查询等功能,帮助 LLM 理解和分析 Excel 数据。
- 数据可视化: 能够根据 Excel 数据生成各种图表和绘图,创建数据预览,并将可视化结果导出为图片,方便 LLM 进行数据呈现和报告生成。
- 资源管理: 通过 'excel://{file_path}' 格式的资源 URL 管理 Excel 文件,方便 LLM 客户端引用和访问文件内容和信息。
- 工具注册与执行: 注册了一系列工具,如 'read_excel', 'analyze_excel', 'export_chart' 等,允许 LLM 客户端调用这些工具来执行具体的 Excel 数据处理任务。
- Prompt 模板: 内置了 'analyze_excel_data', 'create_chart', 'data_cleaning' 等 Prompt 模板,支持用户自定义 LLM 交互模式,简化复杂操作。
安装步骤
-
创建 Python 虚拟环境 (推荐): 为了隔离项目依赖,建议创建一个新的 Python 虚拟环境。
# 使用 uv (推荐,如果已安装 uv) uv init excel-mcp-server cd excel-mcp-server uv venv source .venv/bin/activate # 在 Windows 上: .venv\.venv\Scripts\activate # 或者使用 pip python -m venv .venv source .venv/bin/activate # 在 Windows 上: .venv\.venv\Scripts\activate -
安装依赖: 使用 pip 或 uv 安装项目所需的 Python 库。
# 使用 uv uv pip install -r requirements.txt # 或者使用 pip pip install -r requirements.txt
服务器配置
要将此 MCP 服务器与 MCP 客户端(例如 Claude Desktop)集成,您需要在客户端的配置文件中添加服务器配置信息。以下是 'claude_desktop_config.json' 的配置示例,你需要根据你的实际Python环境路径调整 'PYTHONPATH'。
{ "mcpServers": { "serverName": "excel-mcp-server", // MCP 服务器的名称,可以自定义 "command": "uvx", // 启动命令,如果使用 pip 安装,可能是 "python" 或 "python3" "args": [ "mcp_excel_server/server.py" // 服务器启动脚本的路径 ], "env": { "PYTHONPATH": "/path/to/your/python" // Python 解释器路径,指向你的虚拟环境或 Python 安装路径 } } }
配置参数说明:
- 'serverName': MCP 服务器的自定义名称,用于在客户端中标识和选择该服务器。
- 'command': 启动 MCP 服务器的命令。通常是 Python 解释器执行器的名称,例如 'uvx' (如果使用 'uv' 启动) 或 'python' / 'python3' (如果直接使用 Python 启动)。
- 'args': 传递给启动命令的参数,这里是服务器主程序 'mcp_excel_server/server.py' 的路径。
- 'env': 环境变量配置,'PYTHONPATH' 用于指定 Python 模块搜索路径,确保服务器程序能找到所需的库。你需要将其替换为你的 Python 虚拟环境或全局 Python 安装的路径。
重要提示: 请根据你的实际 Python 环境和虚拟环境路径,正确配置 'command'、'args' 和 'PYTHONPATH'。
基本使用方法
-
启动 MCP 服务器: 在配置好客户端后,启动 Excel 数据管理 MCP 服务器。服务器将会在后台运行,等待客户端的连接和请求。
-
在 MCP 客户端中使用: 在支持 MCP 协议的客户端(例如 Claude Desktop)中,配置并连接到该 MCP 服务器。
-
通过自然语言指令或工具调用与服务器交互: 你可以通过客户端的自然语言界面,或者直接调用服务器提供的工具和资源,来操作 Excel 文件。例如:
- "分析我的 'sales_data.xlsx' 文件" (可能触发 'analyze_excel_data' Prompt 模板或直接调用 'analyze_excel' 工具)
- "为 'product_sales.csv' 创建一个条形图" (可能触发 'create_chart' Prompt 模板或直接调用 'export_chart' 工具)
- "过滤 'employees.xlsx' 中年龄超过 30 岁的员工" (可能调用 'filter_excel' 工具)
- "生成部门销售额的透视表" (可能调用 'pivot_table' 工具)
客户端会根据你的指令,自动调用 MCP 服务器提供的工具和资源来完成相应的 Excel 数据处理任务,并将结果返回给你。
资源 URL 示例:
- 获取 Excel 文件内容: 'excel://path/to/your/file.xlsx'
- 获取 Excel 文件信息: 'excel://path/to/your/file.xlsx/info'
- 获取 Excel 文件预览图: 'excel://path/to/your/file.xlsx/preview'
工具调用示例 (在 MCP 客户端中,客户端负责构造符合 MCP 协议的 JSON-RPC 请求):
- 调用 'read_excel' 工具读取 Excel 文件内容
- 调用 'analyze_excel' 工具分析 Excel 数据
- 调用 'export_chart' 工具生成图表
请参考客户端的具体文档,了解如何在客户端中配置和使用 MCP 服务器,以及如何通过自然语言指令或工具调用来与 Excel 数据管理 MCP 服务器进行交互。
信息
分类
桌面与硬件