MongoDB MCP

mongodb-js/mongodb-mcp-server· Проверено 12.11.2026· 1,2 тыс.на GitHub

Подключает агента к MongoDB и Atlas: искать документы, считать агрегации, разбирать схему, индексы и медленные запросы, создавать кластеры и пользователей Atlas. В конфиге ниже сервер работает только на чтение.

2 реализации:

Сервер на вашем компьютере: подключается к любой базе по строке подключения, а с сервисным аккаунтом Atlas управляет ещё и кластерами.

Как подключить

Что сделать до подключения

1

Node.js 22.13 или новее; без Node.js сервер запускается в Docker из образа mongodb/mongodb-mcp-server

2

Строка подключения к базе или учётные данные сервисного аккаунта Atlas; мастер настройки запускается командой npx -y mongodb-mcp-server@latest setup

3
MDB_MCP_CONNECTION_STRING

строка подключения к локальной базе или кластеру Atlas с логином и паролем

4
MDB_MCP_API_CLIENT_ID

по желанию, для инструментов Atlas: Client ID сервисного аккаунта из Access Manager > Organization Access на cloud.mongodb.com, вместе с MDB_MCP_API_CLIENT_SECRET

5
MDB_MCP_API_CLIENT_SECRET

Client Secret того же аккаунта; показывается один раз, сохраните сразу

Конфиг для вашего клиента

Команда в терминале, в папке проекта. Флаг --scope user подключит сервер для всех проектов. Подробно о Claude Code

claude mcp add --env 'MDB_MCP_CONNECTION_STRING=<строка подключения mongodb://…>' --transport stdio mongodb \
  -- npx -y mongodb-mcp-server@latest --readOnly

Проверка: claude mcp list показывает статус рядом с каждым сервером: ✔ Connected, ! Needs authentication или ✘ Failed to connect. Внутри сессии то же видно по команде /mcp.

Инструменты сервера

findищет документы в коллекции
aggregateвыполняет агрегацию
countсчитает документы
list-databasesпоказывает базы
list-collectionsпоказывает коллекции
collection-schemaописывает схему коллекции
collection-indexesпоказывает индексы
explainпоказывает план запроса
create-indexсоздаёт индекс
insert-manyвставляет документы
update-manyобновляет документы
delete-manyудаляет документы по фильтру
exportвыгружает результат в EJSON
atlas-list-clustersпоказывает кластеры Atlas
atlas-create-free-clusterсоздаёт бесплатный кластер Atlas
atlas-connect-clusterподключается к кластеру Atlas
atlas-create-db-userсоздаёт пользователя базы
atlas-create-access-listоткрывает доступ по IP
atlas-get-performance-advisorдаёт советы по индексам и медленным запросам
search-knowledgeищет по документации MongoDB

Показано 20 из 53.

Что попросить агента

«Какие базы и коллекции есть в <строка подключения или кластер>? Опиши схему <коллекция>»Агент вызовет list-databases, list-collections и collection-schema
«Сколько заказов за <месяц> по каждому городу?»Агент соберёт пайплайн и вызовет aggregate по коллекции заказов
«Почему тормозит запрос <запрос>? Предложи индекс»Агент вызовет explain и collection-indexes, для Atlas добавит atlas-get-performance-advisor
«Создай бесплатный кластер Atlas, пользователя и открой доступ с моего IP»Агент вызовет atlas-create-free-cluster, atlas-create-db-user и atlas-create-access-list
«Выгрузи пользователей без email из <коллекция>»Агент вызовет find с фильтром и export, результат сохранится в EJSON

Для каких задач

Найти документы и посчитать агрегацию по коллекции
Описать схему коллекции и её индексы
Разобрать медленный запрос через explain и советы Performance Advisor
Создать кластер Atlas, пользователя базы и открыть доступ по IP
Выгрузить результат запроса в EJSON
Найти ответ в документации MongoDB

Ограничения

!

find и aggregate по умолчанию отдают не больше 100 документов и 16 777 216 байт за вызов

!

Инструменты Atlas работают только с учётными данными сервисного аккаунта Atlas

!

Локальный сервер рассчитан на одного пользователя и не проверяет, кто к нему обращается: открывать его в сеть без своей авторизации нельзя

!

Подтверждение перед удалением работает только в клиентах с поддержкой elicitation, в остальных инструмент выполняется сразу

Если не работает

Агент в CI или в режиме codex exec пишет «User did not confirm the execution of the <tool> tool so the operation was not performed»
Отвечать на подтверждение некому, и сервер считает это отказом. Если агенту можно доверять, запустите сервер с MDB_MCP_CONFIRMATION_REQUIRED_TOOLS="".
Агент не видит insert-many, update-many и других инструментов записи
Сервер запущен с --readOnly или MDB_MCP_READ_ONLY=true. Уберите флаг, если запись нужна.
Запрос отклонён из-за того, что не использует индекс
Включён режим --indexCheck: создайте индекс через create-index или выключите режим.
К удалённому серверу Atlas не подключиться по статическому ключу API
Удалённый сервер принимает только OAuth. Используйте клиент с OAuth или обёртку mongodb-atlas-mcp-remote с MDB_MCP_API_CLIENT_ID и MDB_MCP_API_CLIENT_SECRET.

Какую реализацию выбрать

РеализацияКто делаетЗвёздыЗапускКлючИнструментыОбновлён
MongoDB MCP Server (локальный)разработчик сервисаMongoDB1,2 тыс.локальнотокен5312 ноября 2026
MongoDB Atlas-Managed MCP Server (удалённый)разработчик сервисаMongoDB1,2 тыс.HTTPвход—12 ноября 2026

Частые вопросы

Как разрешить агенту менять данные?
Уберите --readOnly из args. В режиме только чтения сервер регистрирует инструменты чтения, подключения и метаданных, а создание, изменение и удаление не регистрирует.
Агент удалит базу без спроса?
drop-database, drop-collection, delete-many, drop-index и ещё 4 инструмента по умолчанию просят подтверждения, если клиент поддерживает elicitation. Целые группы отключаются переменной MDB_MCP_DISABLED_TOOLS, например create,update,delete.
Чем удалённый сервер отличается от локального?
Удалённый работает на стороне MongoDB, только с Atlas, и сам ведёт вход каждого пользователя через OAuth или сервисный аккаунт. Локальный подключается к любой базе, включая базы на своих серверах.
Как отключить телеметрию?
Задайте MDB_MCP_TELEMETRY=disabled, флаг --telemetry disabled или DO_NOT_TRACK=1. Иначе сервер отправляет в MongoDB данные об использовании.
Как запретить запросы без индекса?
Включите --indexCheck или MDB_MCP_INDEX_CHECK=true: запросы с полным сканированием коллекции будут отклоняться с ошибкой.
Работает ли сервер из России?
Локальный сервер работает на вашем компьютере и подключается к базе по строке подключения; для Atlas нужен аккаунт MongoDB Atlas, прокси задаётся переменной HTTPS_PROXY или параметрами SOCKS5 в строке подключения.

Похожие серверы