使用说明
MCP服务器POC
一个简单的概念证明(POC),用于模型上下文协议(MCP)服务器,为计算和文件操作提供基本工具。
特性
此MCP服务器提供以下工具:
- 计算器:安全地执行基本算术计算
- 文件操作:读取、写入和获取有关文件的信息
- 目录操作:列出目录内容并获取文件/目录信息
先决条件
- Node.js 18.0.0或更高版本
- npm或yarn包管理器
安装
-
克隆或下载此存储库
-
导航到项目目录:
cd mcp-server-poc -
安装依赖项:
npm install
用法
运行服务器
启动MCP服务器:
npm start
或者用于自动重启的开发:
npm run dev
服务器将在stdio上运行,并等待MCP客户端连接。
可用工具
1.计算器
- 名字:
calculator - 描述:执行基本算术计算
- 参数:
expression(string):要计算的数学表达式(例如,“2+3*4”)
2.读取文件
- 名字:
read_file - 描述:读取文件内容
- 参数:
path(string):要读取的文件的路径
3.写入文件
- 名字:
write_file - 描述:将内容写入文件
- 参数:
path(string):要写入的文件的路径content(string):要写入文件的内容
4.列表目录
- 名字:
list_directory - 描述:列出给定路径中的文件和目录
- 参数:
path(string):要列出的目录的路径
5.获取文件信息
- 名字:
get_file_info - 描述:获取有关文件或目录的信息
- 参数:
path(string):文件或目录的路径
示例用法
与Claude Desktop一起使用
要将此MCP服务器与Claude Desktop一起使用,请将以下内容添加到您的Claude Desktop配置中:
{
"mcpServers": {
"simple-mcp-server": {
"command": "node",
"args": ["/path/to/your/mcp-server-poc/server.js"],
"env": {}
}
}
}
工具调用示例
- 计算:
calculator表达式为“10+5*2” - 读取文件:
read_file路径为“/path/to/file.txt” - 写入文件:
write_file路径为“/path/to/newfile.txt”,内容为“Hello World” - 列表目录:
list_directory路径为“/path/to/directory” - 获取文件信息:
get_file_info路径为“/path/to/file.txt”
安全说明
- 计算器工具使用安全评估,只允许数字和基本的数学运算符
- 文件操作的执行权限与正在运行的进程相同
- 在生产中使用文件操作时,始终验证文件路径
发展
项目结构
mcp-server-poc/
├── package.json # Project configuration and dependencies
├── server.js # Main MCP server implementation
└── README.md # This file
添加新工具
要向服务器添加新工具,请执行以下操作:
- 将工具定义添加到
ListToolsRequestSchema处理器 - 在中添加该工具的案例
CallToolRequestSchema处理器 - 在新的处理程序方法中实现工具逻辑
例子:
// In setupToolHandlers()
{
name: 'my_new_tool',
description: 'Description of what the tool does',
inputSchema: {
type: 'object',
properties: {
param1: { type: 'string', description: 'Parameter description' }
},
required: ['param1']
}
}
// In the CallToolRequestSchema handler
case 'my_new_tool':
return await this.handleMyNewTool(args);
// Add the handler method
async handleMyNewTool(args) {
// Tool implementation
}
许可证
MIT许可证-您可以自由地将此代码用于您自己的MCP服务器实现。
故障排除
常见问题
- “找不到模块”错误:确保你跑过了
npm install - 权限错误:确保服务器具有适当的文件系统权限
- 连接问题:验证MCP客户端是否已正确配置为连接到此服务器
调试模式
要使用额外的日志记录运行,您可以修改服务器以包含更详细的输出或使用Node.js调试工具。