Firebase MCP Server
MCP server for inspecting Firebase Emulator Firestore and function logs.
Setup
npm install
npm run build
Config
Copy .env.example to .env and adjust:
FIRESTORE_EMULATOR_HOST=localhost:8080
FIREBASE_PROJECT_ID=demo-project
FIREBASE_EMULATOR_HUB=localhost:4000
Usage with Claude Desktop
Add to claude_desktop_config.json:
{
"mcpServers": {
"firebase": {
"command": "node",
"args": ["/path/to/firebase_mcp_server/dist/index.js"],
"env": {
"FIRESTORE_EMULATOR_HOST": "localhost:8080",
"FIREBASE_PROJECT_ID": "your-project-id",
"FIREBASE_EMULATOR_HUB": "localhost:4000"
}
}
}
}
Tools
| Tool | Description |
|---|---|
list_collections |
List top-level Firestore collections |
list_subcollections |
List subcollections of a document |
list_documents |
List documents in a collection |
get_document |
Get a single document by path |
query_collection |
Query with filters, ordering, limit |
get_function_logs |
Get function logs with grep-style filtering |
get_function_logs options
pattern- Regex to filter log messageslevel- DEBUG/INFO/WARN/ERRORfunctionName- Filter by function namelimit- Max entries (default 50)since- ISO timestamp cutoff
Tools 6
list_collectionsList top-level Firestore collectionslist_subcollectionsList subcollections of a documentlist_documentsList documents in a collectionget_documentGet a single document by pathquery_collectionQuery with filters, ordering, limitget_function_logsGet function logs with grep-style filteringEnvironment Variables
FIRESTORE_EMULATOR_HOSTrequiredHost and port for the Firestore emulatorFIREBASE_PROJECT_IDrequiredThe Firebase project IDFIREBASE_EMULATOR_HUBrequiredHost and port for the Firebase emulator hub