spirita1204
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"mongodb": {
"args": [
"dist/index.js",
"mongodb://root:example@localhost:27017/test?authSource=admin"
],
"command": "node"
}
}
}
服务介绍
🗄️ 适用于LLM的MongoDB MCP服务器
这是一个模型上下文协议(MCP)服务器,它使大语言模型能够直接与MongoDB数据库交互。通过自然语言无缝查询集合、检查模式和管理数据。
✨ 特性
- 🔍 集合模式检查
- 📊 文档查询和过滤
- 📈 索引管理
- 📝 文档操作(插入、更新、删除)
演示视频
https://github.com/user-attachments/assets/2389bf23-a10d-49f9-bca9-2b39a1ebe654
🚀 快速开始
要开始使用,请找到您的MongoDB连接URL并将此配置添加到您的Claude Desktop配置文件中:
MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
json
{
"mcpServers": {
"mongodb": {
"command": "npx",
"args": [
"mongo-mcp",
"mongodb://:@:/?authSource=admin"
]
}
}
}
通过Smithery安装
要通过Smithery自动为Claude Desktop安装MongoDB MCP服务器:
bash
npx -y @smithery/cli install mongo-mcp --client claude
前提条件
- Node.js 18+
- npx
- Docker 和 Docker Compose(仅用于本地沙箱测试)
- MCP客户端(例如Claude桌面应用程序)
测试沙箱设置
如果您没有可以连接的MongoDB服务器,并希望创建一个示例沙箱,请按照以下步骤操作:
- 使用Docker Compose启动MongoDB:
bash
docker-compose up -d
- 使用测试数据填充数据库:
bash
npm run seed
配置Claude Desktop
将此配置添加到您的Claude Desktop配置文件中:
MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
本地开发模式:
json
{
"mcpServers": {
"mongodb": {
"command": "node",
"args": [
"dist/index.js",
"mongodb://root:example@localhost:27017/test?authSource=admin"
]
}
}
}
测试沙箱数据结构
种子脚本会创建三个包含示例数据的集合:
用户
- 个人信息(姓名、电子邮件、年龄)
- 嵌套地址及坐标
- 兴趣数组
- 会员日期
产品
- 产品详情(名称、SKU、类别)
- 嵌套规格
- 价格和库存信息
- 标签和评分
订单
- 包含商品的订单详情
- 用户引用
- 运输和支付信息
- 状态跟踪
🎯 示例提示
尝试使用这些提示来探索功能:
基本操作
plaintext
"数据库中有哪些集合?"
"显示用户集合的模式"
"查找旧金山的所有用户"
高级查询
plaintext
"查找所有有库存且价格低于1000美元的电子产品"
"显示来自用户john@example.com的所有订单"
"列出评分高于4.5的产品"
索引管理
plaintext
"用户集合上存在哪些索引?"
"在产品集合的'category'字段上创建索引"
"列出所有集合中的所有索引"
文档操作
plaintext
"在产品集合中插入名为'Gaming Laptop'的新产品"
"将ID为X的订单状态更新为'shipped'"
"查找并删除所有缺货的产品"
📝 可用工具
服务器提供以下工具用于数据库交互:
查询工具
find: 使用过滤和投影查询文档listCollections: 列出可用集合insertOne: 插入单个文档updateOne: 更新单个文档-deleteOne: 删除单个文档
索引工具
createIndex: 创建新索引dropIndex: 删除索引indexes: 列出集合中的索引
📜 许可证
本项目采用 MIT 许可证 - 详情请参阅 LICENSE 文件。