Docs 菜单
Docs 主页
/ /

MongoDB MCP 服务器配置选项

MCP Server 具有多个可设立的选项,用于连接到MongoDB 集群并控制 MCP Server 操作。您可以通过命令行或使用操作系统环境变量在JSON配置文件中设立选项。

使用以下配置选项配置 MCP 服务器。

重要

如果您是MongoDB Enterprise或MongoDB Atlas用户并且需要特定的身份验证机制,请参阅 MongoDB MCP 服务器安全性 部分,学习;了解身份验证方法的配置选项。

CLI选项名称
操作系统环境变量名称
类型
默认
说明

allowRequestOverrides

MDB_MCP_ALLOW_REQUEST_OVERRIDES

布尔

false

指示用户是否可以使用请求标头和查询参数覆盖每个请求的 MCP 服务器配置的标志。有关每个配置选项的具体覆盖行为,请参阅下面的覆盖行为表

apiClientId

MDB_MCP_API_CLIENT_ID

字符串

未设立

用于身份验证的Atlas API客户端ID 。

apiClientSecret

MDB_MCP_API_CLIENT_SECRET

字符串

未设立

用于身份验证的Atlas API客户端密钥。

config

MDB_MCP_CONFIG

字符串

未设立

JSON配置文件的完整路径。建议使用 MDB_MCP_CONFIG 环境变量,而不是使用 --config命令行选项。

connectionString

MDB_MCP_CONNECTION_STRING

字符串

未设立

直接数据库连接的连接字符串。

在运行时设置连接字符串,以允许客户端直接连接到集群。

重要

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

注意

通常,避免在运行时提供连接字符串,因为这会向大语言模型公开连接凭证。

如果客户端以前从未连接过,则使用该连接字符串;如果客户端以前已连接过,则客户端会将连接切换到新集群。

客户端调用连接或切换连接工具后,客户端会重复使用同一连接进行后续操作。因此,如果需要切换到其他连接,则只需调用一次连接或切换连接工具。

dryRun

MDB_MCP_DRY_RUN

布尔

false

使用试运行选项检查 MCP 服务器配置。启用试运行选项时,MCP 服务器会返回 MCP 服务器配置设置和已启用的MongoDB MCP 服务器工具列表。

要启用干运行选项,请在配置文件或命令行中设立--dryRun,或将 MDB_MCP_DRY_RUN 操作系统环境变量设立为 true

有关更多信息,请参阅启用 MCP 服务器试运行模式。

loggers

MDB_MCP_LOGGERS

字符串

disk mcp

MCP 服务器发送日志的路径。

loggers 设置为以下一个或多个选项:

  • disk,它将日志写入位于 logPath 选项指定路径中的磁盘文件。

  • mcp,如果客户端支持日志记录和传输协议,它将日志发送到AI客户端。

  • stderr,它将日志发送到标准错误输出。此设置对于调试或在容器中运行MCP 非常有用。

示例,要在AI客户端JSON配置文件或操作系统命令行loggers设立为 mcpstderr,请使用 --loggers mcp stderr

要将 MDB_MCP_LOGGERS 操作系统环境变量设立为 diskstderr,请使用 export MDB_MCP_LOGGERS="disk,stderr"

有关日志记录选项的更多信息,请参阅MongoDB MCP Server 故障排除。

logPath

MDB_MCP_LOG_PATH

字符串

取决于操作系统

存储 MCP 服务器日志的目录。

注意

锁定目录,以便运行MCP服务器的用户拥有该目录的读/写入权限。这可以防止任何其他进程访问服务器目录或文件。

有关日志路径和操作系统细节的更多信息,请参阅MongoDB MCP Server 故障排除。

disabledTools

MDB_MCP_DISABLED_TOOLS

阵列

未设立

要禁用的 MCP 工具名称、操作类型或工具类别的数组。

有关更多信息,请参阅禁用 MCP 服务器工具。

readOnly

MDB_MCP_READ_ONLY

布尔

false

用于确定是否允许写入操作的标志。要禁用集群写入操作,请在配置文件或命令行中设立--readOnly,或设立MDB_MCP_READ_ONLY操作系统环境变量为true

默认允许集群写入操作。通常,始终启用只读模式。

有关更多信息,请参阅启用 MCP 服务器只读模式。

indexCheck

MDB_MCP_INDEX_CHECK

布尔

false

