如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
用于连接MongoDB数据库和MongoDB Atlas集群的Model Context Protocol服务器。
什么是MCP服务器?
| 属性 | 详情 |
|---|---|
| Docker镜像 | https://hub.docker.com/repository/docker/mcp/mongodb |
| 作者 | https://github.com/mongodb-js |
| 代码仓库 | https://github.com/mongodb-js/mongodb-mcp-server |
| 属性 | 详情 |
|---|---|
| Dockerfile | https://github.com/mongodb-js/mongodb-mcp-server/blob/main/Dockerfile |
| Docker镜像构建方 | Docker Inc. |
| Docker Scout健康评分 | !Docker Scout健康评分 |
| 验证签名 | COSIGN_REPOSITORY=mcp/signatures cosign verify mcp/mongodb --key https://raw.githubusercontent.com/docker/keyring/refs/heads/main/public/mcp/latest.pub |
| 许可证 | Apache License 2.0 |
| 服务器提供的工具 | 简短描述 |
|---|---|
aggregate | aggregate |
collection-indexes | collection-indexes |
collection-schema | collection-schema |
collection-storage-size | collection-storage-size |
connect | connect |
count | count |
create-collection | create-collection |
create-index | create-index |
db-stats | db-stats |
delete-many | delete-many |
drop-collection | drop-collection |
drop-database | drop-database |
drop-index | drop-index |
explain | explain |
export | export |
find | find |
insert-many | insert-many |
list-collections | list-collections |
list-databases | list-databases |
mongodb-logs | mongodb-logs |
rename-collection | rename-collection |
update-many | update-many |
工具:aggregate
对MongoDB集合运行聚合操作
| 参数 | 类型 | 描述 |
|---|---|---|
collection | string | 集合名称 |
database | string | 数据库名称 |
pipeline | array | 要执行的聚合阶段数组 |
responseBytesLimit | number 可选 | 响应中返回的最大字节数。此值受服务器配置的maxBytesPerQuery限制,不能超过该限制。注意(LLM):如果需要完整聚合结果,请使用"export"工具而非增加此限制。 |
此工具为只读,不会修改其环境。
工具:collection-indexes
描述集合的索引
| 参数 | 类型 | 描述 |
|---|---|---|
collection | string | 集合名称 |
database | string | 数据库名称 |
此工具为只读,不会修改其环境。
工具:collection-schema
描述集合的模式
| 参数 | 类型 | 描述 |
|---|---|---|
collection | string | 集合名称 |
database | string | 数据库名称 |
responseBytesLimit | number 可选 | 响应中返回的最大字节数。此值受服务器配置的maxBytesPerQuery限制,不能超过该限制。 |
sampleSize | number 可选 | 用于模式推断的文档样本数量 |
此工具为只读,不会修改其环境。
工具:collection-storage-size
获取集合的存储大小
| 参数 | 类型 | 描述 |
|---|---|---|
collection | string | 集合名称 |
database | string | 数据库名称 |
此工具为只读,不会修改其环境。
工具:connect
连接到MongoDB实例。配置资源会记录服务器是否已连接到MongoDB集群。如果用户已配置连接字符串或之前调用过connect工具,则连接已建立,无需再次调用此工具,除非用户明确请求切换到新的MongoDB集群。
| 参数 | 类型 | 描述 |
|---|---|---|
connectionString | string | MongoDB连接字符串(mongodb://或mongodb+srv://格式) |
此工具为只读,不会修改其环境。
工具:count
使用db.collection.count()获取MongoDB集合中的文档数量,query为可选过滤参数
| 参数 | 类型 | 描述 |
|---|---|---|
collection | string | 集合名称 |
database | string | 数据库名称 |
query | object 可选 | 过滤/查询参数。允许用户过滤要计数的文档。符合db.collection.count()的filter参数语法。 |
此工具为只读,不会修改其环境。
工具:create-collection
在数据库中创建新集合。如果数据库不存在,将自动创建。
| 参数 | 类型 | 描述 |
|---|---|---|
collection | string | 集合名称 |
database | string | 数据库名称 |
工具:create-index
为集合创建索引
| 参数 | 类型 | 描述 |
|---|---|---|
collection | string | 集合名称 |
database | string | 数据库名称 |
definition | array | 索引定义。使用'classic'表示标准索引,'vectorSearch'表示向量搜索索引 |
name | string 可选 | 索引名称 |
工具:db-stats
返回反映单个数据库使用状态的统计信息
| 参数 | 类型 | 描述 |
|---|---|---|
database | string | 数据库名称 |
此工具为只读,不会修改其环境。
工具:delete-many
从MongoDB集合中删除所有匹配过滤条件的文档
| 参数 | 类型 | 描述 |
|---|---|---|
collection | string | 集合名称 |
database | string | 数据库名称 |
filter | object 可选 | 查询过滤器,指定删除条件。符合db.collection.deleteMany()的filter参数语法 |
此工具可能执行破坏性更新。
工具:drop-collection
从数据库中删除集合或视图。此方法还会删除与被删除集合关联的所有索引。
| 参数 | 类型 | 描述 |
|---|---|---|
collection | string | 集合名称 |
database | string | 数据库名称 |
此工具可能执行破坏性更新。
工具:drop-database
删除指定数据库,删除相关数据文件
| 参数 | 类型 | 描述 |
|---|---|---|
database | string | 数据库名称 |
此工具可能执行破坏性更新。
工具:drop-index
删除指定数据库和集合的索引。
| 参数 | 类型 | 描述 |
|---|---|---|
collection | string | 集合名称 |
database | string | 数据库名称 |
indexName | string | 要删除的索引名称 |
此工具可能执行破坏性更新。
工具:explain
返回描述查询优化器为评估方法选择的最佳执行计划的统计信息
| 参数 | 类型 | 描述 |
|---|---|---|
collection | string | 集合名称 |
database | string | 数据库名称 |
method | array | 要运行的方法及其参数 |
verbosity | string 可选 | explain计划的详细级别,默认为queryPlanner。如果用户想了解查询的执行时间速度,使用executionStats。支持MongoDB驱动中定义的所有详细级别。 |
此工具为只读,不会修改其环境。
工具:export
以指定的EJSON格式导出查询或聚合结果。
| 参数 | 类型 | 描述 |
|---|---|---|
collection | string | 集合名称 |
database | string | 数据库名称 |
exportTarget | array | 导出目标及其参数 |
exportTitle | string | 用于唯一标识导出的简短描述 |
jsonExportFormat | string 可选 | 以EJSON格式导出集合数据时使用的格式,默认为relaxed。 relaxed:强调可读性和互操作性而牺牲类型保留的字符串格式。即从relaxed格式转换为BSON可能会丢失类型信息。 canonical:强调类型保留而牺牲可读性和互操作性的字符串格式。即从canonical格式转换为BSON通常会保留类型信息,除非在某些特定情况下。 |
此工具为只读,不会修改其环境。
工具:find
对MongoDB集合运行find查询
| 参数 | 类型 | 描述 |
|---|---|---|
collection | string | 集合名称 |
database | string | 数据库名称 |
filter | object 可选 | 查询过滤器,符合db.collection.find()的query参数语法 |
limit | number 可选 | 返回的最大文档数 |
projection | object 可选 | 投影,符合db.collection.find()的projection参数语法 |
responseBytesLimit | number 可选 | 响应中返回的最大字节数。此值受服务器配置的maxBytesPerQuery限制,不能超过该限制。注意(LLM):如果需要完整查询结果,请使用"export"工具而非增加此限制。 |
sort | object 可选 | 描述排序顺序的文档,符合cursor.sort()的sort参数语法。对象的键是排序字段,值是排序方向(1表示升序,-1表示降序) |
此工具为只读,不会修改其环境。
工具:insert-many
将文档数组插入MongoDB集合
| 参数 | 类型 | 描述 |
|---|---|---|
collection | string | 集合名称 |
database | string | 数据库名称 |
documents | array | 要插入的文档数组,符合db.collection.insertMany()的document参数语法 |
工具:list-collections
列出给定数据库的所有集合
| 参数 | 类型 | 描述 |
|---|---|---|
database | string | 数据库名称 |
此工具为只读,不会修改其环境。
工具:list-databases
列出MongoDB连接的所有数据库
工具:mongodb-logs
返回最近记录的mongod事件
| 参数 | 类型 | 描述 |
|---|---|---|
limit | integer 可选 | 返回的最大日志条目数 |
type | string 可选 | 要返回的日志类型。Global返回所有最近的日志条目,startupWarnings仅返回进程启动时的警告和错误 |
此工具为只读,不会修改其环境。
工具:rename-collection
重命名MongoDB数据库中的集合
| 参数 | 类型 | 描述 |
|---|---|---|
collection | string | 集合名称 |
database | string | 数据库名称 |
newName | string | 集合的新名称 |
dropTarget | boolean 可选 | 如果为true,若目标集合存在则删除它 |
工具:update-many
更新集合中所有匹配指定过滤器的文档
| 参数 | 类型 | 描述 |
|---|---|---|
collection | string | 集合名称 |
database | string | 数据库名称 |
update | object | 使用更新操作符表达式描述要应用的修改的更新文档 |
filter | object 可选 | 更新的选择条件,符合db.collection.updateOne()的filter参数语法 |
upsert | boolean 可选 | 控制如果没有文档匹配过滤器是否插入新文档 |
json{ "mcpServers": { "mongodb": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "MDB_MCP_CONNECTION_STRING", "mcp/mongodb" ], "env": { "MDB_MCP_CONNECTION_STRING": "mongodb+srv://username:password@cluster.mongodb.net/myDatabase" } } } }
为什么使用Docker运行MCP服务器更安全?
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务