Token导航 LogoToken导航TokenDH.com
Yairsabag Mongodb MCP Server New logo
数据服务stdio官方级别未说明来源级核验

Yairsabag Mongodb MCP Server New

MCP Server

mongodb-mcp-server

MongoDB MCP Server是一个用于与MongoDB数据库和MongoDB Atlas交互的模型上下文协议服务器,支持多种配置方式和工具操作。

工具数

32

提示词数

0

GitHub Stars

0

资源数

0
数据库操作TypeScriptCursorCursorWindsurf

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

yairsabag

提供方

yairsabag

最后核验

2026/5/17 20:23

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx -y mongodb-mcp-server --apiClientId="your-atlas-service-accounts-client-id" --apiClientSecret="your-atlas-service-ac...

详细介绍

MongoDB MCP服务器

用于与MongoDB数据库和MongoDB Atlas交互的模型上下文协议服务器。

📚 目录

- 先决条件 - 设置 - 快速开始

- MongoDB Atlas工具 - MongoDB数据库工具

- 配置选项 - Atlas API访问 - 配置方法 - 环境变量 - 命令行参数 - MCP客户端配置

先决条件

  • Node.js(v20.10.0或更高版本)
node -v
  • MongoDB连接字符串或Atlas API证书, _除非配置,否则服务器将不会启动_.

- _服务帐户图集API证书_ 需要使用Atlas工具。您可以在MongoDB Atlas中创建一个服务帐户,并使用其凭据进行身份验证。看 Atlas API访问 了解更多详情。 - 如果你有一个MongoDB连接字符串,你可以直接使用它来连接到你的MongoDB实例。

设置

快速开始

大多数MCP客户端都需要创建或修改配置文件以添加MCP服务器。

注意:配置文件语法可能因客户端而异。请参阅以下链接,了解最新的预期语法:

  • 帆板运动:https://docs.windsurf.com/windsurf/mcp
  • VSCode: https://code.visualstudio.com/docs/copilot/chat/mcp-servers
  • 克劳德桌面: https://modelcontextprotocol.io/quickstart/user
  • 光标: https://docs.cursor.com/context/model-context-protocol

选项1:连接字符串参数

您可以通过args传递连接字符串,请确保使用有效的用户名和密码。

{
  "mcpServers": {
    "MongoDB": {
      "command": "npx",
      "args": [
        "-y",
        "mongodb-mcp-server",
        "--connectionString",
        "mongodb://localhost:27017/myDatabase"
      ]
    }
  }
}

注意:连接字符串可以配置为连接到任何MongoDB集群,无论是本地实例还是Atlas集群。

选项2:Atlas API凭据参数

使用您的Atlas API服务帐户凭据。必须遵循中的所有步骤 Atlas API访问 部分。

{
  "mcpServers": {
    "MongoDB": {
      "command": "npx",
      "args": [
        "-y",
        "mongodb-mcp-server",
        "--apiClientId",
        "your-atlas-service-accounts-client-id",
        "--apiClientSecret",
        "your-atlas-service-accounts-client-secret"
      ]
    }
  }
}

选项3:使用命令参数的独立服务

使用npx命令启动服务器:

 npx -y mongodb-mcp-server --apiClientId="your-atlas-service-accounts-client-id" --apiClientSecret="your-atlas-service-accounts-client-secret"

选项4:使用环境变量的独立服务

 npx -y mongodb-mcp-server

您可以在配置文件中使用环境变量,也可以设置它们并通过npx运行服务器。

  • 通过MCP文件中的环境变量连接字符串 例子
  • Atlas API凭证通过MCP文件中的环境变量 例子

选项5:使用Docker

您可以在Docker容器中运行MongoDB MCP Server,它提供隔离,不需要本地Node.js安装。

使用环境变量运行

您可以提供MongoDB连接字符串或Atlas API凭据:

选项A:无配置

docker run --rm -i \
  mongodb/mongodb-mcp-server:latest

选项B:使用MongoDB连接字符串

docker run --rm -i \
  -e MDB_MCP_CONNECTION_STRING="mongodb+srv://username:password@cluster.mongodb.net/myDatabase" \
  mongodb/mongodb-mcp-server:latest

选项C:使用Atlas API证书

docker run --rm -i \
  -e MDB_MCP_API_CLIENT_ID="your-atlas-service-accounts-client-id" \
  -e MDB_MCP_API_CLIENT_SECRET="your-atlas-service-accounts-client-secret" \
  mongodb/mongodb-mcp-server:latest

MCP配置文件中的Docker

没有选项:

{
  "mcpServers": {
    "MongoDB": {
      "command": "docker",
      "args": ["run", "--rm", "-i", "mongodb/mongodb-mcp-server:latest"]
    }
  }
}

使用连接字符串:

