Firebase MCPFirebase MCP server for Claude Code, Cursor, Copilot and five more AI agents. Connect Firebase to Claude, Copilot, Cursor, Codex, Gemini, Windsurf, Continue.dev and Cline. One extension, 8 agents, no config files to edit.
Quick Start
PrerequisitesYou need one of these (the wizard will guide you):
Option A: OAuth 2.0 (Browser Login), recommended
Option B: Application Default Credentials
Option C: Service Account Key
Set firebaseMcp.projectId to your Firebase project ID, or pass Available Tools (8)
Firebase Admin (
|
| Action | Needs confirm: true |
|---|---|
create_document(path, data) |
No |
set_document(path, data, merge?) |
Yes |
update_document(path, data) |
No |
delete_document(path) |
Yes |
create_user(email?, password?, display_name?, phone?, email_verified?) |
No |
update_user(uid, email?, password?, display_name?, phone?, email_verified?) |
No |
disable_user(uid, disabled?) |
No |
delete_user(uid) |
Yes |
set_document replaces the whole document, so it needs confirm: true unless merge is true. create_document never overwrites.
Safety
Actions that delete, remove, replace or publish need confirm: true in their params. Without it the server changes nothing and returns a warning, so your AI agent has to ask you and then call again with confirm: true.
Supported AI Agents
The extension auto-registers with every AI agent it detects:
| Agent | How It Registers | Config File |
|---|---|---|
| VS Code Copilot | VS Code API (automatic) | -- |
| Claude Code | ~/.claude.json |
JSON |
| Cursor | ~/.cursor/mcp.json |
JSON |
| OpenAI Codex | ~/.codex/config.toml |
TOML |
| Google Gemini | ~/.gemini/settings.json |
JSON |
| Windsurf | ~/.codeium/windsurf/mcp_config.json |
JSON |
| Continue.dev | ~/.continue/config.yaml |
YAML |
| Cline | VS Code globalStorage | JSON |
You can toggle individual agents on/off in Settings > search firebaseMcp.agents.
Settings
| Setting | Default | Description |
|---|---|---|
firebaseMcp.authMethod |
"oauth" |
Auth method: oauth, adc, serviceAccount |
firebaseMcp.projectId |
"" |
Firebase project ID used when a tool call does not name one. |
firebaseMcp.agents.* |
true |
Per-agent registration toggles |
firebaseMcp.registrationScope |
"global" |
Global or workspace registration |
firebaseMcp.autoStart |
true |
Auto-start server on VS Code launch |
firebaseMcp.serverLogLevel |
"info" |
Server log verbosity |
Commands
Open the Command Palette (Cmd+Shift+P / Ctrl+Shift+P) and search for:
| Command | What It Does |
|---|---|
Firebase MCP: Setup Authentication |
Run the setup wizard |
Firebase MCP: Register with AI Agents |
Re-register with all detected agents |
Firebase MCP: Show Status |
Show auth method and server state |
Firebase MCP: Restart MCP Server |
Restart the background MCP server |
Firebase MCP: Check Authentication Status |
Verify credentials are valid |
Firebase MCP: View Server Logs |
Open the output channel for debugging |
Firebase MCP: Remove from All Agents |
Clean up all agent registrations |
Troubleshooting
"Firebase MCP: Setup" in the status bar
Your credentials aren't configured. Click the status bar item or run Firebase MCP: Setup Authentication.
"Permission Denied" errors
Your credentials don't have access to the requested data. Make sure the Cloud Firestore API and the Identity Toolkit API are enabled in your Google Cloud project.
Server keeps crashing
Run Firebase MCP: View Server Logs to see the error. Common causes:
- Expired credentials: run the setup wizard again
- Node.js not found: install Node.js 22 or newer
Uninstalling cleanly
Before uninstalling, run Firebase MCP: Remove from All Agents to clean up config files.
Privacy
This extension:
- Does NOT collect telemetry or send data to third parties
- Communicates only with Google APIs using your own credentials
- Stores credentials in VS Code's built-in SecretStorage (encrypted, per-user)
- OAuth refresh tokens never leave your machine
Links
By Renzo Johnson | Published by mercurial