
Firestore Advanced MCP
A Model Context Protocol server that enables large language models like Claude to perform comprehensive interactions with Firebase Firestore databases, supporting full CRUD operations, complex queries, and advanced features like transactions and TTL management.
README
🔥 Firestore Advanced MCP
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
-
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
-
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 documentfirestore_create
- Créer un nouveau documentfirestore_update
- Mettre à jour un document existantfirestore_delete
- Supprimer un documentfirestore_query
- Exécuter une requête avec filtresfirestore_list_collections
- Lister les collections disponibles
Requêtes avancées
firestore_collection_group_query
- Requête sur groupes de collectionsfirestore_composite_query
- Requête avec filtres et tris multiplesfirestore_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érencesfirestore_set_ttl
- Configurer l'expiration automatique des documentsfirestore_transaction
- Exécuter une transaction composée de multiples opérationsfirestore_batch
- Exécuter des opérations par lotfirestore_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.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.