Firebase
About
Enables Firebase Authentication, Firestore, and Storage operations for developers building applications that require seamless backend service integration.
Details
- Repository
- gannonh/firebase-mcp
- License
- MIT
Explore
- Firestore documents: add, list, get, update, delete
- Firestore collections: list root collections and query collection groups
- Storage files: list, get metadata, upload from content or URL
- Authentication: get user by ID or email
- HTTP transport with session management for multiple clients
- Optional file logging for debugging
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
FirebaseCommand (node, npx, python, etc.)npxArguments-
Argument 1
-y -
Argument 2
@gannonh/firebase-mcp
Environment-
FIREBASE_STORAGE_BUCKET
your-project-id.firebasestorage.app -
SERVICE_ACCOUNT_KEY_PATH
/absolute/path/to/serviceAccountKey.json
Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
-
Argument 1
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
- Firebase project with service account credentials
- Node.js environment
Add the server configuration to your MCP settings file:
- Claude Desktop: ~/Library/Application Support/Claude/claude_desktop_config.json
- Augment: ~/Library/Application Support/Code/User/settings.json
- Cursor: [project root]/.cursor/mcp.json
MCP Servers can be installed manually or at runtime via npx (recommended). How you install determines your configuration:
{
"firebase-mcp": {
"command": "npx",
"args": [
"-y",
"@gannonh/firebase-mcp"
],
"env": {
"SERVICE_ACCOUNT_KEY_PATH": "/absolute/path/to/serviceAccountKey.json",
"FIREBASE_STORAGE_BUCKET": "your-project-id.firebasestorage.app"
}
}
}
{
"firebase-mcp": {
"command": "node",
"args": [
"/absolute/path/to/firebase-mcp/dist/index.js"
],
"env": {
"SERVICE_ACCOUNT_KEY_PATH": "/absolute/path/to/serviceAccountKey.json",
"FIREBASE_STORAGE_BUCKET": "your-project-id.firebasestorage.app"
}
}
}
Ask your AI client: "Please test all Firebase MCP tools."
1. Go to Firebase Console → Project Settings → Service Accounts
2. Click "Generate new private key"
3. Save the JSON file securely
firestore_add_document
Add a document to a collection. Parameters: collection (string), data (object)
firestore_list_documents
List documents with filtering. Parameters: collection (string)
firestore_get_document
Get a specific document. Parameters: collection (string), id (string)
firestore_update_document
Update an existing document. Parameters: collection (string), id (string), data (object)
firestore_delete_document
Delete a document. Parameters: collection (string), id (string)
firestore_list_collections
List root collections. Parameters: None
firestore_query_collection_group
Query across subcollections. Parameters: collectionId (string)
storage_list_files
List files in a directory. Parameters: None (optional: directoryPath (string))
storage_get_file_info
Get file metadata and URL. Parameters: filePath (string)
storage_upload
Upload file from content. Parameters: filePath (string), content (string)
storage_upload_from_url
Upload file from URL. Parameters: filePath (string), url (string)
auth_get_user
Get user by ID or email. Parameters: identifier (string)
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"firebase": {
"env": {
"FIREBASE_STORAGE_BUCKET": "your-project-id.firebasestorage.app",
"SERVICE_ACCOUNT_KEY_PATH": "/absolute/path/to/serviceAccountKey.json"
},
"args": [
"-y",
"@gannonh/firebase-mcp"
],
"command": "npx"
}
}
}
Linux
{
"env": {
"FIREBASE_STORAGE_BUCKET": "your-project-id.firebasestorage.app",
"SERVICE_ACCOUNT_KEY_PATH": "/absolute/path/to/serviceAccountKey.json"
},
"args": [
"-y",
"@gannonh/firebase-mcp"
],
"command": "npx"
}
Macos
{
"env": {
"FIREBASE_STORAGE_BUCKET": "your-project-id.firebasestorage.app",
"SERVICE_ACCOUNT_KEY_PATH": "/absolute/path/to/serviceAccountKey.json"
},
"args": [
"-y",
"@gannonh/firebase-mcp"
],
"command": "npx"
}
Windows
{
"env": {
"FIREBASE_STORAGE_BUCKET": "your-project-id.firebasestorage.app",
"SERVICE_ACCOUNT_KEY_PATH": "/absolute/path/to/serviceAccountKey.json"
},
"args": [
"/c",
"npx",
"-y",
"@gannonh/firebase-mcp"
],
"command": "cmd"
}

<a href="https://glama.ai/mcp/servers/x4i8z2xmrq">
</a>
Overview
Firebase MCP enables AI assistants to work directly with Firebase services, including:
- Firestore: Document database operations
- Storage: File management with robust upload capabilities
- Authentication: User management and verification
The server works with MCP client applicatios such as Claude Desktop, Augment Code, VS Code, and Cursor.
> ⚠️ Known Issue: The firestore_list_collections tool may return a Zod validation error in the client logs. This is an erroneous validation error in the MCP SDK, as our investigation confirmed no boolean values are present in the response. Despite the error message, the query still works correctly and returns the proper collection data. This is a log-level error that doesn't affect functionality.
⚡ Quick Start
Prerequisites
- Firebase project with service account credentials - Node.js environment1. Install MCP Server
Add the server configuration to your MCP settings file:
- Claude Desktop: ~/Library/Application Support/Claude/claude_desktop_config.json
- Augment: ~/Library/Application Support/Code/User/settings.json
- Cursor: [project root]/.cursor/mcp.json
MCP Servers can be installed manually or at runtime via npx (recommended). How you install determines your configuration:
Configure for npx (recommended)
{
"firebase-mcp": {
"command": "npx",
"args": [
"-y",
"@gannonh/firebase-mcp"
],
"env": {
"SERVICE_ACCOUNT_KEY_PATH": "/absolute/path/to/serviceAccountKey.json",
"FIREBASE_STORAGE_BUCKET": "your-project-id.firebasestorage.app"
}
}
}
Configure for local installation
{
"firebase-mcp": {
"command": "node",
"args": [
"/absolute/path/to/firebase-mcp/dist/index.js"
],
"env": {
"SERVICE_ACCOUNT_KEY_PATH": "/absolute/path/to/serviceAccountKey.json",
"FIREBASE_STORAGE_BUCKET": "your-project-id.firebasestorage.app"
}
}
}
2. Test the Installation
Ask your AI client: "Please test all Firebase MCP tools."
🛠️ Setup & Configuration
1. Firebase Configuration
1. Go to Firebase Console → Project Settings → Service Accounts
2. Click "Generate new private key"
3. Save the JSON file securely
2. Environment Variables
Required
-SERVICE_ACCOUNT_KEY_PATH: Path to your Firebase service account key JSON (required)
Optional
-FIREBASE_STORAGE_BUCKET: Bucket name for Firebase Storage (defaults to [projectId].appspot.com)
- MCP_TRANSPORT: Transport type to use (stdio or http) (defaults to stdio)
- MCP_HTTP_PORT: Port for HTTP transport (defaults to 3000)
- MCP_HTTP_HOST: Host for HTTP transport (defaults to localhost)
- MCP_HTTP_PATH: Path for HTTP transport (defaults to /mcp)
- DEBUG_LOG_FILE: Enable file logging:
- Set to true to log to ~/.firebase-mcp/debug.log
- Set to a file path to log to a custom location
3. Client Integration
Claude Desktop
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



