Join us Sept 17 at .local NYC! Use code WEB50 to save 50% on tickets. Learn more >
MongoDB Event
Menu Docs
Página inicial do Docs
/
Servidor MCP do MongoDB

Configuração do servidor MongoDB MCP

Você deve configurar o servidor MCP para conectar um cliente de IA ao cluster. Em seguida, você pode usar um cliente de IA para executar operações de cluster.

Esta página descreve a compatibilidade do cliente de IA, como configurar o Servidor MCP, solução de problemas e desativar as ferramentas e telemetria do Servidor MCP.

O servidor MCP é compatível com muitos clientes de IA que oferecem suporte ao MCP. Por exemplo, você pode usar esses clientes de IA:

A estrutura do arquivo de configuração JSON pode variar para cada cliente de IA. Leia a documentação do cliente de IA para obter detalhes.

Certifique-se de já ter instalado o software conforme especificado nos pré-requisitos do software do servidor MCP.

O Servidor MCP pode executar ferramentas do Atlas que executam várias operações do Atlas . Para executar as ferramentas do Atlas , seu cluster do Atlas exige uma conta de serviço com as permissões apropriadas.

Para configurar uma conta de serviço, consulte Pré-requisitos do servidor MongoDB MCP para executar o Atlas FERRAMENTAS.

Para obter uma lista dos FERRAMENTAS, consulte FERRAMENTAS do servidor do MongoDB MCP.

O Servidor MCP tem várias opções que você pode definir para se conectar a um cluster e controlar as operações do Servidor MCP. Você pode definir as opções em um arquivo de configuração JSON, em uma linha de comando ou em variáveis de ambiente do sistema operacional.

A tabela a seguir mostra as principais opções de configuração do Servidor MCP.

Importante

Se você for usuário do MongoDB Enterprise ou MongoDB Atlas e precisar de um mecanismo de autenticação específico, consulte a seção Segurança do Servidor MongoDB MCP para saber mais sobre as opções de configuração do seu método de autenticação.

Nome da opção CLI
Nome da variável de ambiente do sistema operacional
Tipo
Default
Descrição

apiClientId

MDB_MCP_API_CLIENT_ID

string

Não definido

ID do cliente Atlas API para autenticação.

apiClientSecret

MDB_MCP_API_CLIENT_SECRET

string

Não definido

Segredo do cliente Atlas API para autenticação.

connectionString

MDB_MCP_CONNECTION_STRING

string

Não definido

Connection string para uma conexão direta do banco de dados .

Define a string de conexão no tempo de execução para permitir que o cliente se conecte diretamente a um cluster.

Observação

Normalmente, evite fornecer a string de conexão no tempo de execução porque você expõe as credenciais de conexão ao grandes modelos de linguagem.

A string de conexão é usada se o cliente nunca tiver se conectado antes ou se o cliente alternar a conexão para um novo cluster se o cliente tiver sido conectado anteriormente.

Depois que o cliente chama a ferramenta de conexão de conexão ou alternância, o cliente reutiliza a mesma conexão para operações subsequentes. Portanto, você só precisa chamar a ferramenta de conexão connect ou wtich uma vez ou se precisar alternar para uma conexão diferente.

loggers

MDB_MCP_LOGGERS

string

disk mcp

Especifica para onde o servidor MCP envia os logs.

Defina loggers para uma ou mais das seguintes opções:

  • disk, que grava registros em arquivos de disco localizados no caminho especificado na opção logPath.

  • mcp, que envia os registros para o cliente de IA, se o cliente suportar protocolo de registro e transporte.

  • stderr, que envia os registros para a saída de erro padrão. Esta configuração é útil para depuração ou ao executar MCP em um contêiner.

Por exemplo, para definir loggers como mcp e stderr no arquivo de configuração JSON do cliente IA ou na linha de comando do sistema operacional, use --loggers mcp stderr.

Para definir a variável de ambiente do sistema operacional MDB_MCP_LOGGERS como disk e stderr, use export MDB_MCP_LOGGERS="disk,stderr".

Para obter mais informações sobre as opções de registro, consulte Solução de problemas do servidor MCP.

logPath

MDB_MCP_LOG_PATH

string

Depende do sistema operacional

Diretório que armazena os registros do servidor MCP.

Para obter mais informações sobre o caminho do registro e especificações do sistema operacional, consulte Solução de problemas do servidor MCP.

disabledTools

MDB_MCP_DISABLED_TOOLS

array

Não definido

Uma array de nomes de ferramentas MCP, tipos de operação ou categorias de ferramentas para desabilitar.

Para obter mais informações, consulte Desativando o Servidor MCP FERRAMENTAS.

readOnly

