MongoDB MCP Server 🚀 について
MongoDB MCP Serverは、MongoDBのデータベース、コレクション、ドキュメントを操作するMCPインターフェースを提供します。非同期処理、MongoDB Atlas接続、Dockerでのデプロイ、クエリ用ツールに対応しています。
主な機能
- 01MongoDBのCRUD操作
- 02MongoDB Atlas接続の処理
- 03非同期処理パターン
- 04データベース一覧とドキュメント検索
- 05Dockerデプロイ対応
活用シーン
- 01MongoDBインスタンス内のデータベース一覧の取得
- 02コレクションの条件によるドキュメント検索
- 03MCPクライアントからMongoDBへの接続
MCP 対応
このサーバーは、接続確認、データベース一覧、ドキュメント検索などのMongoDB操作をMCPクライアントに提供します。stdioまたはSSEトランスポートに対応しています。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MongoDB MCP サーバー 🚀
MongoDB との統合を実現する強力な Model Context Protocol(MCP)サーバー実装です。標準化されたプロトコルを通じて、MongoDB データベースとシームレスにやり取りできます。
🌟 作者
Syed Asad
📋 概要
この MCP サーバー実装は、Model Context Protocol を通じて MongoDB データベースとやり取りするための堅牢なインターフェースを提供します。適切な async/await パターンとエラー処理を用いて、データベース、コレクション、ドキュメントに対する操作をサポートします。
✨ 特長
- 🔄 MongoDB の CRUD 操作を全面的にサポート
- 🔐 MongoDB Atlas との安全な接続処理
- 🚦 最適なパフォーマンスを実現する async/await パターン
- 🛡️ 包括的なエラー処理
- 📦 簡単にデプロイできる Docker サポート
- 🔍 適切な型ヒントを用いたクエリ実行
🚀 クイックスタート
uvx を使用(Python)
# Run directly with uvx
uvx mongodb-mcp-bridge
# With SSE transport for remote connections
uvx mongodb-mcp-bridge --transport=sse
npx を使用(Node.js)
# Run directly with npx
npx mongodb-mcp-bridge
# With SSE transport for remote connections
npx mongodb-mcp-bridge --transport=sse
環境変数
サーバーを実行する前に、次の環境変数を設定します。
# Required
MONGODB_URI="your_mongodb_connection_string"
# Optional
MONGODB_DB="default_database_name"
MCP_PORT="6274" # Default port for MCP Inspector
Docker を使用 🐳
# Build the Docker image
docker build -t mongodb-mcp-server .
# Run the container
docker run -e MONGODB_URI="your_mongodb_uri" -p 6274:6274 mongodb-mcp-server
🔗 IDE との統合
VS Code のセットアップ
以下を VS Code の settings.json に追加します。
{
"mcp": {
"inputs": [
{
"type": "promptString",
"id": "mongodbUri",
"description": "MongoDB Connection URI"
}
],
"servers": {
"mongodb": {
"command": "uvx",
"args": ["mongodb-mcp-bridge", "--transport=sse"],
"env": {
"MONGODB_URI": "$(mongodbUri)"
}
}
}
}
}
Cursor/Windsurf のセットアップ
Cursor または Windsurf で、次のように MCP サーバーを設定します。
{
"mcp": {
"servers": {
"mongodb": {
"url": "http://localhost:6274"
}
}
}
}
📚 利用可能なツール
-
ping
- MongoDB への接続を確認する簡単な接続テスト
-
list_databases
- MongoDB インスタンスで利用可能なすべてのデータベースを一覧表示します
-
find_documents
- フィルターオプションを指定して、コレクション内のドキュメントをクエリします
- パラメーター:
database:データベース名collection:コレクション名query:MongoDB クエリオブジェクト(任意)limit:返すドキュメントの最大数(デフォルト:10)
🔍 使用例
MCP Inspector(http://127.0.0.1:6274)を使用:
// List all databases
{
"tool": "list_databases"
}
// Find documents in a collection
{
"tool": "find_documents",
"database": "your_database",
"collection": "your_collection",
"query": {"status": "active"},
"limit": 5
}
🤝 コントリビューション
コントリビューションを歓迎します。お気軽にプルリクエストを送信してください。
- リポジトリをフォークします
- フィーチャーブランチを作成します(
git checkout -b feature/AmazingFeature) - 変更をコミットします(
git commit -m 'Add some AmazingFeature') - ブランチにプッシュします(
git push origin feature/AmazingFeature) - プルリクエストを作成します
📄 ライセンス
このプロジェクトは MIT ライセンスのもとでライセンスされています。詳細は LICENSE ファイルをご覧ください。
🙏 謝辞
- プロトコル仕様を提供してくれた Model Context Protocol(MCP)チーム
- 優れたデータベースとドライバーを提供してくれた MongoDB チーム
- このプロジェクトのすべてのコントリビューターとユーザー
Syed Asad が ❤️ を込めて作成
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。