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 Advanced MCP
Advanced MCP (Model Context Protocol) server for Firebase Firestore, allowing large language models like Claude to fully interact with your Firebase databases.
✨ Features
📝 Full Firestore support : CRUD, compound queries, multiple filters
⚡ Advanced operations : Transactions, atomic operations, batch updates
🔄 Special data types : GeoPoint, document references, timestamps
⏱️ TTL Management : Time-To-Live Configuration for Documents
🔍 Smart Missing Index Detection : Automatic instructions to create the necessary indexes
🎯 Advanced search : Queries on collection groups, complex filters
Related MCP server: MCP TapData Server
📋 Prerequisites
Node.js >= 16.0.0
A Firebase project with Firestore enabled
A Firebase service account key (JSON file)
🚀 Installation
Via npm
Via GitHub
🔧 Configuration
Get your Firebase service account key :
Go to the Firebase console
Select your project
Project Settings > Service Accounts
Generate a new private key and upload the JSON file
Set the environment variable :
🖥️ Use
With npm global
With npx
From the cloned directory
Configuration in Claude
To use this MCP server with Claude, add the following configuration to your claude_desktop_config.json file:
Or for a locally installed version:
🛠️ Available tools
The server provides the following tools to Claude:
Basic operations
firestore_get- Retrieve a documentfirestore_create- Create a new documentfirestore_update- Update an existing documentfirestore_delete- Delete a documentfirestore_query- Run a query with filtersfirestore_list_collections- List available collections
Advanced queries
firestore_collection_group_query- Collection group queryfirestore_composite_query- Query with multiple filters and sortsfirestore_count_documents- Count documents without retrieving everything
Special Types and Advanced Features
firestore_special_data_types- Manage GeoPoints and Referencesfirestore_set_ttl- Configure automatic document expirationfirestore_transaction- Execute a transaction consisting of multiple operationsfirestore_batch- Execute batch operationsfirestore_field_operations- Atomic operations (increment, arrayUnion, etc.)firestore_full_text_search- Full text search in documents
📝 Examples
Retrieve a document
Create a document with reference to another document
Configure TTL on a document
Run a query with multiple filters
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
👨🏽💻 Author
Diez7lm
🙏 Acknowledgments
🦾 Contribution
Contributions are welcome! Feel free to submit a pull request or report issues via GitHub issues.
📚 Additional documentation
For more information on using Firestore with Firebase, see the official Firebase documentation .
To learn more about the Model Context Protocol (MCP) and its use with Claude, see the Anthropic documentation .