MDB_MCP_READ_ONLY

booleano

false

Para desabilitar operações de gravação de cluster, defina --readOnly no arquivo de configuração ou linha de comando ou defina a variável de ambiente do sistema operacional MDB_MCP_READ_ONLY como true.

O padrão é permitir operações de gravação do cluster. Normalmente, sempre ative o modo somente leitura .

Para obter mais informações, consulte Habilitar o modo somente leitura do servidor MCP.

indexCheck

MDB_MCP_INDEX_CHECK

booleano

false

Se true, impõe que as operações de query devem usar um índice e rejeita queries que executam verificações de collection.

Para obter mais informações, consulte Habilitando a verificação de índice.

telemetry

MDB_MCP_TELEMETRY

string

enabled

Se disabled, a coleta de dados de uso do Servidor MCP será interrompida.

Para obter mais informações, consulte Desabilitar a telemetria do servidor MCP.

transport

MDB_MCP_TRANSPORT

string

stdio

Protocolo de transporte para comunicações com o servidor MCP.

Defina transport para uma das seguintes opções:

  • stdio, que é o padrão. Utiliza a entrada e saída padrão para comunicações com o Servidor MCP. stdio é adequado para a maioria dos clientes de IA.

  • http, que permite comunicações HTTP com o Servidor MCP. Em seguida, você pode usar HTTP para interagir com o Servidor MCP a partir de um cliente Web ou se comunicar com o Servidor MCP em uma porta IP HTTP específica.

    Aviso

    O transporte HTTP NÃO é recomendado para uso de produção sem implementar medidas adequadas de autenticação e segurança.

httpPort

MDB_MCP_HTTP_PORT

inteiro

3000

Número da porta IP para comunicações HTTP com o servidor MCP.

httpHost

MDB_MCP_HTTP_HOST

string

127.0.0.1

Endereço IP para comunicações HTTP com o servidor MCP.

idleTimeoutMs

MDB_MCP_IDLE_TIMEOUT_MS

inteiro

600000

Tempo limite ocioso para um cliente se desconectar. Aplica-se apenas ao transporte HTTP.

notificationTimeoutMs

MDB_MCP_NOTIFICATION_TIMEOUT_MS

inteiro

540000

Tempo limite de notificação para que um cliente esteja ciente da desconexão. Aplica-se apenas ao transporte HTTP.

authenticationMechanism

MDB_MCP_AUTHENTICATION_MECHANISM

string

SCRAM-SHA-256

SCRAM é o mecanismo de autenticação padrão para MongoDB. Para se conectar às suas implementações do MongoDB com o servidor MongoDB MCP usando outros métodos de autenticação, consulte as seguintes páginas:

Para configurar o servidor MCP, use qualquer um destes métodos:

  • Arquivo de configuração JSON com opções do servidor MCP

  • Opções de linha de comando

  • Variáveis de ambiente do sistema operacional

O servidor MCP usa credenciais do Atlas API ou uma string de conexão para acessar um cluster.

Para configurar o Servidor MCP para se conectar a um cluster e definir outras opções do Servidor MCP, use um método descrito nesta seção.

Observação

Os exemplos de arquivo de configuração do servidor MCP incluem --readOnly para garantir o acesso somente leitura aos dados. Normalmente, ative o modo somente leitura para evitar alterações de dados.

Para habilitar operações de gravação, omita --readOnly ou defina a variável de ambiente do sistema operacional MDB_MCP_READ_ONLY como false. Para obter mais informações, consulte Habilitar o modo somente leitura do servidor MCP.

Os exemplos de arquivo de configuração do servidor MCP definem o campo type como "stdio".

type pode ser definido como um dos seguintes:

  • "stdio", que usa a entrada e saída padrão para comunicações com o Servidor MCP. stdio é adequado para a maioria dos clientes de IA. Normalmente, use stdio.

  • "http", que permite comunicações HTTP com o Servidor MCP. Você pode então usar HTTP para interagir com o Servidor MCP a partir de um cliente web .

    Aviso

    HTTP NÃO é recomendado para uso de produção sem implementar autenticação e segurança.

Os exemplos de arquivo de configuração do Servidor MCP também definem o nome do Servidor MCP como "MongoDB". Você pode alterar o nome do servidor para corresponder ao nome do seu servidor MCP depois de iniciá-lo. O nome do servidor identifica o servidor MCP para o cliente AI.

Você pode usar as credenciais da API do Atlas obtidas em Pré-requisitos do servidor do MongoDB MCP para executar as ferramentas do Atlas para se conectar a um cluster do Atlas.

Observação

Como você verá na próxima seção, você também pode se conectar a um Atlas cluster usando uma string de conexão do MongoDB se não quiser usar as credenciais da API do Atlas por segurança ou outro motivo.

