/ Каталог / Песочница / MongoDB MCP Server
● Сообщество kiliczsh 🔑 Нужен свой ключ

MongoDB MCP Server

автор kiliczsh · kiliczsh/mcp-mongo-server

Передайте Claude строку подключения к MongoDB и дайте ему делать запросы, агрегации и инспекцию схем — с флагом --read-only для безопасной работы с production.

mcp-mongo-server — лаконичный MCP-сервер для MongoDB. Передайте URI подключения как единственный аргумент, и Claude получит инструменты find, aggregate, indexes, schema inference и интроспекцию коллекций. Поставляется с флагом --read-only, который отключает все мутирующие инструменты — используйте его, когда хотите дать Claude исследовать prod без изменений.

Зачем использовать

Ключевые функции

Живое демо

Как выглядит на практике

mongo-mcp-kiliczsh.replay ▶ готово
0/0

Установка

Выберите клиент

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "mongo-mcp-kiliczsh": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-mongo-server",
        "mongodb://localhost:27017/mydb"
      ]
    }
  }
}

Откройте Claude Desktop → Settings → Developer → Edit Config. Перезапустите после сохранения.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "mongo-mcp-kiliczsh": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-mongo-server",
        "mongodb://localhost:27017/mydb"
      ]
    }
  }
}

Cursor использует ту же схему mcpServers, что и Claude Desktop. Конфиг проекта приоритетнее глобального.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "mongo-mcp-kiliczsh": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-mongo-server",
        "mongodb://localhost:27017/mydb"
      ]
    }
  }
}

Щёлкните значок MCP Servers на боковой панели Cline, затем "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "mongo-mcp-kiliczsh": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-mongo-server",
        "mongodb://localhost:27017/mydb"
      ]
    }
  }
}

Тот же формат, что и Claude Desktop. Перезапустите Windsurf для применения.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "mongo-mcp-kiliczsh",
      "command": "npx",
      "args": [
        "-y",
        "mcp-mongo-server",
        "mongodb://localhost:27017/mydb"
      ]
    }
  ]
}

Continue использует массив объектов серверов, а не map.

~/.config/zed/settings.json
{
  "context_servers": {
    "mongo-mcp-kiliczsh": {
      "command": {
        "path": "npx",
        "args": [
          "-y",
          "mcp-mongo-server",
          "mongodb://localhost:27017/mydb"
        ]
      }
    }
  }
}

Добавьте в context_servers. Zed перезагружается автоматически.

claude mcp add mongo-mcp-kiliczsh -- npx -y mcp-mongo-server mongodb://localhost:27017/mydb

Однострочная команда. Проверить: claude mcp list. Удалить: claude mcp remove.

Сценарии использования

Реальные сценарии: MongoDB MCP Server

Изучить незнакомую MongoDB-базу без единой записи

👤 Разработчики, вводящиеся в новый сервис ⏱ ~15 min beginner

Когда использовать: Вы получили Mongo-инстанс в наследство, и схема не задокументирована.

Предварительные требования
  • Read-only пользователь Mongodb.createUser({user:'reader', roles:[{role:'read', db:'mydb'}]})
Поток
  1. Подключение только для чтения
    Use the mongo MCP. List all collections and infer the schema for the top 3 by size.✓ Скопировано
    → Список коллекций + JSON-схема каждой
  2. Выборочная проверка
    Show me 5 sample documents from orders — anonymize emails.✓ Скопировано
    → 5 документов, PII анонимизированы
  3. Карта связей
    Which collections reference each other by ObjectId? Draw a quick text diagram.✓ Скопировано
    → ER-диаграмма в текстовом виде

Итог: Рабочее понимание базы данных за 10 минут без DBA.

Подводные камни
  • Выборка может пропустить high-cardinality поля — Увеличьте размер выборки при инференсе; используйте выборку по дате, если данные смещены по времени
Сочетать с: filesystem

Оптимизировать медленную агрегацию с советами по индексам от Claude

