Quando o servidor MongoDB MCP executa ferramentas como find e aggregate, ele deve manter temporariamente os resultados da query na memória antes de devolvê-los ao cliente. Essas operações podem consumir mais memória do que o disponível e correr o risco de uma falha de falta de memória ou de degradação do desempenho do servidor se:
Buscar muitos documentos.
Busca documentos muito grandes.
Execute em um servidor que lida com várias chamadas de ferramentas simultâneas.
Para mitigar esses problemas, o servidor MCP usa:
Limites rígidos e configuráveis na memória usados e retornados por uma query ou agregação.
Um iterador de cursor dedicado que rastreia a contagem de documento e o uso de memória à medida que lê do MongoDB e interrompe a leitura antes que cruze os limites configurados.
Juntas, essas proteções são projetadas para evitar que uma única chamada de ferramenta esgote a memória do servidor e encorajar padrões que retornam apenas dados que o LLM pode usar de forma realista em sua janela de contexto.
Configurações
O servidor MCP fornece pontos de configuração que controlam a quantidade de dados que uma única chamada de ferramenta pode recuperar e manter na memória. Estes se dividem em dois grupos:
Limites do servidor: aplique-se a todas as chamadas de ferramentas gerenciadas pelo servidor.
Limites de chamada de ferramenta: definidos por chamada de ferramenta pelo cliente ou agente.
Limites do Servidor
Os limites do servidor são configurados no servidor MCP e usados como limite superior no uso de memória para todas as chamadas find e aggregate. A tabela a seguir descreve as configurações do servidor disponíveis para limitar o uso da memória:
Nome da opção CLI | Nome da variável de ambiente do sistema operacional | Default | Descrição |
|---|---|---|---|
|
|
| Tamanho máximo em bytes para resultados de uma chamada de ferramenta agregada ou localizada. |
|
|
| Número máximo de documentos que podem ser devolvidos por uma chamada de ferramenta de localização ou agregação. Para a ferramenta de localização, o limite efetivo será o menor entre esse valor e o limite da ferramenta. |
Limites de chamada de ferramenta
Chamadas de ferramentas individuais também podem controlar a quantidade de dados solicitados. A tabela a seguir descreve os parâmetros de chamada de ferramenta disponíveis para limitar o uso da memória:
Parâmetro | Ferramenta | Default | Descrição |
|---|---|---|---|
|
|
| Número máximo de documentos que a chamada
|
|
|
| Carga útil máxima que a chamada de ferramenta de localização ou agregação pode retornar.
|
Comportamento de estouro de memória
Se algum dos limites configurados for atingido enquanto o cursor lê documentos do MongoDB , o servidor MongoDB MCP interromperá a busca de documentos adicionais e retornará o conjunto de resultados parciais coletado.
Atingir os limites de memória ou documento configurados antes que todos os documentos sejam obtidos pode resultar no recebimento de menos documentos do que o solicitado. Talvez você precise:
Emitir chamadas de acompanhamento com parâmetros ajustados.
Reduza o volume de dados retornados ao LLM. Por exemplo, usando estágios de agregação .