MongoDB MCP Server について
MongoDB MCP Serverは、MongoDBユーザー向けにデータベース構造を分析し、ERDと自然言語ベースのクエリを生成するMCPサーバーです。ERDはMermaidまたはJSONで出力でき、MongoDBまたはMongooseのクエリーコードを生成します。
主な機能
- 01コレクション構造の分析
- 02MermaidまたはJSON形式のERD生成
- 03自然言語の説明からクエリを作成
- 04MongoDBまたはMongooseのクエリーコード生成
- 05クエリの説明を追加
活用シーン
- 01データベースのコレクションをERDで整理
- 02説明されたデータ検索に使うクエリの下書き
MCP 対応
MongoDBのコレクション構造からERDを生成し、データベーススキーマと自然言語の説明を基にクエリを作成するツールを提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
README(原文)English
プロジェクトの README よりこの README の日本語訳はまだありません。以下は英語の原文です。日本語の紹介はページ上部をご覧ください。
MongoDB MCP Server
MongoDB 데이터베이스를 위한 Model Context Protocol (MCP) 서버입니다. 이 서버는 MongoDB 데이터베이스의 구조를 분석하고, AI를 활용하여 쿼리를 생성하는 기능을 제공합니다.
기능
1. ERD 생성 (generateErd)
데이터베이스의 컬렉션 구조를 분석하여 ERD(Entity Relationship Diagram)를 생성합니다.
-
입력 파라미터:
{ "database": "string", "collections": ["string"], // 선택적 "format": "mermaid" | "json" // 기본값: "mermaid" } -
사용 예시:
{ "database": "test", "format": "mermaid" }
2. 쿼리 생성 (generateQuery)
자연어 설명을 기반으로 MongoDB 쿼리를 생성합니다. 데이터베이스의 실제 구조를 분석하여 정확한 쿼리를 생성합니다.
-
입력 파라미터:
{ "database": "string", "collection": "string", "description": "string", "type": "mongodb" | "mongoose", // 기본값: "mongodb" "includeExplanation": boolean // 기본값: true } -
사용 예시:
{ "database": "test", "collection": "users", "description": "오늘 가입한 사용자 찾기", "type": "mongodb" }
설치 및 실행
-
의존성 설치:
npm install -
빌드:
npm run build -
서버 실행:
node dist/index.js "mongodb://localhost:27017"
Claude Desktop 설정
macOS에서 Claude Desktop과 함께 사용하려면 다음과 같이 설정하세요:
-
설정 파일 위치:
~/Library/Application Support/Claude/claude_desktop_config.json -
MCP 서버 설정 추가:
{ "mcp": { "servers": [ { "name": "mongodb", "command": "node /path/to/mongo-mcp-server/dist/index.js mongodb://localhost:27017/test" } ] } } -
Claude Desktop 재시작
개발
프로젝트 구조
src/
├── index.ts # 메인 서버 코드
├── tools/
│ ├── generateErd.ts # ERD 생성 도구
│ └── generateQuery.ts # 쿼리 생성 도구
새로운 도구 추가
src/tools디렉토리에 새 도구 파일 생성- 도구 인터페이스 구현:
export const newTool = { parameters: { // 파라미터 정의 }, async execute(params: any, context: { client: MongoClient }) { // 도구 로직 구현 }, }; src/index.ts에 도구 등록
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。