使用说明
MongoDB MCP服务器
用于与MongoDB数据库和MongoDB Atlas交互的MCP服务器,提供查询、模式检查和数据管理工具。
设置
使用工具CLI
从安装CLIhttps://github.com/zerocore-ai/tool-cli
# Install from tool.store
tool install library/mongodb
# View available tools
tool info library/mongodb
# List databases
tool call library/mongodb -m list-databases
# Run a find query
tool call library/mongodb -m find -p database=test -p collection=users
先决条件
- Node.js 20.19.0+、22.12.0+或23+
- MongoDB连接字符串
配置
| 字段 | 必填 | 描述 |
|---|---|---|
connection_string |
Yes | MongoDB连接字符串(例如。, mongodb+srv://...) |
工具
aggregate
对MongoDB集合运行聚合管道。
输入:
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
database |
string | 是 | 数据库名称 |
collection |
string | 是 | 集合名称 |
pipeline |
array | Yes | 要执行的聚合阶段数组 |
responseBytesLimit |
number | No | 返回的最大字节数(默认值:1048576) |
find
对MongoDB集合运行查找查询。
输入:
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
database |
string | 是 | 数据库名称 |
collection |
string | 是 | 集合名称 |
filter |
object | 否 | 查询筛选器(MongoDB语法) |
projection |
object | 否 | 要包含/排除的字段 |
limit |
number | No | 要返回的最大文档数(默认值:10) |
sort |
object | 否 | 排序顺序(1升序,-1降序) |
responseBytesLimit |
number | No | 返回的最大字节数(默认值:1048576) |
count
获取集合中的文档数量。
输入:
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
database |
string | 是 | 数据库名称 |
collection |
string | 是 | 集合名称 |
query |
object | 否 | 筛选以计数匹配的文档 |
insert-many
将一组文档插入到集合中。
输入:
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
database |
string | 是 | 数据库名称 |
collection |
string | 是 | 集合名称 |
documents |
array | 是 | 要插入的文档数组 |
update-many
更新与筛选器匹配的所有文档。
输入:
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
database |
string | 是 | 数据库名称 |
collection |
string | 是 | 集合名称 |
filter |
object | 是 | 更新的选择标准 |
update |
object | 是 | 更新要应用的操作 |
upsert |
boolean | 否 | 如果没有匹配的文档,则插入 |
delete-many
删除与筛选器匹配的所有文档。
输入:
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
database |
string | 是 | 数据库名称 |
collection |
string | 是 | 集合名称 |
filter |
object | 否 | 删除条件 |
collection-schema
描述集合的推断模式。
输入:
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
database |
string | 是 | 数据库名称 |
collection |
string | 是 | 集合名称 |
sampleSize |
number | 否 | 要采样的文档(默认值:50) |
responseBytesLimit |
number | No | 返回的最大字节数(默认值:1048576) |
collection-indexes
列出集合的索引。
输入:
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
database |
string | 是 | 数据库名称 |
collection |
string | 是 | 集合名称 |
create-index
在集合上创建索引。
输入:
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
database |
string | 是 | 数据库名称 |
collection |
string | 是 | 集合名称 |
name |
string | 否 | 索引名称 |
definition |
array | Yes | 带类型和键的索引定义 |
drop-index
从集合中删除索引。
输入:
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
database |
string | 是 | 数据库名称 |
collection |
string | 是 | 集合名称 |
indexName |
string | 是 | 要删除的索引的名称 |
type |
string | 否 | 索引类型(默认:“classic”) |
list-databases
列出连接的所有数据库。
输入: 无需。
输出:
| 字段 | 类型 | 描述 |
|---|---|---|
databases |
array | 包含名称和大小的数据库列表 |
totalCount |
number | 数据库总数 |
list-collections
列出数据库中的所有集合。
输入:
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
database |
string | 是 | 数据库名称 |
db-stats
获取数据库的统计信息。
输入:
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
database |
string | 是 | 数据库名称 |
collection-storage-size
获取集合的存储大小。
输入:
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
database |
string | 是 | 数据库名称 |
collection |
string | 是 | 集合名称 |
create-collection
创建新收藏。
输入:
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
database |
string | 是 | 数据库名称 |
collection |
string | 是 | 集合名称 |
drop-collection
删除集合及其索引。
输入:
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
database |
string | 是 | 数据库名称 |
collection |
string | 是 | 集合名称 |
rename-collection
重命名集合。
输入:
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
database |
string | 是 | 数据库名称 |
collection |
string | 是 | 当前集合名称 |
newName |
string | 是 | 新集合名称 |
dropTarget |
boolean | 否 | 删除目标集合(如果存在)(默认值:false) |
drop-database
删除数据库及其所有数据。
输入:
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
database |
string | 是 | 数据库名称 |
connect
连接到MongoDB实例。
输入:
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
connectionString |
string | 是 | MongoDB连接字符串(MongoDB://或MongoDB+srv://) |
explain
获取查询计划的执行统计信息。
输入:
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
database |
string | 是 | 数据库名称 |
collection |
string | 是 | 集合名称 |
method |
array | Yes | 解释方法(聚合、查找或计数) |
verbosity |
string | 否 | 详细级别(默认值:“queryPlanner”) |
export
将查询或聚合结果导出到EJSON。
输入:
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
database |
string | 是 | 数据库名称 |
collection |
string | 是 | 集合名称 |
exportTitle |
string | 是 | 标识导出的简短描述 |
exportTarget |
array | Yes | 导出目标(查找或聚合参数) |
jsonExportFormat |
string | 否 | 格式:“relaxed”或“canonical”(默认:“relaked”) |
mongodb-logs
获取最近的mongod日志事件。
输入:
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
type |
string | 否 | 日志类型:“global”或“startupWarnings”(默认值:“全局”) |
limit |
integer | 否 | 最大日志条目数(默认值:50,最大值:1024) |
许可证
阿帕奇-2.0
参考文献
- https://github.com/mongodb-js/mongodb-mcp-server