Para se conectar com as credenciais da API do Atlas , defina as opções apiClientId e apiClientSecret na seção "args" do arquivo de configuração JSON para o cliente de IA:

...
"args": [
"-y",
"mongodb-mcp-server",
"--apiClientId", "<atlas-service-accounts-client-id>",
"--apiClientSecret", "<atlas-service-accounts-client-secret>",
"--readOnly"
]
...

Para obter um exemplo completo do arquivo de configuração JSON para seu cliente de IA, consulte Introdução ao servidor MongoDB MCP.

Se não quiser usar as credenciais da API do Atlas por motivos de segurança ou outro motivo, você poderá se conectar a um cluster usando uma string de conexão do MongoDB .

O exemplo seguinte mostra um connectionString para conectar a um Atlas cluster na seção "args":

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

Substitua <user-name>, <password> e <cluster-name> pelas suas informações do Atlas .

Você também pode se conectar a um cluster local com uma string de conexão. Por exemplo:

...
"args": [
"-y",
"mongodb-mcp-server",
"--connectionString",
"mongodb://127.0.0.1:27019/?directConnection=true",
"--readOnly"
]
...

Você pode definir variáveis de ambiente para definir várias opções de configuração para o servidor MCP.

Para definir variáveis de ambiente do sistema operacional para o Servidor MCP, use o prefixo MDB_MCP_ seguido do nome da variável em maiúsculas com sublinhados. Por exemplo, use MDB_MCP_CONNECTION_STRING para definir a opção connectionString.

Para obter uma lista de opções, consulte Opções de configuração do servidor MCP.

Os exemplos a seguir mostram como definir as variáveis de ambiente do servidor MCP em um sistema operacional baseado em Unix:

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

Os exemplos a seguir definem as mesmas variáveis usando em uma linha de comando do Windows:

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

Os exemplos a seguir definem as mesmas variáveis em uma sessão do Windows PowerShell:

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

O exemplo seguinte mostra como definir a variável de ambiente da string de conexão na seção "env" de um arquivo de configuração JSON:

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

Substitua <user-name>, <password> e <cluster-name> pelas suas informações do Atlas .

O exemplo seguinte mostra como definir variáveis de ambiente da API do Atlas na seção "env" de um arquivo de configuração JSON:

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

Você pode limitar o servidor MCP para executar somente operações de leitura utilizando o modo read-only.

O padrão é permitir operações de gravação do cluster. Normalmente, sempre ative o modo somente leitura .

Para ativar o modo somente leitura com uma opção de linha de comando, use:

--readOnly

Para habilitar o modo somente leitura usando uma variável de ambiente, defina a variável de ambiente MDB_MCP_READ_ONLY como true:

export MDB_MCP_READ_ONLY=true

Ao ativar o modo somente leitura, uma mensagem é adicionada ao registro do servidor MCP que indica que os FERRAMENTAS que executam operações de gravação são impedidos de serem executados.

Se você tiver problemas com o servidor MCP, examine os registros do servidor MCP para obter informações que possam ajudar a solucionar o problema.

Por padrão, o servidor MCP grava os logs no disco e também envia os logs para o cliente MCP. Você pode alterar a opção loggers para especificar para onde os registros são enviados. Para obter detalhes sobre as opções do servidor MCP, consulte Opções de configuração do servidor MCP.

A tabela a seguir mostra os diretórios padrão onde o servidor MCP armazena os arquivos de log:

Sistema operacional
Diretório de registro padrão

Windows

%LOCALAPPDATA%\mongodb\mongodb-mcp\.app-logs

macOS e Linux

~/.mongodb/mongodb-mcp/.app-logs

Você pode alterar o caminho do registro, se necessário. Para fazer isso, defina um destes:

  • logPath opção em um arquivo de configuração JSON ou linha de comando

  • MDB_MCP_LOG_PATH Variável de ambiente

Para restringir o acesso ao Atlas e operações de banco de dados , você pode desabilitar ferramentas específicas do Servidor MCP ou categorias de ferramentas.

Para desativar o FERRAMENTAS, defina a opção de configuração disabledTools MCP Server, que é uma array de strings. Cada string pode ser um nome de ferramenta ou categoria de ferramenta.

A tabela a seguir mostra os nomes das ferramentas que você pode desabilitar:

Nome da ferramenta
Descrição
Exemplo de operações desativadas

create

Criar recursos

  • Criar cluster

  • Inserir documento

update

Atualizar recursos

  • Atualizar documento

  • Renomear coleção

delete

Excluir recursos

  • Excluir documento

  • Descartar collection

read

