Skip to main content
Glama
diez7lm

Firestore Advanced MCP

by diez7lm

🔥 Firestore Advanced MCP

VersionLicenseNode

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 Firebase Server

📋 Prerequisites

  • Node.js >= 16.0.0

  • A Firebase project with Firestore enabled

  • A Firebase service account key (JSON file)

🚀 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. 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

  2. Set the environment variable :

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

🖥️ Use

With npm global

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

With npx

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

From the cloned directory

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

Configuration in Claude

To use this MCP server with Claude, add the following configuration to your claude_desktop_config.json file:

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

Or for a locally installed version:

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

🛠️ Available tools

The server provides the following tools to Claude:

Basic operations

  • firestore_get - Retrieve a document

  • firestore_create - Create a new document

  • firestore_update - Update an existing document

  • firestore_delete - Delete a document

  • firestore_query - Run a query with filters

  • firestore_list_collections - List available collections

Advanced queries

  • firestore_collection_group_query - Collection group query

  • firestore_composite_query - Query with multiple filters and sorts

  • firestore_count_documents - Count documents without retrieving everything

Special Types and Advanced Features

  • firestore_special_data_types - Manage GeoPoints and References

  • firestore_set_ttl - Configure automatic document expiration

  • firestore_transaction - Execute a transaction consisting of multiple operations

  • firestore_batch - Execute batch operations

  • firestore_field_operations - Atomic operations (increment, arrayUnion, etc.)

  • firestore_full_text_search - Full text search in documents

📝 Examples

Retrieve a document

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

Create a document with reference to another document

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

Configure TTL on a document

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

Run a query with multiple filters

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

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

👨🏽‍💻 Author

  • Diez7lm

🙏 Acknowledgments

  • Anthropic for Claude and the Model Context Protocol

  • Firebase for Firestore and Developer Tools

🦾 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 .

A
license - permissive license
Not graded
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol server that enables Claude AI to interact with Xano databases, providing comprehensive database operations, file management, and request history tracking through a standardized interface.
    1
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI agents and LLMs to securely interact with Firestore databases through complete CRUD operations (get, set, add, delete, query) while respecting Firestore Security Rules via the Firebase Client SDK.
    1
    MIT

View all related MCP servers

Related MCP Connectors

  • A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…

  • A Model Context Protocol server for Wix AI tools

  • Butterbase MCP server — manage your backend: schemas, auth, functions, storage, RAG, deploys.

View all MCP Connectors

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