{"type":"mcp_server","name":"firebase-mcp","description":"This repository provides a Model Context Protocol (MCP) server that enables LLM clients to interact with Firebase services like Authentication, Firestore, and Storage. It allows LLMs to access Firebase data and tools.","category":"Developer Tools","language":"TypeScript","stars":245,"forks":9,"owner":"gannonh","github_url":"https://github.com/gannonh/firebase-mcp","homepage":null,"setup":"## Setup\n\n> The easiest way to install the Firebase MCP server is to simply feed your LLM client (like Cline) the [llms-install.md](./llms-install.md) file.\n\n### 1. Firebase Configuration\n\n- Go to [Firebase Console](https://console.firebase.google.com)\n- Navigate to Project Settings > Service Accounts\n- Click \"Generate new private key\"\n- Save the JSON file securely\n\n### 2. Environment Variables\n\nThe server requires the following environment variables:\n\n- `SERVICE_ACCOUNT_KEY_PATH`: Path to your Firebase service account key JSON file (required)\n- `FIREBASE_STORAGE_BUCKET`: Bucket name for Firebase Storage (optional)\n  - If not provided, defaults to `[projectId].appspot.com`\n\n### 3. Install MCP Server\n\nAdd the server configuration to your MCP settings file:\n\n- Claude Desktop: `~/Library/Application Support/Claude/claude_desktop_config.json`\n- Cursor: `[project root]/.cursor/mcp.json`\n- Roo Code (VS Code Extension): (`~/Library/Application Support/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json`)\n- Cline (VS Code Extension): `~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json`\n\nMCP Servers can be installed manually or at runtime via npx (recommended). How you install determines your configuration:\n\n#### Configure for npx\n\n   ```json\n   {\n     \"firebase-mcp\": {\n       \"command\": \"npx\",\n       \"args\": [\n         \"-y\",\n         \"@gannonh/firebase-mcp\"\n       ],\n       \"env\": {\n         \"SERVICE_ACCOUNT_KEY_PATH\": \"/absolute/path/to/serviceAccountKey.json\",\n         \"FIREBASE_STORAGE_BUCKET\": \"your-project-id.firebasestorage.app\"\n       }\n     }\n   }\n   ```\n\n#### Configure for local installation\n\n   ```json\n   {\n     \"firebase-mcp\": {\n       \"command\": \"node\",\n       \"args\": [\n         \"/absolute/path/to/firebase-mcp/dist/index.js\"\n       ],\n       \"env\": {\n         \"SERVICE_ACCOUNT_KEY_PATH\": \"/absolute/path/to/serviceAccountKey.json\",\n         \"FIREBASE_STORAGE_BUCKET\": \"your-project-id.firebasestorage.app\"\n       }\n     }\n   }\n   ```\n\n#### Manual Installation\n\n##### Install Dependencies\n\n   ```bash\n   git clone https://github.com/gannonh/firebase-mcp\n   cd firebase-mcp\n   npm install\n   ```\n\n##### Build the Project\n\n   ```bash\n   npm run build\n   ```\n\n### Test your Installation\n\nTo make sure everything is working, simply prompt your client: `Please run through and test all of your Firebase MCP tools.`","tools":"## Available Tools\n\n1.  `auth_get_user` (Get user details by ID or email)\n2.  `firestore_add_document` (Add a document to a collection)\n3.  `firestore_list_collections` (List available collections)\n4.  `firestore_list_documents` (List documents with optional filtering)\n5.  `firestore_get_document` (Get a specific document)\n6.  `firestore_update_document` (Update an existing document)\n7.  `firestore_delete_document` (Delete a document)\n8.  `storage_list_files` (List files in a directory)\n9.  `storage_get_file_info` (Get file metadata and download URL)","faq":null,"created_at":"2025-03-08T21:00:09+00:00","updated_at":"2025-03-28T20:54:29+00:00","source_url":"https://model-context-protocol.com/servers/firebase-llm-model-context-protocol","related_articles":[]}