项目简介
mcp-excel-server 是一个遵循 Model Context Protocol (MCP) 标准实现的服务器应用。它部署在用户本地环境中,并与支持MCP协议的LLM客户端(如特定版本的Claude或VS Code扩展)通信。其核心作用是安全地向LLM提供访问和操作本地文件系统的能力,特别专注于读取Excel文件内容。
主要功能点
- 读取文件内容: LLM可以请求读取指定文本文件的完整内容。
- 列出目录内容: LLM可以请求查看指定目录下的文件和文件夹列表。
- 读取Excel内容: LLM可以请求读取指定Excel文件('.xlsx', '.xls'等)的第一个工作表的内容,并将其转换为结构化数据(通常为JSON格式)提供给LLM。
- 安全沙箱: 服务器启动时,必须指定允许访问的本地目录。所有文件操作都将被限制在这些指定的目录及其子目录内,确保数据安全。
安装步骤
通过npm安装:
npm install @qian33/mcp-excel-server
这将把mcp-excel-server安装到你的Node.js环境中,使其可以通过npx命令运行。
服务器配置
MCP服务器不是独立运行的应用,而是需要通过支持MCP协议的客户端来启动和管理。通常,你需要在MCP客户端的配置文件中添加mcp-excel-server的配置信息。
配置信息是JSON格式,至少需要包含以下关键部分:
- 'name': 服务器的唯一名称,例如 '"mcp-excel-server"'。
- 'command': 启动服务器的命令。对于通过npm/npx安装的情况,通常是 '"npx"'。
- 'args': 传递给服务器启动命令的参数列表。这是非常重要的部分,需要在这里列出服务器允许访问的本地目录路径。例如,你可以指定你的项目文件夹、文档文件夹等。这些路径是服务器的沙箱限制。
一个典型的配置片段示例如下(具体格式取决于你的MCP客户端):
{ // ... 客户端的其他配置 "mcpServers": { "mcp-excel-server": { "command": "npx", // 使用npx来运行已安装的包 "args": [ "-y", // npx 参数,自动确认安装(如果需要) "@qian33/mcp-excel-server", // 要运行的包名 "/path/to/your/allowed/directory1", // **重要:服务器允许访问的第一个目录路径** "/path/to/another/allowed/directory2" // **重要:服务器允许访问的第二个目录路径** // 可以添加更多目录路径作为参数 ] } } // ... 客户端的其他配置 }
请将'/path/to/your/allowed/directory1'和'/path/to/another/allowed/directory2'替换为你希望mcp-excel-server能够访问的实际本地目录路径。不在此处指定的目录将无法被服务器访问,从而保护你的文件系统。
基本使用方法
配置完成后,启动你的MCP客户端。客户端会自动启动mcp-excel-server进程,并通过标准输入输出(Stdio)通道进行通信。
一旦服务器启动并连接成功,LLM客户端就可以发现并使用mcp-excel-server提供的工具(如 'read_file_content', 'list_directory', 'get_excel_content')。
LLM可以根据用户的请求,通过MCP协议调用这些工具,例如:
- 用户说:“请帮我看看项目目录下有什么文件。” LLM可能会调用 'list_directory' 工具,参数为项目目录的路径。
- 用户说:“请总结一下这份报告的内容:/path/to/my/reports/meeting.txt”。 LLM可能会调用 'read_file_content' 工具读取报告内容。
- 用户说:“请分析一下这份销售数据:/path/to/data/sales.xlsx”。 LLM可能会调用 'get_excel_content' 工具读取Excel数据。
LLM将根据工具返回的结果来响应用户。
信息
分类
数据库与文件