{
  "mcpServers": {
    "MongoDB": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "-e",
        "MDB_MCP_CONNECTION_STRING=mongodb+srv://username:password@cluster.mongodb.net/myDatabase",
        "mongodb/mongodb-mcp-server:latest"
      ]
    }
  }
}

使用Atlas API证书:

{
  "mcpServers": {
    "MongoDB": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "-e",
        "MDB_MCP_API_CLIENT_ID=your-atlas-service-accounts-client-id",
        "-e",
        "MDB_MCP_API_CLIENT_SECRET=your-atlas-service-accounts-client-secret",
        "mongodb/mongodb-mcp-server:latest"
      ]
    }
  }
}

🛠️ 支持的工具

刀具清单

MongoDB Atlas工具

  • atlas-list-orgs -列出MongoDB Atlas组织
  • atlas-list-projects -列出MongoDB Atlas项目
  • atlas-create-project -创建新的MongoDB Atlas项目
  • atlas-list-clusters -列出MongoDB Atlas集群
  • atlas-inspect-cluster -检查特定的MongoDB Atlas集群
  • atlas-create-free-cluster -创建免费的MongoDB Atlas集群
  • atlas-connect-cluster -连接到MongoDB Atlas集群
  • atlas-inspect-access-list -检查访问MongoDB Atlas集群的IP/CIDR范围
  • atlas-create-access-list -为MongoDB Atlas集群配置IP/CIDR访问列表
  • atlas-list-db-users -列出MongoDB Atlas数据库用户
  • atlas-create-db-user -创建MongoDB Atlas数据库用户
  • atlas-list-alerts -列出项目的MongoDB Atlas警报

注意:只有在上设置凭据时,图集工具才可用 配置 部分。

MongoDB数据库工具

  • connect -连接到MongoDB实例
  • find -对MongoDB集合运行查找查询
  • aggregate -对MongoDB集合运行聚合
  • count -获取MongoDB集合中的文档数量
  • insert-one -将单个文档插入MongoDB集合
  • insert-many -将多个文档插入到MongoDB集合中
  • create-index -为MongoDB集合创建索引
  • update-one -更新MongoDB集合中的单个文档
  • update-many -更新MongoDB集合中的多个文档
  • rename-collection -重命名MongoDB集合
  • delete-one -从MongoDB集合中删除单个文档
  • delete-many -从MongoDB集合中删除多个文档
  • drop-collection -从MongoDB数据库中删除集合
  • drop-database -删除MongoDB数据库
  • list-databases -列出MongoDB连接的所有数据库
  • list-collections -列出给定数据库的所有集合
  • collection-indexes -描述集合的索引
  • collection-schema -描述集合的模式
  • collection-storage-size -获取集合的大小(MB)
  • db-stats -返回MongoDB数据库的统计信息

配置

MongoDB MCP服务器可以使用多种方法进行配置,优先级如下(从高到低):

  1. 命令行参数
  2. 环境变量

配置选项

选项描述
apiClientId用于身份验证的Atlas API客户端ID
apiClientSecretAtlas API客户端认证机密
connectionString用于直接数据库连接的MongoDB连接字符串(可选用户可以选择在每次工具调用时通知它)
logPath用于存储日志的文件夹
disabledTools一系列将被禁用的工具名称、操作类型和/或工具类别
readOnly当设置为true时,只允许读取和元数据操作类型,禁用创建/更新/删除操作
telemetry当设置为禁用时,禁用遥测收集

日志路径

默认日志位置如下:

  • 窗户: %LOCALAPPDATA%\mongodb\mongodb-mcp\.app-logs
  • macOS/Linux: ~/.mongodb/mongodb-mcp/.app-logs

禁用工具

您可以使用禁用特定工具或工具类别 disabledTools 选项。此选项接受字符串数组, 其中每个字符串可以是工具名称、操作类型或类别。

数组的构造方式取决于您使用的配置方法的类型:

  • 对于 环境变量 配置时,使用逗号分隔的字符串: export MDB_MCP_DISABLED_TOOLS="create,update,delete,atlas,collectionSchema".
  • 对于 命令行参数 配置时,使用空格分隔的字符串: --disabledTools create update delete atlas collectionSchema.

工具类别:

  • atlas -MongoDB Atlas工具,如列表集群、创建集群等。
  • mongodb -MongoDB数据库工具,如查找、聚合等。

操作类型:

  • create -创建资源的工具,如创建集群、插入文档等。
  • update -更新资源的工具,如更新文档、重命名集合等。
  • delete -删除资源的工具,如删除文档、删除收藏等。
  • read -读取资源的工具,如查找、聚合、列出集群等。
  • metadata -读取元数据的工具,如列表数据库、列表集合、集合模式等。

只读模式

