使用说明
mongo mcp服务器
一个定制的MCP(模型上下文协议)服务器,将Claude Code连接到MongoDB数据库,为TechNext Asia AI实习生面试测试而构建。
它做什么
公开了3个工具,允许Claude通过自然语言与任何MongoDB实例交互:
| 工具 | 说明 |
|---|---|
ping_db |
测试连接并返回MongoDB服务器信息(版本、主机、正常运行时间) |
list_collections |
列出给定数据库中的所有集合 |
find_documents |
使用可选筛选器从集合中查询最多5个文档 |
技术栈
- python 和
uv用于项目管理 - FastMCP (
mcp.server.fastmcp)--最小样板MCP服务器框架 - PyMongo --官方MongoDB Python驱动程序
项目结构
mongo-mcp-server/
├── server.py # MCP server with all 3 tools
├── pyproject.toml # Project metadata and dependencies
├── uv.lock # Locked dependency versions
└── README.md
设置
1.先决条件
- Python 3.13+
uv安装- 正在运行的MongoDB实例(本地或Docker)
2.安装依赖项
uv sync
3.使用Docker运行本地MongoDB(可选)
docker run -d --name mongodb-mcp -p 27017:27017 \
-e MONGO_INITDB_ROOT_USERNAME=admin \
-e MONGO_INITDB_ROOT_PASSWORD=password \
mongo:7
Claude代码配置
添加以下内容 ~/.claude/settings.json:
{
"mcpServers": {
"mongo-local": {
"command": "uv",
"args": ["run", "server.py"],
"cwd": "/absolute/path/to/mongo-mcp-server",
"env": {
"MONGODB_URI": "mongodb://admin:password@localhost:27017/"
}
}
}
}
然后重新启动Claude Code。这 mongo-local 服务器将显示为已连接的MCP服务器。
环境变量
| 变量 | 默认值 | 描述 |
|---|---|---|
MONGODB_URI |
mongodb://localhost:27017/ |
MongoDB连接字符串 |
Claude代码中的示例用法
一旦连接,你可以自然地问克劳德:
ping the database
list collections in the technext_demo database
find documents in technext_demo.candidates where position is "AI Intern"
为什么选择MongoDB MCP?
- 现实世界的相关性 --数据库几乎是每个后端系统的核心
- 完整的读/写覆盖率 --ping、list和query涵盖了最常见的操作
- 无需额外的基础设施 --适用于任何现有的MongoDB(本地、Docker或Atlas)
- 自然语言查询 --Claude将纯英语翻译成MongoDB过滤器对象