Firestore Advanced MCP

by diez7lm
Verified

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Provides comprehensive access to Firestore databases, enabling CRUD operations, complex queries with multiple filters, transactions, batch operations, special data types handling, TTL management, and advanced search capabilities across collections.

🔥 Firestore 고급 MCP

Claude와 같은 대규모 언어 모델이 Firebase 데이터베이스와 완벽하게 상호 작용할 수 있도록 하는 Firebase Firestore용 고급 MCP(Model Context Protocol) 서버입니다.

✨ 특징

  • 📝 전체 Firestore 지원 : CRUD, 복합 쿼리, 다중 필터
  • 고급 작업 : 트랜잭션, 원자 작업, 일괄 업데이트
  • 🔄 특수 데이터 유형 : GeoPoint, 문서 참조, 타임스탬프
  • ⏱️ TTL 관리 : 문서의 TTL(Time-To-Live) 구성
  • 🔍 스마트 누락 인덱스 감지 : 필요한 인덱스를 생성하기 위한 자동 지침
  • 🎯 고급 검색 : 컬렉션 그룹, 복잡한 필터에 대한 쿼리

📋 필수 조건

  • 노드.js >= 16.0.0
  • Firestore가 활성화된 Firebase 프로젝트
  • Firebase 서비스 계정 키(JSON 파일)

🚀 설치

npm을 통해

지엑스피1

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 global을 사용하면

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

Claude의 구성

Claude와 함께 이 MCP 서버를 사용하려면 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 - GeoPoints 및 참조 관리
  • firestore_set_ttl - 자동 문서 만료 구성
  • firestore_transaction - 여러 작업으로 구성된 트랜잭션을 실행합니다.
  • firestore_batch - 일괄 작업 실행
  • firestore_field_operations - 원자적 연산(증가, 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 라이선스에 따라 라이선스가 부여되었습니다. 자세한 내용은 라이선스 파일을 참조하세요.

👨🏽‍💻 저자

  • 디에즈7엘엠

🙏 감사의 말

  • Claude와 모델 컨텍스트 프로토콜을 위한 인류학적
  • Firestore 및 개발자 도구용 Firebase

🦾 기여

기여를 환영합니다! GitHub 이슈를 통해 풀 리퀘스트를 제출하거나 이슈를 보고해 주시기 바랍니다.

📚 추가 문서

Firebase와 함께 Firestore를 사용하는 방법에 대한 자세한 내용은 공식 Firebase 문서를 참조하세요.

MCP(모델 컨텍스트 프로토콜)와 Claude에서의 사용법에 대해 자세히 알아보려면 Anthropic 설명서를 참조하세요.

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

Claude와 같은 대규모 언어 모델이 Firebase Firestore 데이터베이스와 포괄적인 상호작용을 수행하고 전체 CRUD 작업, 복잡한 쿼리, 트랜잭션 및 TTL 관리와 같은 고급 기능을 지원할 수 있도록 하는 모델 컨텍스트 프로토콜 서버입니다.

  1. ✨ Fonctionnalités
    1. 📋 Prérequis
      1. 🚀 Installation
        1. Via npm
        2. Via GitHub
      2. 🔧 Configuration
        1. 🖥️ Utilisation
          1. Avec npm global
          2. Avec npx
          3. Depuis le répertoire cloné
          4. Configuration dans Claude
        2. 🛠️ Outils disponibles
          1. Opérations de base
          2. Requêtes avancées
          3. Types spéciaux et fonctionnalités avancées
        3. 📝 Exemples
          1. Récupérer un document
          2. Créer un document avec référence à un autre document
          3. Configurer TTL sur un document
          4. Exécuter une requête avec filtres multiples
        4. 📄 Licence
          1. 👨🏽‍💻 Auteur
            1. 🙏 Remerciements
              1. 🦾 Contribution
                1. 📚 Documentation supplémentaire
                  ID: idmcv2gi9b