Firebase MCP Server

Firebase MCP Server

site icon
2025.04.15 82
TypeScript数据管理后端服务数据库开发效率
Firebase MCP Server 是一个基于 Model Context Protocol (MCP) 的开源服务器,它允许支持 MCP 协议的 LLM 客户端应用程序与 Firebase 服务进行交互。该服务器提供了对 Firebase 认证、Firestore 文档数据库和存储服务的访问能力,使得 LLM 客户端能够通过这些服务进行用户管理、数据操作和文件存储。
View on GitHub

Overview

基本能力

产品定位

Firebase MCP Server 是一个中间件,旨在桥接 LLM 客户端与 Firebase 服务之间的交互,提供安全、高效的数据访问和管理能力。

核心功能

  • Authentication: 用户管理工具,包括获取用户详细信息。
  • Firestore: 文档数据库操作工具,支持文档的增删改查、列表查询以及跨子集合查询(Collection Group Queries)。
  • Storage: 文件存储工具,支持文件列表查询和文件元数据获取。

适用场景

  • LLM 客户端需要访问和管理 Firebase 数据时。
  • 开发需要集成 Firebase 服务的自动化工具或应用。
  • 需要进行跨文档或跨集合的数据查询和分析。

工具列表

  • Authentication Tools:
  • auth_get_user: 通过用户 ID 或邮箱获取用户详细信息。
  • Firestore Tools:
  • firestore_add_document: 向集合中添加文档。
  • firestore_list_collections: 列出可用集合。
  • firestore_list_documents: 列出文档,支持过滤。
  • firestore_get_document: 获取特定文档。
  • firestore_update_document: 更新现有文档。
  • firestore_delete_document: 删除文档。
  • firestore_query_collection_group: 跨所有子集合查询文档。
  • Storage Tools:
  • storage_list_files: 列出目录中的文件。
  • storage_get_file_info: 获取文件元数据和下载 URL。

常见问题解答

  • "The specified bucket does not exist" Error: 检查 Firebase 存储是否启用,确认存储桶名称是否正确。
  • "Firebase is not initialized" Error: 确认服务账户密钥路径正确且文件可读,检查服务账户权限。
  • "This query requires a composite index" Error: 根据错误提示创建所需的复合索引。
  • JSON Parsing Errors: 确保代码中没有 console.log 语句干扰 JSON 通信,检查请求参数格式。

使用教程

使用依赖

  • 需要安装 Node.js 和 npm。
  • 需要 Firebase 服务账户密钥文件。

安装教程

  1. Firebase 配置:
  2. 访问 Firebase Console
  3. 生成并下载服务账户密钥 JSON 文件。

  4. 环境变量设置:

  5. 设置 SERVICE_ACCOUNT_KEY_PATHFIREBASE_STORAGE_BUCKET 环境变量。

  6. 安装 MCP Server:

  7. 通过 npx 安装: bash npx -y @gannonh/firebase-mcp
  8. 本地安装: bash git clone https://github.com/gannonh/firebase-mcp cd firebase-mcp npm install npm run build

调试方式

  • 运行测试命令: bash npm run test:emulator
  • 在 LLM 客户端中提示:Please run through and test all of your Firebase MCP tools.

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。