diez7lm firestore advanced mcp

diez7lm firestore advanced mcp avatar

by diez7lm

Serveur MCP avancé pour Firebase Firestore avec support pour toutes les fonctionnalités avancées

What is diez7lm firestore advanced mcp

🔥 Firestore Advanced MCP

!Version !License !Node

Serveur MCP (Model Context Protocol) avancé pour Firebase Firestore, permettant aux grands modèles de langage comme Claude d'interagir de façon complète avec vos bases de données Firebase.

✨ Fonctionnalités

  • 📝 Support complet de Firestore : CRUD, requêtes composées, filtres multiples
  • Opérations avancées : Transactions, opérations atomiques, mise à jour par lot
  • 🔄 Types de données spéciaux : GeoPoint, références de documents, horodatages
  • ⏱️ Gestion TTL : Configuration du Time-To-Live pour les documents
  • 🔍 Détection intelligente des index manquants : Instructions automatiques pour créer les index nécessaires
  • 🎯 Recherche avancée : Requêtes sur groupes de collections, filtres complexes

📋 Prérequis

  • Node.js >= 16.0.0
  • Un projet Firebase avec Firestore activé
  • Une clé de compte de service Firebase (fichier JSON)

🚀 Installation

Via npm

npm install -g firestore-advanced-mcp

Via GitHub

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

🔧 Configuration

  1. Obtenir votre clé de compte de service Firebase :

    • Allez sur la console Firebase
    • Sélectionnez votre projet
    • Paramètres du projet > Comptes de service
    • Générez une nouvelle clé privée et téléchargez le fichier JSON
  2. Définir la variable d'environnement :

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

🖥️ Utilisation

Avec npm global

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

Avec npx

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

Depuis le répertoire cloné

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

Configuration dans Claude

Pour utiliser ce serveur MCP avec Claude, ajoutez la configuration suivante dans votre fichier claude_desktop_config.json :

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

Ou pour une version installée localement :

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

🛠️ Outils disponibles

Le serveur fournit les outils suivants à Claude :

Opérations de base

  • firestore_get - Récupérer un document
  • firestore_create - Créer un nouveau document
  • firestore_update - Mettre à jour un document existant
  • firestore_delete - Supprimer un document
  • firestore_query - Exécuter une requête avec filtres
  • firestore_list_collections - Lister les collections disponibles

Requêtes avancées

  • firestore_collection_group_query - Requête sur groupes de collections
  • firestore_composite_query - Requête avec filtres et tris multiples
  • firestore_count_documents - Compter les documents sans tout récupérer

Types spéciaux et fonctionnalités avancées

  • firestore_special_data_types - Gérer les GeoPoints et références
  • firestore_set_ttl - Configurer l'expiration automatique des documents
  • firestore_transaction - Exécuter une transaction composée de multiples opérations
  • firestore_batch - Exécuter des opérations par lot
  • firestore_field_operations - Opérations atomiques (increment, arrayUnion, etc.)
  • firestore_full_text_search - Recherche textuelle dans les documents

📝 Exemples

Récupérer un document

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

Créer un document avec référence à un autre document

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

Configurer TTL sur un document

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

Exécuter une requête avec filtres multiples

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

📄 Licence

Ce projet est sous licence MIT - voir le fichier LICENSE pour plus de détails.

👨🏽‍💻 Auteur

  • Diez7lm

🙏 Remerciements

  • Anthropic pour Claude et le Model Context Protocol
  • Firebase pour Firestore et les outils de développement

🦾 Contribution

Les contributions sont les bienvenues ! N'hésitez pas à soumettre une pull request ou à signaler des problèmes via les issues GitHub.

📚 Documentation supplémentaire

Pour plus d'informations sur l'utilisation de Firestore avec Firebase, consultez la documentation officielle de Firebase.

Pour en savoir plus sur le Model Context Protocol (MCP) et son utilisation avec Claude, consultez la documentation d'Anthropic.

Leave a Comment

Frequently Asked Questions

What is MCP?

MCP (Model Context Protocol) is an open protocol that standardizes how applications provide context to LLMs. Think of MCP like a USB-C port for AI applications, providing a standardized way to connect AI models to different data sources and tools.

What are MCP Servers?

MCP Servers are lightweight programs that expose specific capabilities through the standardized Model Context Protocol. They act as bridges between LLMs like Claude and various data sources or services, allowing secure access to files, databases, APIs, and other resources.

How do MCP Servers work?

MCP Servers follow a client-server architecture where a host application (like Claude Desktop) connects to multiple servers. Each server provides specific functionality through standardized endpoints and protocols, enabling Claude to access data and perform actions through the standardized protocol.

Are MCP Servers secure?

Yes, MCP Servers are designed with security in mind. They run locally with explicit configuration and permissions, require user approval for actions, and include built-in security features to prevent unauthorized access and ensure data privacy.

Related MCP Servers

chrisdoc hevy mcp avatar

chrisdoc hevy mcp

mcp
sylphlab pdf reader mcp avatar

sylphlab pdf reader mcp

An MCP server built with Node.js/TypeScript that allows AI agents to securely read PDF files (local or URL) and extract text, metadata, or page counts. Uses pdf-parse.

pdf-parsetypescriptnodejs
aashari mcp server atlassian bitbucket avatar

aashari mcp server atlassian bitbucket

Node.js/TypeScript MCP server for Atlassian Bitbucket. Enables AI systems (LLMs) to interact with workspaces, repositories, and pull requests via tools (list, get, comment, search). Connects AI directly to version control workflows through the standard MCP interface.

atlassianrepositorymcp
aashari mcp server atlassian confluence avatar

aashari mcp server atlassian confluence

Node.js/TypeScript MCP server for Atlassian Confluence. Provides tools enabling AI systems (LLMs) to list/get spaces & pages (content formatted as Markdown) and search via CQL. Connects AI seamlessly to Confluence knowledge bases using the standard MCP interface.

atlassianmcpconfluence
prisma prisma avatar

prisma prisma

Next-generation ORM for Node.js & TypeScript | PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB and CockroachDB

cockroachdbgomcp
Zzzccs123 mcp sentry avatar

Zzzccs123 mcp sentry

mcp sentry for typescript sdk

mcptypescript
zhuzhoulin dify mcp server avatar

zhuzhoulin dify mcp server

mcp
zhongmingyuan mcp my mac avatar

zhongmingyuan mcp my mac

mcp
zhixiaoqiang desktop image manager mcp avatar

zhixiaoqiang desktop image manager mcp

MCP 服务器,用于管理桌面图片、查看详情、压缩、移动等(完全让Trae实现)

mcp
zhixiaoqiang antd components mcp avatar

zhixiaoqiang antd components mcp

An MCP service for Ant Design components query | 一个减少 Ant Design 组件代码生成幻觉的 MCP 服务,包含系统提示词、组件文档、API 文档、代码示例和更新日志查询

designantdapi

Submit Your MCP Server

Share your MCP server with the community

Submit Now