Ler recursos

  • encontrar

  • Agregação

  • Listar clusters

metadata

Ler metadados

  • bancos de dados de lista

  • Listar collections

  • Ler esquema de collection

A tabela a seguir mostra as categorias de ferramentas que você pode desativar:

Categoria da ferramenta
Descrição
Exemplo de operações desativadas

atlas

Ferramentas do Atlas

  • Listar clusters

  • Criar cluster

mongodb

Ferramentas de banco de dados

  • encontrar

  • Agregação

Para desabilitar o FERRAMENTAS com a opção de linha de comando disabledTools, use uma lista separada por espaço. Por exemplo:

--disabledTools create update delete atlas

Para desabilitar o FERRAMENTAS com a variável de ambiente MDB_MCP_DISABLED_TOOLS, use uma string separada por vírgula. Por exemplo:

export MDB_MCP_DISABLED_TOOLS="create,update,delete,atlas"

Para impedir que o servidor MCP coleta dados sobre o uso, você pode desativar a telemetria.

Para desativar a telemetria usando uma variável de ambiente, defina uma destas:

export MDB_MCP_TELEMETRY=disabled
export DO_NOT_TRACK=1

Para desativar a telemetria usando uma opção de linha de comando, use:

--telemetry disabled

Para garantir que as operações de consulta usem um índice, habilite a opção de verificação de índice. Quando ativado, o servidor MCP rejeita as queries que realizam uma verificação de collection para melhorar o desempenho e garantir que as queries sejam otimizadas.

Para habilitar a verificação do índice com uma opção de linha de comando, use:

--indexCheck

Para ativar a verificação do índice com uma variável de ambiente, use:

export MDB_MCP_INDEX_CHECK=true

Se você habilitar a verificação de índice, o servidor MCP registrará uma mensagem de erro se uma query for rejeitada porque não usa um índice.

Para iniciar o Servidor MCP como um serviço autônomo , use o comando npx.

O exemplo seguinte inicia o Servidor MCP com npx e define as opções de linha de comando para conectar a um cluster Atlas :

npx -y mongodb-mcp-server@latest \
--apiClientId="<atlas-service-accounts-client-id>" \
--apiClientSecret="<atlas-service-accounts-client-secret>" \
--connectionString="mongodb+srv://<user-name>:<password>@<cluster-name>.mongodb.net/<database-name>" \
--logPath=</path/to/logs> --readOnly --indexCheck --loggers mcp stderr

Substitua os valores das opções pelas informações de conexão e outros detalhes. Para examinar a lista de opções do servidor MCP, consulte Opções de configuração do servidor MCP.

Para criar uma conta de serviço do Atlas, consulte Pré-requisitos do servidor MongoDB MCP para executar o Atlas FERRAMENTAS.

Você pode utilizar o npx para iniciar o Servidor MCP e utilizar variáveis de ambiente. Você já deve ter definido as variáveis de ambiente antes de executar npx.

Para definir variáveis de ambiente em um arquivo de configuração ou no sistema operacional, consulte Definição de variáveis de ambiente do servidor MCP.

O exemplo a seguir pressupõe que as variáveis de ambiente tenham sido definidas com as informações de conexão e também define o modo somente leitura como uma opção de linha de comando:

npx -y mongodb-mcp-server@latest --readOnly

O protocolo de transporte padrão do servidor MCP é stdio, adequado para integração com a maioria dos clientes MCP.

Você também pode usar o protocolo de transporte HTTP com o servidor MCP. O HTTP é útil para interagir com o Servidor MCP a partir de um cliente web ou para configurar o Servidor MCP para responder a solicitações em uma porta específica.

Observação

O transporte HTTP não é recomendado para uso de produção sem implementar medidas de autenticação e segurança. Use o transporte HTTP apenas se precisar usar HTTP para interagir com o servidor MCP.

Diretivas de segurança:

  • Implementar autenticação. Por exemplo, use um gateway de API ou um proxy reverso.

  • Use criptografia HTTPS/TLS.

  • Implemente o servidor MCP atrás de um firewall ou em uma rede privada.

  • Implementar limitação de taxa.

  • Nunca exponha credenciais de conexão.

Um guia de segurança completo estará disponível em breve.

Para iniciar o servidor MCP com transporte HTTP, utilize o --transport http. Por exemplo:

npx -y mongodb-mcp-server@latest --transport http --readOnly

Por padrão, o servidor MCP responde a solicitações no http://127.0.0.1:3000. Para alterar o host e a porta, use as opções --httpHost e --httpPort. Por exemplo:

npx -y mongodb-mcp-server@latest \
--transport http --httpHost=324.1.5.7 --httpPort=8080 --readOnly

Voltar

Pré-requisitos