MCP de Firebase
Descripción general
Firebase MCP permite que los asistentes de IA trabajen directamente con los servicios de Firebase, incluidos:
- Firestore : Operaciones de la base de datos de documentos
- Almacenamiento : Gestión de archivos con sólidas capacidades de carga
- Autenticación : gestión y verificación de usuarios
El servidor funciona con aplicaciones cliente MCP como Claude Desktop , Augment Code , VS Code y Cursor .
⚠️ Problema conocido : La herramienta
firestore_list_collections
puede devolver un error de validación de Zod en los registros del cliente. Se trata de un error de validación erróneo en el SDK de MCP, ya que nuestra investigación confirmó que no hay valores booleanos en la respuesta. A pesar del mensaje de error, la consulta sigue funcionando correctamente y devuelve los datos de la colección correctos. Este error afecta al registro y no afecta la funcionalidad.
⚡ Inicio rápido
Prerrequisitos
- Proyecto de Firebase con credenciales de cuenta de servicio
- Entorno Node.js
1. 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
- Aumento:
~/Library/Application Support/Code/User/settings.json
- Cursor:
[project root]/.cursor/mcp.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 (recomendado)
Configurar para instalación local
2. Pruebe la instalación
Pregúntele a su cliente de IA: "Pruebe todas las herramientas MCP de Firebase".
🛠️ Configuración y configuración
1. Configuración de Firebase
- Vaya a Consola de Firebase → 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
Requerido
SERVICE_ACCOUNT_KEY_PATH
: Ruta a la clave JSON de tu cuenta de servicio de Firebase (obligatorio)
Opcional
FIREBASE_STORAGE_BUCKET
: nombre del depósito para Firebase Storage (el valor predeterminado es[projectId].appspot.com
)MCP_TRANSPORT
: Tipo de transporte a utilizar (stdio
ohttp
) (predeterminado astdio
)MCP_HTTP_PORT
: Puerto para transporte HTTP (predeterminado3000
)MCP_HTTP_HOST
: Host para el transporte HTTP (predeterminado enlocalhost
)MCP_HTTP_PATH
: Ruta para el transporte HTTP (predeterminado/mcp
)DEBUG_LOG_FILE
: Habilitar el registro de archivos:- Establezca en
true
para registrar en~/.firebase-mcp/debug.log
- Establezca una ruta de archivo para iniciar sesión en una ubicación personalizada
- Establezca en
3. Integración del cliente
Escritorio de Claude
Editar: ~/Library/Application Support/Claude/claude_desktop_config.json
VS Code / Aumento
Editar: ~/Library/Application Support/Code/User/settings.json
Cursor
Editar: [project root]/.cursor/mcp.json
Referencia de API
Herramientas de Firestore
Herramienta | Descripción | Parámetros requeridos |
---|---|---|
firestore_add_document | Agregar un documento a una colección | collection , data |
firestore_list_documents | Listar documentos con filtrado | collection |
firestore_get_document | Obtener un documento específico | collection , id |
firestore_update_document | Actualizar un documento existente | collection , id , data |
firestore_delete_document | Eliminar un documento | collection , id |
firestore_list_collections | Lista de colecciones raíz | Ninguno |
firestore_query_collection_group | Consulta entre subcolecciones | collectionId |
Herramientas de almacenamiento
Herramienta | Descripción | Parámetros requeridos |
---|---|---|
storage_list_files | Listar archivos en un directorio | Ninguno (opcional: directoryPath ) |
storage_get_file_info | Obtener metadatos y URL del archivo | filePath |
storage_upload | Subir archivo desde el contenido | filePath , content |
storage_upload_from_url | Subir archivo desde URL | filePath , url |
Herramientas de autenticación
Herramienta | Descripción | Parámetros requeridos |
---|---|---|
auth_get_user | Obtener usuario por ID o correo electrónico | identifier |
💻 Guía para desarrolladores
Instalación y construcción
Ejecución de pruebas
Primero, instale e inicie los emuladores de Firebase:
Luego ejecute las pruebas:
Estructura del proyecto
🌐 Transporte HTTP
Firebase MCP ahora admite el transporte HTTP, además del transporte stdio predeterminado. Esto permite ejecutar el servidor como un servicio HTTP independiente al que pueden acceder varios clientes.
Ejecución con transporte HTTP
Para ejecutar el servidor con transporte HTTP:
Configuración del cliente para HTTP
Al utilizar el transporte HTTP, configure su cliente MCP para conectarse al punto final HTTP:
Gestión de sesiones
El transporte HTTP admite la gestión de sesiones, lo que permite que varios clientes se conecten a la misma instancia de servidor. Cada cliente recibe un ID de sesión único que se utiliza para mantener el estado entre solicitudes.
🔍 Solución de problemas
Problemas comunes
Cubo de almacenamiento no encontrado
Si ve el error "El depósito especificado no existe":
- Verificar el nombre de su depósito en Firebase Console → Almacenamiento
- Establezca el nombre de depósito correcto en la variable de entorno
FIREBASE_STORAGE_BUCKET
Error en la inicialización de Firebase
Si ves el error "Firebase no está inicializado":
- Verifique que la ruta de la clave de su cuenta de servicio sea correcta y absoluta
- Asegúrese de que la cuenta de servicio tenga los permisos adecuados para los servicios de Firebase
Índice compuesto requerido
Si recibe el error "Esta consulta requiere un índice compuesto":
- Busque la URL proporcionada en el mensaje de error
- Siga el enlace para crear el índice requerido en Firebase Console
- Vuelva a intentar su consulta después de crear el índice (puede tardar unos minutos)
Error de validación de Zod con firestore_list_collections
Si ve un error de validación de Zod con el mensaje "Objeto esperado, booleano recibido" al usar la herramienta firestore_list_collections
:
⚠️ Problema conocido : La herramienta
firestore_list_collections
puede devolver un error de validación de Zod en los registros del cliente. Se trata de un error de validación erróneo en el SDK de MCP, ya que nuestra investigación confirmó que no hay valores booleanos en la respuesta. A pesar del mensaje de error, la consulta sigue funcionando correctamente y devuelve los datos de la colección correctos. Este error afecta al registro y no afecta la funcionalidad.
Depuración
Habilitar el registro de archivos
Para ayudar a diagnosticar problemas, puede habilitar el registro de archivos:
También puede habilitar el inicio de sesión en la configuración de su cliente MCP:
Visualización de registros en tiempo real
Para ver los registros en tiempo real:
Uso del inspector MCP
El inspector MCP proporciona depuración interactiva:
Formato de respuesta
Ejemplo de respuesta de carga de almacenamiento
Se muestra al usuario como:
🤝 Contribuyendo
- Bifurcar el repositorio
- Crear una rama de características
- Implementar cambios con pruebas (se requiere una cobertura del 80 % o más)
- Enviar una solicitud de extracción
📄 Licencia
Licencia MIT: consulte el archivo de LICENCIA para obtener más detalles
Recursos relacionados
You must be authenticated.
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Tools
El servidor MCP de Firebase proporciona una interfaz estandarizada para interactuar con los servicios de Firebase, incluidos Firebase Authentication, Firestore y Firebase Storage.
- Descripción general
- ⚡ Inicio rápido
- 🛠️ Configuración y configuración
- Referencia de API
- 💻 Guía para desarrolladores
- 🌐 Transporte HTTP
- 🔍 Solución de problemas
- Formato de respuesta
- 🤝 Contribuyendo
- 📄 Licencia
- Recursos relacionados
Related Resources
Related MCP Servers
- AsecurityFlicenseAqualityA server providing a unified interface to interact with Firebase services, including Authentication, Firestore, and Storage.Last updated -97TypeScript
- -securityFlicense-qualityAn MCP server that provides access to Firebase Remote Config, allowing clients to interact with and manage Firebase remote configuration settings through the Model Context Protocol.Last updated -TypeScript
- -securityFlicense-qualityAuto-generated MCP server that enables interaction with the Firebase App Distribution API, allowing users to manage distribution of pre-release app builds to testers through natural language commands.Last updated -Python
- -securityFlicense-qualityAn MCP Server providing access to Google's Firebase API, allowing natural language interaction with Firebase services and resources.Last updated -Python