Docs 菜单
Docs 主页
/
MongoDB MCP 服务器
/

MongoDB MCP 服务器配置方法

要配置MongoDB MCP 服务器以连接到MongoDB 集群并设立其他 MCP 服务器选项,请使用以下任一方法:

  • 带有 MCP 服务器选项的JSON配置文件

  • 命令行选项

  • 操作系统环境变量

MCP 服务器使用Atlas API凭证或连接字符串访问权限集群。

要配置 MCP 服务器以连接到集群并设立其他 MCP 服务器选项,请使用本节中描述的方法。

注意

MCP 服务器配置文件示例包括 --readOnly,以确保对数据进行只读访问权限。通常,启用只读模式以防止数据更改。

要启用写入操作,请省略 --readOnly 或将操作系统环境变量 MDB_MCP_READ_ONLY设立为 false。有关更多信息,请参阅 启用 MCP 服务器只读模式。

MCP 服务器配置文件示例将 type字段设立为 "stdio"

type 可以设立为以下之一:

  • "stdio",它使用标准输入和输出与 MCP 服务器进行通信。stdio 适用于大多数AI客户端。通常使用 stdio

  • "http",这将启用与 MCP 服务器的HTTP通信。然后,您可以使用HTTP从 Web客户端与 MCP 服务器交互。

    警告

    在未实现身份验证和安全性的情况下,建议将HTTP用于生产用途。

MCP 服务器配置文件示例还将 MCP 服务器名称设立为 "MongoDB"。启动 MCP 服务器后,您可以更改服务器名称以匹配 MCP 服务器的名称。服务器名称向AI客户端标识 MCP 服务器。

您可以使用在运行Atlas Tools 的MongoDB MCP 服务器先决条件中获得的Atlas API凭证连接到Atlas 集群。

注意

下一节将介绍,如果出于安全或其他原因不想使用Atlas API凭证,也可以使用MongoDB连接字符串连接到Atlas 集群。

对于登录凭证和连接信息等敏感配置设置,请使用环境变量而不是命令行参数。示例,使用 MDB_MCP_API_CLIENT_IDMDB_MCP_API_CLIENT_SECRET 作为API客户端设置,使用 MDB_MCP_CONNECTION_STRING 作为连接字符串。

环境变量比命令行参数更安全。可以跟踪、缓存命令行参数,将其包含在进程列表中,并记录在各个位置。

要使用Atlas API凭证进行连接,请在AI客户端的JSON配置文件的 env 部分中设立MDB_MCP_API_CLIENT_IDMDB_MCP_API_CLIENT_SECRET 环境变量:

...
"args": [
"-y",
"mongodb-mcp-server@latest",
"--readOnly"
],
"env": {
"MDB_MCP_API_CLIENT_ID": "<atlas-service-account-client-id>",
"MDB_MCP_API_CLIENT_SECRET": "<atlas-service-account-client-secret>"
}
...

<atlas-service-account-client-id><atlas-service-account-client-secret> 替换为您的Atlas信息。

有关各种AI客户端的完整JSON配置文件示例,请参阅MongoDB MCP Server 入门。

如果出于安全或其他原因不想使用Atlas API凭证,可以使用MongoDB连接字符串连接到集群。

以下示例显示了用于连接到Atlas 集群的连接字符串:

...
"args": [
"-y",
"mongodb-mcp-server@latest",
"--readOnly"
],
"env": {
"MDB_MCP_CONNECTION_STRING":
"mongodb+srv://<user-name>:<password>@<cluster-name>.mongodb.net/<database-name>"
}
...

<user-name><password><cluster-name><database-name> 替换为您的Atlas信息。

您还可以使用连接字符串连接到本地集群。 示例:

...
"args": [
"-y",
"mongodb-mcp-server@latest",
"--readOnly"
],
"env": {
"MDB_MCP_CONNECTION_STRING":
"mongodb://127.0.0.1:27019/?directConnection=true"
}
...

重要

--connectionString CLI参数已弃用。请改用 MDB_MCP_CONNECTION_STRING 环境变量。如果没有环境变量,请使用第一个位置参数。

您可以定义环境变量,为 MCP 服务器设立各种配置选项。

要为 MCP 服务器定义操作系统环境变量,请使用前缀 MDB_MCP_,后跟带下划线的大写变量名称。示例,使用 MDB_MCP_CONNECTION_STRING设立connectionString 选项。

对于登录凭证和连接信息等敏感配置设置,请使用环境变量而不是命令行参数。示例,使用 MDB_MCP_API_CLIENT_IDMDB_MCP_API_CLIENT_SECRET 作为API客户端设置,使用 MDB_MCP_CONNECTION_STRING 作为连接字符串。

环境变量比命令行参数更安全。可以跟踪、缓存命令行参数,将其包含在进程列表中,并记录在各个位置。

在以下部分的示例中,将 <atlas-service-account-client-id><atlas-service-account-client-secret><user-name><password><cluster-name><database-name> 替换为您的Atlas信息。

以下示例显示如何在基于 Unix 的操作系统中定义 MCP 服务器环境变量:

# Set Atlas API credentials for a service account
export MDB_MCP_API_CLIENT_ID="<atlas-service-account-client-id>"
export MDB_MCP_API_CLIENT_SECRET="<atlas-service-account-client-secret>"
# Set a MongoDB connection string
export MDB_MCP_CONNECTION_STRING="mongodb+srv://<user-name>:<password>@<cluster-name>.mongodb.net/<database-name>"
# Change the MCP Server log path from the default
export MDB_MCP_LOG_PATH="/mcp/logs"

以下示例在Windows命令行中设立变量:

:: Set Atlas API credentials for a service account
set MDB_MCP_API_CLIENT_ID=<atlas-service-account-client-id>
set MDB_MCP_API_CLIENT_SECRET=<atlas-service-account-client-secret>
:: Set a MongoDB connection string
set MDB_MCP_CONNECTION_STRING="mongodb+srv://<user-name>:<password>@<cluster-name>.mongodb.net/<database-name>"
:: Change the MCP Server log path from the default
set MDB_MCP_LOG_PATH="C:\mcp\logs"

以下示例在Windows PowerShell 会话中设立变量:

# Set Atlas API credentials for a service account
$env:MDB_MCP_API_CLIENT_ID="<atlas-service-account-client-id>"
$env:MDB_MCP_API_CLIENT_SECRET="<atlas-service-account-client-secret>"
# Set a MongoDB connection string
$env:MDB_MCP_CONNECTION_STRING="mongodb+srv://<user-name>:<password>@<cluster-name>.mongodb.net/<database-name>"
# Change the MCP Server log path from the default
$env:MDB_MCP_LOG_PATH="C:\mcp\logs"

后退

选项

在此页面上