Skip to main content
Glama

Firestore Advanced MCP

by diez7lm

🔥 Firestore アドバンス MCP

バージョンライセンスノード

Firebase Firestore 用の高度な MCP (モデル コンテキスト プロトコル) サーバー。Claude のような大規模な言語モデルが Firebase データベースと完全に対話できるようになります。

✨ 特徴

  • 📝 Firestore の完全サポート: CRUD、複合クエリ、複数のフィルター

  • 高度な操作: トランザクション、アトミック操作、バッチ更新

  • 🔄特殊なデータ型: GeoPoint、ドキュメント参照、タイムスタンプ

  • ⏱️ TTL管理:ドキュメントのTTL設定

  • 🔍スマートな欠落インデックス検出:必要なインデックスを作成するための自動指示

  • 🎯高度な検索: コレクショングループ、複雑なフィルターのクエリ

Related MCP server: MCP TapData Server

📋 前提条件

  • Node.js >= 16.0.0

  • Firestore が有効になっている Firebase プロジェクト

  • Firebase サービス アカウント キー (JSON ファイル)

🚀 インストール

npm経由

npm install -g firestore-advanced-mcp

GitHub経由

git clone https://github.com/diez7lm/firestore-advanced-mcp.git cd firestore-advanced-mcp npm install

🔧 構成

  1. Firebase サービス アカウント キーを取得します

    • Firebaseコンソールへ移動

    • プロジェクトを選択

    • プロジェクト設定 > サービスアカウント

    • 新しい秘密鍵を生成し、JSONファイルをアップロードします

  2. 環境変数を設定します:

export SERVICE_ACCOUNT_KEY_PATH="/chemin/vers/votre/serviceAccountKey.json"

🖥️ 使用

npmグローバル

SERVICE_ACCOUNT_KEY_PATH="/chemin/vers/votre/serviceAccountKey.json" firestore-advanced-mcp

npxの場合

SERVICE_ACCOUNT_KEY_PATH="/chemin/vers/votre/serviceAccountKey.json" npx firestore-advanced-mcp

クローンしたディレクトリから

SERVICE_ACCOUNT_KEY_PATH="/chemin/vers/votre/serviceAccountKey.json" node index.js

クロードでの構成

この MCP サーバーを Claude で使用するには、 claude_desktop_config.jsonファイルに次の構成を追加します。

"firebase-mcp": { "command": "npx", "args": ["firestore-advanced-mcp"], "env": { "SERVICE_ACCOUNT_KEY_PATH": "/chemin/vers/votre/serviceAccountKey.json" } }

または、ローカルにインストールされたバージョンの場合:

"firebase-mcp": { "command": "node", "args": ["/chemin/vers/firestore-advanced-mcp/index.js"], "env": { "SERVICE_ACCOUNT_KEY_PATH": "/chemin/vers/votre/serviceAccountKey.json" } }

🛠️ 利用可能なツール

サーバーは、Claude に次のツールを提供します。

基本操作

  • firestore_get - ドキュメントを取得する

  • firestore_create - 新しいドキュメントを作成する

  • firestore_update - 既存のドキュメントを更新する

  • firestore_delete - ドキュメントを削除する

  • firestore_query - フィルターを使用してクエリを実行する

  • firestore_list_collections - 利用可能なコレクションを一覧表示する

高度なクエリ

  • firestore_collection_group_query - コレクショングループクエリ

  • firestore_composite_query - 複数のフィルターと並べ替えを含むクエリ

  • firestore_count_documents - すべてを取得せずにドキュメントをカウントする

特殊なタイプと高度な機能

  • firestore_special_data_types - ジオポイントと参照を管理する

  • firestore_set_ttl - ドキュメントの自動有効期限を設定する

  • firestore_transaction - 複数の操作からなるトランザクションを実行する

  • firestore_batch - バッチ操作を実行する

  • firestore_field_operations - アトミック操作 (increment、arrayUnion など)

  • firestore_full_text_search - ドキュメント内の全文検索

📝 例

ドキュメントを取得する

{ "collection": "users", "id": "user123" }

別の文書を参照して文書を作成する

{ "collection": "orders", "data": { "product": "Laptop", "price": 999.99, "fields": [ { "fieldPath": "user", "type": "reference", "value": "users/user123" } ] } }

ドキュメントのTTLを設定する

{ "collection": "temporaryData", "id": "session123", "expiresIn": 86400000, "fieldName": "expires_at" }

複数のフィルターを使用してクエリを実行する

{ "collection": "products", "filters": [ { "field": "category", "operator": "==", "value": "electronics" }, { "field": "price", "operator": "<", "value": 1000 } ], "orderBy": { "field": "price", "direction": "asc" }, "limit": 10 }

📄 ライセンス

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

👨🏽‍💻 著者

  • ディエズ7lm

🙏 謝辞

🦾 貢献

貢献を歓迎します!お気軽にプル リクエストを送信したり、GitHub の問題から問題を報告してください。

📚 追加ドキュメント

Firebase で Firestore を使用する方法の詳細については、公式の Firebase ドキュメントをご覧ください。

モデル コンテキスト プロトコル (MCP) と Claude での使用の詳細については、 Anthropic のドキュメントを参照してください。

-
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/diez7lm/firestore-advanced-mcp'

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