Firebase MCP
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Integrations
Provides integration with Firebase services including Authentication for user management and verification, Firestore for document database operations, and Storage for file storage and retrieval
Servidor MCP de Firebase
Descripción general
El Protocolo de Contexto de Modelo (MCP) es un protocolo abierto que permite a las aplicaciones cliente LLM usar herramientas y acceder a fuentes de datos externas. Este servidor MCP permite que cualquier cliente LLM compatible con el protocolo MCP interactúe con los servicios de Firebase, incluyendo:
- Autenticación : gestión y verificación de usuarios
- Firestore : Operaciones de la base de datos de documentos
- Almacenamiento : almacenamiento y recuperación de archivos
El servidor expone los servicios de Firebase a través de herramientas MCP, haciéndolos accesibles a los clientes LLM, incluidos Claude Desktop , Cursor , Roo Code y Cline , mientras manejan la autenticación y la administración de la conexión.
🔥 Novedades en la versión 1.3.0: Consultas de grupos de colecciones
Firebase MCP ahora permite consultar subcolecciones (grupos de colecciones) en Firestore. Esto permite consultar todas las subcolecciones con el mismo nombre, independientemente de su documento principal, lo que facilita la búsqueda en toda la jerarquía de la base de datos con una sola consulta. Ideal para búsquedas entre documentos, feeds de actividad y paneles unificados.
Configuración
La forma más sencilla de instalar el servidor Firebase MCP es simplemente alimentar a su cliente LLM (como Cline) con el archivo llms-install.md .
1. Configuración de Firebase
- Ir a la consola de Firebase
- Vaya a Configuración del proyecto > Cuentas de servicio
- Haga clic en "Generar nueva clave privada".
- Guarde el archivo JSON de forma segura
2. Variables de entorno
El servidor requiere las siguientes variables de entorno:
SERVICE_ACCOUNT_KEY_PATH
: Ruta al archivo JSON de la clave de tu cuenta de servicio de Firebase (obligatorio)FIREBASE_STORAGE_BUCKET
: Nombre del depósito para Firebase Storage (opcional)- Si no se proporciona, el valor predeterminado es
[projectId].appspot.com
- Si no se proporciona, el valor predeterminado es
3. Instalar el servidor MCP
Agregue la configuración del servidor a su archivo de configuración de MCP:
- Escritorio de Claude:
~/Library/Application Support/Claude/claude_desktop_config.json
- Cursor:
[project root]/.cursor/mcp.json
- Código Roo (extensión de VS Code): (
~/Library/Application Support/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json
) - Cline (extensión de VS Code):
~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
Los servidores MCP se pueden instalar manualmente o en tiempo de ejecución mediante npx (recomendado). La instalación determina la configuración:
Configurar para npx
Configurar para instalación local
Instalación manual
Instalar dependencias
Construir el proyecto
Pruebe su instalación
Para asegurarse de que todo esté funcionando, simplemente solicite a su cliente: Please run through and test all of your Firebase MCP tools.
Características
Herramientas de autenticación
auth_get_user
: Obtener detalles del usuario por ID o correo electrónicoCopy
Herramientas de Firestore
firestore_add_document
: Agregar un documento a una colecciónCopyfirestore_list_collections
: Lista de colecciones disponiblesCopyfirestore_list_documents
: Lista de documentos con filtrado opcionalCopyfirestore_get_document
: Obtener un documento específicoCopyfirestore_update_document
: Actualizar un documento existenteCopyfirestore_delete_document
: Eliminar un documentoCopyfirestore_query_collection_group
: Consulta documentos en todas las subcolecciones 🆕Copy
Herramientas de almacenamiento
storage_list_files
: Lista los archivos en un directorioCopystorage_get_file_info
: Obtener metadatos del archivo y URL de descargaCopy
Desarrollo
Edificio
Pruebas
El proyecto utiliza Vitest para las pruebas. Las pruebas pueden ejecutarse en emuladores de Firebase para evitar afectar los datos de producción.
- Instalar emuladores de FirebaseCopy
- Iniciar emuladoresCopy
- Ejecutar pruebasCopy
Arquitectura
El servidor está estructurado en tres componentes principales:
Cada módulo de cliente implementa operaciones de servicio específicas de Firebase y las expone como herramientas MCP.
Contribuyendo
- Bifurcar el repositorio
- Crear una rama de características
- Implementar cambios con pruebas (se requiere una cobertura del 80 % o más para aprobar el flujo de trabajo de CI)
- Enviar una solicitud de extracción
Licencia
Licencia MIT: consulte el archivo de LICENCIA para obtener más detalles
Recursos relacionados
Solución de problemas
Problemas comunes
Error "El depósito especificado no existe"
Si encuentra este error al intentar acceder a Firebase Storage:
- Comprueba que tu proyecto de Firebase tenga habilitado el almacenamiento
- Vaya a la consola de Firebase
- Navegar hasta Almacenamiento
- Complete la configuración inicial si aún no lo ha hecho
- Verifique el nombre del depósito correcto
- El nombre del depósito predeterminado suele ser
[projectId].appspot.com
- Algunos proyectos usan
[projectId].firebasestorage.app
en su lugar - Puede encontrar el nombre de su depósito en la consola de Firebase en Almacenamiento
- El nombre del depósito predeterminado suele ser
- Establezca la variable de entorno
FIREBASE_STORAGE_BUCKET
- Agregue el nombre de depósito correcto a su configuración de MCP
- Ejemplo:
"FIREBASE_STORAGE_BUCKET": "your-project-id.firebasestorage.app"
Error "Firebase no se ha inicializado"
Si ve este error:
- Verifique la ruta de la clave de su cuenta de servicio
- Asegúrese de que la ruta en
SERVICE_ACCOUNT_KEY_PATH
sea correcta y absoluta - Compruebe que el archivo existe y es legible
- Asegúrese de que la ruta en
- Comprobar los permisos de la cuenta de servicio
- Asegúrese de que la cuenta de servicio tenga los permisos necesarios para los servicios de Firebase que está utilizando
- Para el almacenamiento, la cuenta de servicio necesita el rol de administrador de almacenamiento
Error "Esta consulta requiere un índice compuesto"
Si ve este error al usar firestore_query_collection_group
con filtros o pedidos:
- Siga la URL proporcionada en el mensaje de error para crear el índice requerido
- Una vez creado el índice (lo que puede tardar unos minutos), vuelva a intentar su consulta
- Para consultas complejas con múltiples campos, es posible que necesite crear varios índices
Errores de análisis de JSON
Si ve errores sobre JSON no válido:
- Asegúrese de que no haya declaraciones
console.log
en el código- Todos los registros deben usar
console.error
para evitar interferir con la comunicación JSON - El protocolo MCP utiliza stdout para la comunicación JSON
- Todos los registros deben usar
- Comprueba si hay errores de sintaxis en tus solicitudes
- Verifique que todos los parámetros estén formateados correctamente
- Compruebe si hay errores tipográficos en los nombres de los campos
You must be authenticated.
Tools
El servidor MCP de Firebase proporciona una interfaz estandarizada para interactuar con los servicios de Firebase, incluidos Firebase Authentication, Firestore y Firebase Storage.
- Overview
- 🔥 New in v1.3.0: Collection Group Queries
- Setup
- Features
- Development
- Contributing
- License
- Related Resources
- Troubleshooting