使用说明
NextApp支付MCP服务器演示
一个演示项目,展示如何实现一个模型上下文协议(MCP)服务器,该服务器通过MCP Inspector和Claude AI集成公开MongoDB支付数据。这个项目是一个如何使用MCP协议通过标准化接口公开数据库资源的示例。
📝 有关从头开始构建此MCP服务器的详细分步指南,请查看我的 综合博客文章.
项目概述
此演示项目演示了:
- 使用官方SDK实现MCP服务器
- 连接到特定的MongoDB Atlas数据库
- 通过MCP资源和工具暴露支付数据
- 与MCP Inspector和Claude AI集成
- LLM如何与结构化数据库数据交互
特性
MCP资源
- 统一资源标识符:
payments://done - 目的:检索付款记录,其中
done: true - 响应格式:JSON
- mime类型:
application/json
MCP工具
-
已完成付款
- 描述:在done为true的情况下检索所有付款
- 输入:无需参数
- 输出:已完成付款的JSON数组
-
获取所有付款
- 描述:从数据库中检索所有付款
- 输入:无需参数
- 输出:所有付款的JSON数组
MCP检查器视图
上图显示了MCP Inspector界面,显示了通过MCP服务器从MongoDB Atlas检索到的付款记录。MCP Inspector是一个开发人员工具,可帮助验证和调试MCP服务器实现。
Claude AI集成
上图展示了Claude AI的成功:
- 连接到MCP服务器
- 访问支付资源和工具
- 分析付款数据
- 展示结构化结果,包括总金额、日期范围和关键观察结果
在Claude Desktop中设置MCP资源
如果您已经创建了自己的MCP服务器,并希望将其与Claude Desktop一起使用:
-
找到Claude桌面配置
- 窗户:
C:\Users\<username>\AppData\Roaming\claude\claude_desktop_config.json - macOS:
~/Library/Application Support/claude/claude_desktop_config.json - Linux:
~/.config/claude/claude_desktop_config.json
- 窗户:
-
配置您的MCP服务器
{ "mcpServers": { "YourServerName": { "transport": "stdio", "command": "node", "args": ["path/to/your/server.js"], "env": { "YOUR_ENV_VARIABLE": "your_value" }, "cwd": "path/to/your/project" } } }替换:
YourServerName:服务器的唯一名称path/to/your/server.js:服务器文件的完整路径YOUR_ENV_VARIABLE:服务器需要的任何环境变量
-
验证连接
- 打开克劳德桌面
- 转到“设置”→ 开发者
- 您的服务器应显示为“正在运行”状态
-
使用您的资源或工具
# Using Resource Use the MCP resource payments://done and [your query] # Using Tools Use the MCP tool get_completed_payments to show me all successful payments Use the MCP tool get_all_payments to show me all payments in the system
实现细节
使用的技术
- MCP-SDK:用于协议处理和资源/工具暴露
- MongoDB驱动程序:用于数据库访问和查询执行
- 克劳德桌面:用于LLM集成和自然语言查询
错误处理
该实现包括以下错误处理:
- MongoDB连接问题
- 查询执行错误
- 连接关闭错误
- JSON格式的日志记录,兼容Claude Desktop
重要提示
这是一个示范项目,展示了:
- 如何实现MCP服务器
- 如何将MongoDB数据作为MCP资源和工具公开
- 访问数据的多种方式:
- 通过MCP Inspector(面向开发人员)
- 通过Claude AI(面向终端用户)
- 通过直接工具调用
- LLM如何与结构化数据交互
MongoDB连接和资源配置特定于此演示。你需要根据你的用例修改它们。