使用说明
MongoDB MCP服务器
只读 模型上下文协议 (MCP)服务器,用于查询MongoDB数据库。设计用于兼容MCP的客户端,如Claude Code、Claude Desktop等。
快速开始
直接使用npx运行——无需安装:
MONGODB_URI="mongodb://localhost:27017" npx mongodb-mcp
或全局安装:
npm install -g mongodb-mcp
环境变量
| 变量 | 必填 | 描述 |
|---|---|---|
MONGODB_URI |
是 | MongoDB连接字符串(例如。 mongodb://localhost:27017 或 mongodb+srv://...) |
配置
克劳德代码
添加到您的 .mcp.json:
{
"mcpServers": {
"mongodb": {
"command": "npx",
"args": ["mongodb-mcp"],
"env": {
"MONGODB_URI": "mongodb+srv://user:pass@cluster.mongodb.net/dbname"
}
}
}
}
克劳德桌面版
添加到您的Claude桌面配置(~/Library/Application Support/Claude/claude_desktop_config.json 在macOS上):
{
"mcpServers": {
"mongodb": {
"command": "npx",
"args": ["mongodb-mcp"],
"env": {
"MONGODB_URI": "mongodb+srv://user:pass@cluster.mongodb.net/dbname"
}
}
}
}
工具
list_databases
列出连接的MongoDB实例上的所有数据库。
list_collections
列出给定数据库中的所有集合。
| 参数 | 类型 | 说明 |
|---|---|---|
database |
string | 数据库名称 |
list_indexes
列出集合上的所有索引。
| 参数 | 类型 | 说明 |
|---|---|---|
database |
string | 数据库名称 |
collection |
string | 集合名称 |
run_aggregation
在集合上运行聚合管道。
| 参数 | 类型 | 说明 |
|---|---|---|
database |
string | 数据库名称 |
collection |
string | 集合名称 |
pipeline |
object[] | 聚合管道阶段 |
run_aggregation_to_file
运行聚合管道并将结果写入磁盘上的JSON文件,而不是通过MCP返回。仅返回元数据(文档计数、文件路径、文件大小),这避免了将大型结果集加载到代理的上下文窗口中。使用CLI工具,如 jq, head,或 Read 工具来选择性地检查输出文件。
| 参数 | 类型 | 说明 |
|---|---|---|
database |
string | 数据库名称 |
collection |
string | 集合名称 |
pipeline |
object[] | 聚合管道阶段 |
output_path |
string | 写入JSON结果的绝对文件路径 |
安全
- 只读模式 --编写阶段(
$out,$merge)聚合中的管道因错误而被拒绝。 - 查询超时 --聚合查询的服务器端超时时间为50秒(
maxTimeMS)以防止失控的查询。 - 读取首选项 --连接使用
secondaryPreferred将偏好解读为深度防御。
发展
npm run dev # watch mode
npm run build # compile TypeScript
npm start # run the compiled server
许可证
麻省理工学院