指示查询是否需要索引的标志。如果为 true,则强制查询操作必须使用索引,并拒绝执行集合扫描的查询。

有关更多信息,请参阅启用索引检查。

telemetry

MDB_MCP_TELEMETRY

字符串

enabled

指示 MCP 服务器是否收集使用情况数据的标志。如果为 disabled,则停止集合MCP 服务器使用情况数据。

有关更多信息,请参阅禁用 MCP 服务器遥测。

transport

MDB_MCP_TRANSPORT

字符串

stdio

用于与 MCP 服务器通信的传输协议。

transport 设置为以下选项之一:

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

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

    警告

    在未实施适当的身份验证和安全措施的情况下,建议将HTTP传输用于生产用途。

httpPort

MDB_MCP_HTTP_PORT

整型

3000

与 MCP 服务器进行HTTP通信的IP端口号。

httpHost

MDB_MCP_HTTP_HOST

字符串

127.0.0.1

与 MCP 服务器进行HTTP通信的IP解决。

使用 Streamable HTTP时,MCP 服务器默认绑定到 localhost (127.0.0.1)。这可确保 MCP 服务器仅接受源自同一计算机的连接。

警告

绑定到 0.0.0.0 会将 MCP 服务器公开给整个本地网络,从而允许同一网络上的其他设备访问权限MCP 服务器。这是一个安全风险,可能允许未经授权访问权限您的数据库上下文。如果必须在 localhost 之外公开 MCP 服务器,实现强安全身份验证。

要学习;了解更多信息,请参阅远程连接。

httpBodyLimit

MDB_MCP_HTTP_BODY_LIMIT

整型

102400

HTTP请求正文的最大大小(以字节为单位)。仅适用于HTTP传输。

healthCheckHost

MDB_MCP_HEALTH_CHECK_HOST

字符串

未设立

单独的 healthCheck HTTP服务器的主机解决。这是一个HTTP端点, Kubernetes和Docker可以使用它来检查 MCP进程的运行状况。仅适用于HTTP传输。

如果提供,则需要设置 healthCheckPort

healthCheckPort

MDB_MCP_HEALTH_CHECK_PORT

整型

未设立

单独的 healthCheck HTTP服务器的端口号。这是一个HTTP端点, Kubernetes和Docker可以使用它来检查 MCP进程的运行状况。仅适用于HTTP传输。

如果提供,则需要设置 healthCheckHost

idleTimeoutMs

MDB_MCP_IDLE_TIMEOUT_MS

整型

600000

客户端断开连接的空闲超时时间。仅适用于HTTP传输。

notificationTimeoutMs

MDB_MCP_NOTIFICATION_TIMEOUT_MS

整型

540000

客户端了解断开连接的通知超时时间。仅适用于HTTP传输。

authenticationMechanism

MDB_MCP_AUTHENTICATION_MECHANISM

字符串

SCRAM-SHA-256

使用MongoDB MCP 服务器连接到MongoDB部署时使用的身份验证机制。

SCRAM是MongoDB的默认身份验证机制。要使用其他身份验证方法进行连接,请参阅以下页面:

exportsPath

MDB_MCP_EXPORTS_PATH

字符串

取决于操作系统

存储导出的数据文件的目录。

注意

锁定目录,以便运行MCP服务器的用户拥有该目录的读/写入权限。这可以防止任何其他进程访问导出的目录或文件。

有关导出路径和操作系统细节的更多信息,请参阅从MongoDB MCP 服务器导出数据。

exportTimeoutMs

MDB_MCP_EXPORT_TIMEOUT_MS

整型

300000

以毫秒为单位的时间,在此时间过后,MCP 服务器清理进程可以删除导出的数据文件。

exportCleanupIntervalMs

MDB_MCP_EXPORT_CLEANUP_INTERVAL_MS

整型

120000

自动执行 MCP 服务器清理进程(删除过期导出数据文件)之间的时间段(以毫秒为单位)。清理进程会自动运行。

previewFeatures

MDB_MCP_PREVIEW_FEATURES

字符串

未设立

已启用的预览功能的逗号分隔值。有效值:search

重要

MCP 中的向量搜索支持是作为 预览功能 提供的。要启用此功能,请在MCP 配置中将 previewFeatures 标志或 MDB_MCP_PREVIEW_FEATURES 环境变量设立为 search

