Skip to main content
Glama
TeiNam

MongoDB MCP Server

by TeiNam

MongoDB MCP-сервер

ПитонFastAPIFastMCPMongoDBАнтропныйДокерЛицензия

Мощная реализация сервера Model Context Protocol (MCP), обеспечивающая бесперебойное взаимодействие с базами данных MongoDB по стандартизированному протоколу.

Автор

Расталион

Related MCP server: MongoDB

контур

Данная реализация сервера MCP предоставляет мощный интерфейс для взаимодействия с базой данных MongoDB через протокол контекста модели. Он обеспечивает надежную поддержку операций с базами данных, коллекциями и документами с помощью шаблона async/await и обработки ошибок.

характеристика

  • Полная поддержка операций MongoDB CRUD

  • Обработка безопасных подключений к MongoDB

  • Шаблон async/await для оптимальной производительности

  • Комплексная обработка ошибок

  • Поддержка Docker для простого развертывания

  • Выполнение запросов с подсказками типов

  • Поддержка событий, отправленных сервером (SSE), для обновлений в реальном времени

Быстрый старт

Использовать как CLI-инструмент

# 저장소 복제
git clone https://github.com/yourusername/mongo-mcp-server.git
cd mongo-mcp-server

# 개발 모드로 설치
pip install -e .

# 로컬에서 CLI 명령으로 실행
mongo-mcp-server

# SSE 트랜스포트로 실행
mongo-mcp-server --transport=sse

# MongoDB URL 지정
mongo-mcp-server --mongodb-url="mongodb://username:password@hostname:port/dbname"

# 도움말 보기
mongo-mcp-server --help

Запустить через UVX

# UVX가 설치된 경우
uvx mongo-mcp-server

# SSE 트랜스포트 모드
uvx mongo-mcp-server --transport=sse

Запустить Python напрямую

# 저장소 복제
git clone https://github.com/yourusername/mongo-mcp-server.git
cd mongo-mcp-server

# 의존성 설치
pip install -r requirements.txt

# 환경 변수 설정
export MONGODB_URL="mongodb://username:password@hostname:port/dbname?authSource=admin"

# 서버 실행
uvicorn app.main:app --host 0.0.0.0 --port 3000

Использование Докера

# 저장소 복제
git clone https://github.com/yourusername/mongo-mcp-server.git
cd mongo-mcp-server

# Docker Compose로 빌드 및 실행
docker-compose up -d

# 로그 확인
docker-compose logs -f mongo-mcp

Использование UVX

UVX — это инструмент, позволяющий легко управлять сервисами в различных средах.

# 등록 스크립트에 실행 권한 부여
chmod +x uvx-register.sh

# UVX에 서비스 등록
./uvx-register.sh

# 서비스 시작
uvx start mongo-mcp

# 상태 확인
uvx status mongo-mcp

# 로그 확인
uvx logs mongo-mcp

Более подробную информацию см. в руководстве UVX .

Переменные среды

Перед запуском сервера установите следующие переменные среды:

# 필수
MONGODB_URL="mongodb://username:password@hostname:port/dbname?authSource=admin"

# 선택 - 기본값 표시
PORT=3000
MCP_TRANSPORT=http  # 'http' 또는 'sse'

конечная точка API

  • Проверить здоровье : GET /health

  • MCP API : GET /mcp — конечная точка FastMCP (документация OpenAPI)

  • SSE-соединение : GET /sse — конечная точка событий, отправленных сервером

  • Обработка сообщений : POST /messages — конечная точка обработки сообщений

Интеграция с IDE

Настройки VS-кода

Добавьте следующее в файл settings.json VS Code:

{
  "mcp": {
    "inputs": [
      {
        "type": "promptString",
        "id": "mongodbUri",
        "description": "MongoDB 연결 URI"
      }
    ],
    "servers": {
      "mongodb": {
        "command": "mongo-mcp-server",
        "args": [
          "--mongodb-url",
          "$(mongodbUri)"
        ],
        "env": {}
      }
    }
  }
}

Клод или другой помощник с искусственным интеллектом

Настройте свой MCP-сервер для Клода или других помощников на основе искусственного интеллекта следующим образом:

{
  "mcp": {
    "servers": {
      "mongodb": {
        "url": "http://localhost:3000/mcp"
      }
    }
  }
}

Доступные инструменты

Название инструмента

объяснение

listCollections

Список всех доступных коллекций в базе данных

find

Извлечение документов из коллекции с использованием синтаксиса запросов MongoDB

insertOne

Вставить один документ в коллекцию

updateOne

Обновить отдельный документ в коллекции

deleteOne

Удалить один документ из коллекции

indexes

Список всех индексов в коллекции

createIndex

Создать новый индекс в коллекции

dropIndex

Удалить существующий индекс из коллекции

Расширенное использование

Добавить пользовательские инструменты

  1. Создайте новый инструмент в app/tools/documents/ или app/tools/collection/ :

from ..base.tool import BaseTool


class MyNewTool(BaseTool):
    @property
    def name(self) -> str:
        return "my_new_tool"

    @property
    def description(self) -> str:
        return "새 도구에 대한 설명"

    @property
    def input_schema(self) -> Dict[str, Any]:
        return {
            "type": "object",
            "properties": {
                # 도구 입력 스키마 정의
            }
        }

    async def execute(self, params: Dict[str, Any]) -> Dict[str, Any]:
        # 도구 실행 로직 구현
        pass
  1. Зарегистрируйте инструмент в app/tools/registry.py :

from .documents.my_new_tool import MyNewTool

# ToolRegistry.__init__ 메서드 내에서
self.register_tool(MyNewTool())

Установка и развертывание инструментов CLI

Вы можете сделать его доступным по всему миру, зарегистрировав его как пакет на PyPI:

# setup.py 확인 후 빌드
python setup.py sdist bdist_wheel

# 패키지 업로드 (PyPI 계정 필요)
twine upload dist/*

# 전역 설치
pip install mongodb-mcp-bridge

# 어디서든 실행 가능
mongodb-mcp-bridge

Поиск неисправностей

  • Если сервер не запускается : Проверьте справку по mongo-mcp-server --help

  • Проблема с подключением MongoDB : проверьте правильность параметра --mongodb-url

  • Ошибка выполнения инструмента : проверьте реализацию инструмента и входные параметры.

  • Проблема с Docker : проверьте логи с помощью docker-compose logs mongo-mcp

Конфигурация докера

Конфигурация Docker включает в себя:

  • Базовый образ Python 3.12

  • Часовой пояс Азия/Сеул

  • Экземпляр MongoDB 4.4

  • Постоянные тома для хранения базы данных

  • Проверка работоспособности обеих служб

  • Автоматическая настройка сети

Лицензия

Данный проект распространяется по лицензии MIT — подробности см. в файле LICENSE .

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol (MCP) server that enables LLMs to interact directly with MongoDB databases. Query collections, inspect schemas, and manage data seamlessly through natural language.
    28 npm
    175
    MIT
  • A
    license
    B
    quality
    A
    maintenance
    A Model Context Protocol server that provides access to MongoDB databases. This server enables LLMs to inspect collection schemas and execute read-only queries.
    8
    201 npm
    281
    MIT
  • A
    license
    Not graded
    quality
    F
    maintenance
    A modular server that enables management of MongoDB databases, collections, documents, indexes, and bulk operations through the Model Context Protocol (MCP) interface.
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol (MCP) server for MongoDB operations, enabling AI assistants to interact with MongoDB databases through a standardized interface.
    13 npm
    4
    MIT