Firestore MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| FIRESTORE_PROJECT_ID | Yes | Your Firebase project ID (required) | |
| GOOGLE_APPLICATION_CREDENTIALS | No | Path to service account JSON file (optional - for authentication) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| firestore-list-collectionsB | List Firestore collections |
| firestore-get-collectionC | Get documents from a Firestore collection |
| firestore-get-documentC | Get a document from Firestore |
| firestore-create-documentC | Create a new document in Firestore |
| firestore-update-documentC | Update an existing Firestore document |
| firestore-delete-documentC | Delete a document from Firestore |
| firestore-query-collectionC | Query documents in a Firestore collection |
| firestore-list-subcollectionsC | List subcollections of a document |
| firestore-get-collection-by-pathC | Get documents from a collection using full path (supports subcollections) |
| firestore-get-document-by-pathB | Get a document using full path (supports subcollections) |
| firestore-create-document-by-pathC | Create a document in a collection using full path (supports subcollections) |
| firestore-update-document-by-pathC | Update a document using full path (supports subcollections) |
| firestore-delete-document-by-pathB | Delete a document using full path (supports subcollections) |
| firestore-query-collection-by-pathC | Query documents in a collection using full path (supports subcollections) |
| firestore-batch-writeB | Execute multiple write operations in a single atomic batch |
| firestore-batch-readC | Read multiple documents in a single operation |
| firestore-transactionC | Execute a transaction with read and write operations |
| firestore-increment-fieldB | Atomically increment a numeric field value |
| firestore-array-unionC | Add elements to an array field without duplicates |
| firestore-array-removeC | Remove elements from an array field |
| firestore-server-timestampC | Set a field to the server timestamp |
| firestore-delete-fieldC | Delete specific fields from a document |
| firestore-field-value-batchC | Execute multiple field value operations in a batch |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| collections |
TDQS
Scored across 23 tools
Most tools have distinct purposes, but there is some overlap between 'firestore-get-collection' and 'firestore-query-collection' (both retrieve documents from a collection), and between 'firestore-create-document' and 'firestore-create-document-by-path' (both create documents, differing only in path specification). Descriptions clarify these differences, but an agent might occasionally misselect between the overlapping pairs.
All tool names follow a consistent 'firestore-verb-noun' pattern with hyphens, using clear verbs like 'create', 'get', 'update', 'delete', 'list', 'query', and 'increment'. The naming is highly predictable and readable throughout the set.
With 23 tools, the count is borderline high for a database server, potentially feeling heavy. However, it covers both basic CRUD operations and advanced Firestore-specific features like array updates, transactions, and batch operations, which justifies the number but may overwhelm agents.
The tool set provides comprehensive coverage for Firestore operations, including full CRUD lifecycle, batch and transaction support, field-specific updates (e.g., array operations, increments), and path-based variants for subcollections. No obvious gaps exist for typical agent workflows in this domain.