当您使用 MCP 服务器处理MongoDB 向量搜索。时,以下选项可配置 MCP 服务器的行为。

CLI选项名称
操作系统环境变量名称
类型
默认
说明

voyageApiKey

MDB_MCP_VOYAGE_API_KEY

字符串

未设立

用于自动生成嵌入的 Voyage AI API密钥。

配置此选项时,MCP 服务器会自动为以下内容生成嵌入:

  • 使用 insert-many 工具插入的文档

  • $vectorSearch 聚合查询中的 queryVector 参数

MCP 服务器还会验证具有向量搜索索引的字段是否包含有效的嵌入向量,以防止破坏向量搜索索引。

MongoDB MCP服务器支持以下 Voyage AI模型:

  • voyage-3-large

  • voyage-3.5

  • voyage-3.5-lite

  • voyage-code-3

要学习;了解有关 Voyage AI 的更多信息,请参阅 Voyage AI文档。

有关其他向量搜索配置选项,请参阅向量搜索选项。

embeddingsValidation

MDB_MCP_EMBEDDINGS_VALIDATION

布尔

true

指示嵌入向量是否经过验证的标志。设立为 true 时,启用嵌入维度验证。

默认下,MCP 服务器会验证具有向量搜索索引的字段是否包含具有正确维度的有效嵌入向量,以防止破坏向量搜索索引。禁用此选项以允许将原始值插入嵌入字段而不进行验证。

警告

禁用嵌入验证可能会导致嵌入无效的文档无法与向量搜索索引一起使用。

vectorSearchDimensions

MDB_MCP_VECTOR_SEARCH_DIMENSIONS

整型

1024

向量搜索嵌入的默认维数。

在创建向量搜索索引和验证嵌入时使用该值。

vectorSearchSimilarityFunction

MDB_MCP_VECTOR_SEARCH_SIMILARITY_FUNCTION

字符串

euclidean

向量搜索的默认相似度函数。设置为以下值之一:

  • euclidean:欧几里得距离

  • cosine:余弦相似度

  • dotProduct:点积相似度

除非另有说明,否则 MCP服务器在创建向量搜索索引时会使用此值作为默认值。要学习;了解更多信息,请参阅如何为向量搜索的字段编制索引。

下表描述了每个配置选项的覆盖行为。仅当 allowRequestOverrides 配置选项设立为 true 时,这些覆盖行为应用。如果用户尝试覆盖禁止覆盖的配置选项,MCP服务器将拒绝连接。

Config Key
覆盖行为
附加条件

apiBaseUrl

禁止

apiClientId

禁止

apiClientSecret

禁止

allowRequestOverrides

禁止

connectionString

禁止

config

禁止

loggers

禁止

logPath

禁止

disabledTools

合并(merge)

禁用现有配置中工具之外的工具。

confirmationRequiredTools

合并(merge)

除现有配置中的工具外,还需要确认工具。

readOnly

可选的

只能将现有的 false 配置覆盖为 true

indexCheck

可选的

只能将现有的 false 配置覆盖为 true

telemetry

禁止

transport

禁止

httpPort

禁止

httpHost

禁止

httpHeaders

禁止

healthCheckHost

禁止

healthCheckPort

禁止

idleTimeoutMs

可选的

只能使用比现有配置更短的超时时间进行覆盖。

notificationTimeoutMs

可选的

只能使用比现有配置更短的超时时间进行覆盖。

maxBytesPerQuery

禁止

maxDocumentsPerQuery

禁止

exportsPath

禁止

exportTimeoutMs

可选的

只能使用比现有配置更短的超时时间进行覆盖。

exportCleanupIntervalMs

禁止

atlasTemporaryDatabaseUserLifetimeMs

可选的

只能使用比现有配置更短的生命周期进行覆盖。

voyageApiKey

禁止

embeddingsValidation

可选的

只能将现有的 false 配置覆盖为 true

vectorSearchDimensions

覆盖

vectorSearchSimilarityFunction

覆盖

previewFeatures

可选的

只能禁用现有配置中的功能,而不能添加其他功能。

MCP 服务器接受无需指定CLI标志即可提供的位置参数。第一个位置参数被解释为MongoDB 部署的连接字符串。

作为安全最佳实践,请使用 MDB_MCP_CONNECTION_STRING 环境变量设立连接字符串。 如果没有环境变量,请使用第一个位置参数。示例:

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

后退

配置

在此页面上