Skip to main content
Glama

MongoDB MCPサーバー

PythonFastAPIFastMCPMongoDBアントロピックDockerライセンス

MongoDBデータベースとのシームレスな対話を標準化されたプロトコルとして提供する強力なModel Context Protocol(MCP)サーバー実装。

作者

Rastalion

Related MCP server: MongoDB

概要

このMCPサーバー実装は、Model Context Protocolを介してMongoDBデータベースと対話するための強力なインターフェースを提供します。 async/await パターンとエラー処理により、データベース、コレクション、ドキュメントの操作を確実にサポートします。

特徴

  • MongoDB CRUDタスクの完全サポート

  • MongoDBとの安全な接続処理

  • 最適なパフォーマンスのための非同期(async/await)パターン

  • 包括的なエラー処理

  • 簡単な展開のためのDockerサポート

  • 型ヒントを使用したクエリの実行

  • リアルタイムアップデート用のSSE(Server-Sent Events)サポート

クイックスタート

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

Dockerを使う

# 저장소 복제 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 - Server-Sent Eventsエンドポイント

  • メッセージ処理POST /messages messages - メッセージ処理エンドポイント

IDE統合

VS Codeの設定

VS Code settings.jsonに以下を追加します。

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

Claudeまたは他のAIアシスタント

Claude または他の AI アシスタント用に、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の設定

Docker設定には以下が含まれます。

  • Python 3.12 基本イメージ

  • アジア/ソウルタイムゾーン

  • MongoDB 4.4インスタンス

  • データベースストレージ用の永続ボリューム

  • 両方のサービスのヘルスチェック

  • 自動化されたネットワーク構成

ライセンス

このプロジェクトはMITライセンスの下で展開されます - 詳細についてはLICENSEファイルを参照してください。

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/TeiNam/mongo-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server