👤 Бэкенд-разработчики ⏱ ~25 min intermediate

Когда использовать: Aggregation pipeline выполняется 30 секунд, и вы не знаете, какая стадия стоит дороже всего.

Поток
  1. Профилирование
    Run this aggregation with explain=true. Show the winning plan.✓ Скопировано
    → Вывод explain с количеством scanned docs по стадиям
  2. Диагностика
    Which stage is the bottleneck? What index would help?✓ Скопировано
    → Конкретная рекомендация по индексу с обоснованием
  3. Верификация
    Re-explain after I add the index. Did totalDocsExamined drop?✓ Скопировано
    → Да/нет с числами

Итог: Агрегация работает в 10 раз быстрее благодаря одному точечному индексу.

Подводные камни
  • Claude предлагает индекс, который замедляет запись — Спросите: «Какой штраф на запись добавит этот индекс?» перед применением

Найти документы, нарушающие неявную схему

👤 Инженеры данных ⏱ ~20 min intermediate

Когда использовать: Schemaless-базы накапливают расхождения; нужно найти нарушителей.

Поток
  1. Выборка
    Sample 1000 documents from users. What fields are missing or have unexpected types?✓ Скопировано
    → Таблица nullity и частоты типов по полям
  2. Поиск
    Find all users where email is null or not a string.✓ Скопировано
    → Количество + выборка _ids

Итог: Конкретный отчёт о грязных данных, который можно передать в скрипты миграции.

Подводные камни
  • Большие коллекции вызывают таймауты — Используйте $sample, затем уточняйте запросы по диапазонам

Комбинации

Сочетайте с другими MCP — эффект x10

mongo-mcp-kiliczsh + filesystem

Экспорт результатов агрегации в JSON для последующих инструментов

Run the aggregation and save results to /tmp/orders-by-month.json.✓ Скопировано
mongo-mcp-kiliczsh + github

Открыть PR со скриптом миграции после обнаружения расхождений

We found 1200 users without email. Open a PR with a backfill migration.✓ Скопировано

Инструменты

Что предоставляет этот MCP

ИнструментВходные данныеКогда вызыватьСтоимость
find collection, filter, projection?, limit? Поиск конкретных документов 1 query
aggregate collection, pipeline[], explain? Группировка/трансформация данных 1 query
list_collections (none) Узнать, что есть в БД free
schema collection, sample_size? Инференс структуры по выборке документов 1 sample read
list_indexes collection Разговоры об оптимизации free
insert_one collection, document Только когда не в режиме --read-only 1 write

Стоимость и лимиты

Во что обходится

Квота API
Ограничено RU/IOPS вашего Mongo-кластера
Токенов на вызов
200–5000 в зависимости от размера результата
Деньги
Бесплатно (open source)
Совет
Проецируйте только нужные поля; ограничивайте limit как можно раньше

Безопасность

Права, секреты, радиус поражения

Минимальные скоупы: read on the target db
Хранение учётных данных: URI передаётся как аргумент CLI — не допускайте попадания в историю shell
Исходящий трафик: Только на ваш Mongo-хост
Никогда не давайте: dbAdmin root

Устранение неполадок

Частые ошибки и исправления

MongoServerSelectionError

Проверьте связность, IP allowlist, настройки TLS

Проверить: mongosh с тем же URI
Authentication failed

Проверьте authSource в URI (часто admin); убедитесь, что пользователь существует в этой БД

Tool not found in read-only mode

Уберите --read-only, если нужна запись; иначе используйте другой MCP для записей

Альтернативы

MongoDB MCP Server в сравнении

АльтернативаКогда использоватьКомпромисс
MongoDB CompassГрафическое исследование без AIНет интеграции с агентом; ручные запросы
mongosh in a shell MCPНужна полная мощь mongoshБолее опасно; этот MCP даёт ограниченные инструменты

Ещё

Ресурсы

📖 Читать официальный README на GitHub

🐙 Открытые задачи

🔍 Все 400+ MCP-серверов и Skills