readOnly 配置选项允许您限制MCP服务器仅使用具有“读取”和“元数据”操作类型的工具。启用后,所有具有“创建”、“更新”或“删除”操作类型的工具都不会在服务器上注册。

这对于您希望提供对MongoDB数据的访问以进行分析而不允许对数据或基础设施进行任何修改的场景非常有用。

您可以使用以下方式启用只读模式:

  • 环境变量: export MDB_MCP_READ_ONLY=true
  • 命令行参数: --readOnly

当只读模式处于活动状态时,您将在服务器日志中看到一条消息,指示哪些工具因此限制而无法注册。

遥测

telemetry 配置选项允许您禁用遥测收集。启用后,MCP服务器将收集使用数据并将其发送到MongoDB。

您可以使用以下方式禁用遥测:

  • 环境变量: export MDB_MCP_TELEMETRY=disabled
  • 命令行参数: --telemetry disabled
  • DO_NOT_TRACK环境变量: export DO_NOT_TRACK=1

Atlas API访问

要使用Atlas API工具,您需要在MongoDB Atlas中创建一个服务帐户:

  1. 创建服务帐户:

- 登录MongoDB Atlas cloud.mongodb.com - 导航到Access Manager>组织访问 - 单击添加新>应用程序>服务帐户 - 输入您的服务帐户的名称、描述和到期时间(例如,“MCP,MCP服务器访问,7天”) - 选择适当的权限(要获得完全访问权限,请使用“组织所有者”) - 点击“创建”

要了解有关服务帐户的更多信息,请查看 MongoDB Atlas文档.

  1. 保存客户端凭据:

- 创建后,您将看到客户端ID和客户端密码 - 重要提示: 立即复制并保存客户端密码,因为它不会再次显示

  1. 添加访问列表条目:

- 将您的IP地址添加到API访问列表

  1. 配置MCP服务器:

- 使用以下配置方法之一设置您的 apiClientIdapiClientSecret

配置方法

环境变量

使用前缀设置环境变量 MDB_MCP_ 后面是带下划线的大写选项名称:

# Set Atlas API credentials (via Service Accounts)
export MDB_MCP_API_CLIENT_ID="your-atlas-service-accounts-client-id"
export MDB_MCP_API_CLIENT_SECRET="your-atlas-service-accounts-client-secret"

# Set a custom MongoDB connection string
export MDB_MCP_CONNECTION_STRING="mongodb+srv://username:password@cluster.mongodb.net/myDatabase"

export MDB_MCP_LOG_PATH="/path/to/logs"

MCP配置文件示例

带有环境变量的连接字符串

{
  "mcpServers": {
    "MongoDB": {
      "command": "npx",
      "args": ["-y", "mongodb-mcp-server"],
      "env": {
        "MDB_MCP_CONNECTION_STRING": "mongodb+srv://username:password@cluster.mongodb.net/myDatabase"
      }
    }
  }
}

带有环境变量的Atlas API证书

{
  "mcpServers": {
    "MongoDB": {
      "command": "npx",
      "args": ["-y", "mongodb-mcp-server"],
      "env": {
        "MDB_MCP_API_CLIENT_ID": "your-atlas-service-accounts-client-id",
        "MDB_MCP_API_CLIENT_SECRET": "your-atlas-service-accounts-client-secret"
      }
    }
  }
}

命令行参数

启动服务器时将配置选项作为命令行参数传递:

npx -y mongodb-mcp-server --apiClientId="your-atlas-service-accounts-client-id" --apiClientSecret="your-atlas-service-accounts-client-secret" --connectionString="mongodb+srv://username:password@cluster.mongodb.net/myDatabase" --logPath=/path/to/logs

MCP配置文件示例

带命令行参数的连接字符串

{
  "mcpServers": {
    "MongoDB": {
      "command": "npx",
      "args": [
        "-y",
        "mongodb-mcp-server",
        "--connectionString",
        "mongodb+srv://username:password@cluster.mongodb.net/myDatabase"
      ]
    }
  }
}

带有命令行参数的Atlas API凭据

{
  "mcpServers": {
    "MongoDB": {
      "command": "npx",
      "args": [
        "-y",
        "mongodb-mcp-server",
        "--apiClientId",
        "your-atlas-service-accounts-client-id",
        "--apiClientSecret",
        "your-atlas-service-accounts-client-secret"
      ]
    }
  }
}

🤝 贡献

有兴趣贡献吗?太棒了请查看我们的 贡献指南 有关代码贡献、标准、添加新工具和故障排除信息的指南。

目录标签

目录标签

数据库操作TypeScriptCursor数据库协议本地部署MongoDB工具Atlas管理

支持客户端

CursorWindsurf

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

来源包(packageName,安装包名)

mongodb-mcp-server

工具数量(toolCount,工具数)

32

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP