Token导航 LogoToken导航TokenDH.com
MCP Firebase logo
开发工具未说明官方级别未说明来源级核验

MCP Firebase

MCP Server

独立运行的Firebase实时数据库MCP服务器,提供完整的读写查询功能,支持本地YAML文件转储/加载调试,并可作为库导入使用。

工具数

20

提示词数

0

GitHub Stars

0

资源数

0
调试工具TypeScriptClaude数据同步ClaudeCursor

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

Livshitz

提供方

Livshitz

最后核验

2026/5/17 20:21

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

mcp燃烧酶

Firebase实时数据库的独立MCP服务器。使用它从 光标, 克劳德代码或任何MCP主机。完整的RTDB读/写/查询访问权限,以及用于调试的本地YAML转储/加载。

也可用作可导入库。

快速开始

来自npm(推荐): 包裹 @livx.cc/mcp-firebase.以开始该过程 项目根目录 作为当前的工作目录 mcp-firebase.json 已找到(见下文)。

# MCP stdio (installs/updates the package; -y = non-interactive)
bunx -y @livx.cc/mcp-firebase --stdio

# HTTP mode (REST + `/api/mcp`); PORT defaults to 3456
bunx -y @livx.cc/mcp-firebase

从这个仓库的克隆中:

# MCP stdio mode — loads .env via mcp-firebase.json / flags (see below)
bun run src/cli.ts --stdio

# If mcp-firebase.json has no envPath, you can pass .env here instead
bun run src/cli.ts --stdio --env-path /path/to/.env

# HTTP mode (REST + MCP endpoint)
bun run src/cli.ts

mcp-firebase.json

每个应用程序 使用此MCP的应具有 mcp-firebase.json 在项目根中 (与您使用的文件夹相同 cwd 启动服务器时)。Cursor、Claude Code和CLI都读取同一个文件—— IDE特定。

例子:

{
  "envPath": "./config/.env.firebase",
  "basePath": "/myApp",
  "workDir": ".mcp-firebase",
  "readOnly": true
}
  • envPath --通往 .env 此应用程序的文件(相对于项目根)。应定义RTDB凭据;看见 环境变量.
  • basePath --可选RTDB路径前缀(默认 /).
  • workDir --缓存、转储、备份、审核的可选根目录(默认 .mcp-firebase/).
  • readOnly: true 块写入工具(put_db, patch_db, delete_db, post_db_push, post_files_load, post_backup_restore). false 允许他们。如果省略了键,请使用env MCP_READONLY:仅当满足以下条件时才允许写入 MCP_READONLY=false;否则服务器是只读的。

所有钥匙都是可选的。 优先: mcp-firebase.json >CLI --env-path >环境>内置默认值。

目录布局 (根据 workDir,默认值 .mcp-firebase/):

.mcp-firebase/
  cache/     ← query/read results (get_db shallow=false, list, query)
  dumps/     ← manual YAML dumps (files/dump)
  backups/   ← auto + manual backups before write ops
  audit/     ← audit.jsonl (append-only write log)

如果需要,覆盖单个dirs:

{
  "workDir": ".mcp-firebase",
  "localDir": ".mcp-firebase/dumps/",
  "cacheDir": ".mcp-firebase/cache/",
  "audit": { "logFile": ".mcp-firebase/audit/audit.jsonl" },
  "backup": {
    "dir": ".mcp-firebase/backups/",
    "operations": ["put", "patch", "delete"]
  }
}

backup.operations 写操作触发自动预操作快照的控件。 push 默认情况下被排除在外(仅追加;回滚是删除)。如果需要,请明确添加。

环境变量

从指向的文件加载 envPathmcp-firebase.json (或 --env-path / .env).

变量必填描述
FIREBASE_SERVICE_ACCOUNT是\*服务帐户JSON文件的路径,或JSON字符串本身
FIREBASE_DATABASE_URL是\*Firebase RTDB URL
FIREBASE_CONFIG如果设置并且 FIREBASE_DATABASE_URL 缺失, databaseURL 从JSON中读取(形状与Firebase客户端配置相同)
MCP_READONLY何时 mcp-firebase.json 没有 readOnly 键:如果 MCP_READONLY=false,允许写入;否则为只读(默认)
RTDB_BASE_PATH所有操作的路径前缀(默认值: /;通过以下方式覆盖 mcp-firebase.json basePath)
RTDB_LOCAL_DIRYAML转储文件的目录(默认:下 workDir,见上文)

\*RTDB访问所需。 FIREBASE_SERVICE_ACCOUNT 自动检测格式:如果值以开头 {,解析为JSON;否则被视为文件路径。

光标

  1. 添加 mcp-firebase.json 在应用程序根目录下设置 envPath (以及任何其他选项),如 mcp-firebase.json 上面的部分。
  2. 以工作区根目录打开该应用文件夹${workspaceFolder} 在下面的代码段中,必须是包含以下内容的目录 mcp-firebase.json.
  3. 安装 包子 所以 bunx 在你的路径上。
  4. 添加 .cursor/mcp.json:
{
  "mcpServers": {
    "mcp-firebase": {
      "type": "stdio",
      "command": "bunx",
      "args": ["-y", "@livx.cc/mcp-firebase", "--stdio"],
      "cwd": "${workspaceFolder}"
    }
  }
}
  1. 重新加载 光标窗口(或重新启动光标)。如果工具未出现,请打开 输出 并选择 主控程序MCP日志 对于错误。

可选:固定一个版本,例如。 "args": ["-y", "@livx.cc/mcp-firebase@0.1.13", "--stdio"].\ 可选: 用户范围 ~/.cursor/mcp.json 使用相同的形状;这 项目 文件胜过全局per Cursor的MCP文档.

克劳德代码

全球 --添加到 ~/.claude.json 一次。每个项目仍然使用自己的 mcp-firebase.json 在打开该repo时,在repo根目录处(流程 cwd 是项目):

{
  "mcpServers": {
    "firebase": {
      "type": "stdio",
      "command": "bun",
      "args": ["run", "/path/to/mcp-firebase/src/cli.ts", "--stdio"]
    }
  }
}

对于已发布的安装,您可以指向 argsbunx + @livx.cc/mcp-firebase + --stdio 同样的方式 光标,或使用如上所述的本地克隆路径。

MCP工具

服务器发送最佳实践 instructions 连接到代理(通过MCP initialize 响应)。主机(例如Cursor或Claude Code)可以将这些添加到代理上下文中——默认设置中不需要额外的斜线命令。说明包括:取用前务必检查尺寸,使用 get_db_keys 首先,对于大型集合,更喜欢查询而不是完整下载。

数据库操作

工具说明
get_db读取任何RTDB路径上的数据。默认 shallow=true 内联返回键/类型摘要。 shallow=false 将完整数据写入缓存,并返回元数据+文件路径。 使用前务必先检查尺寸 shallow=false.
put_db设置(替换)数据。首先自动备份路径,附加审核条目。退货 { id, backupFile } 为了相关性。
patch_db合并更新数据。首先自动备份路径,附加审核条目。
delete_db删除数据。首先自动备份路径,附加审核条目。
get_db_list将子项列为数组——写入缓存,返回元数据+文件路径。 使用 get_db_keys 首先检查计数。
get_db_keys仅列出子密钥(内联返回)。 在获取数据之前,请先使用此选项检查集合大小。
post_db_push使用自动生成的按键按下新孩子。附加审核条目。
get_db_query使用orderBy/eequalTo/limitToFirst/limitToSast查询--写入缓存,返回元数据+文件路径

文件操作

工具说明
post_files_dump将RTDB路径转储到本地YAML文件
post_files_load将YAML文件加载回RTDB。附加审核条目。
get_files_list列出本地YAML转储文件
get_files_read读取本地YAML转储文件

备份操作

工具说明
post_backup创建路径的手动备份(如果省略了路径,则创建整个数据库)。以YAML格式存储在 .mcp-firebase/backups/.
get_backup_list列出所有备份。筛选依据 oppath.返回文件名、操作、路径、时间戳。
get_backup_read读取备份文件的内容。
post_backup_restore将备份还原到RTDB。使用备份 _path 以确定目标。附加审核条目。

审计业务

工具说明
get_audit_list列出最近的写操作审核条目。筛选依据 op, path, limit (默认值为50)。最近的第一个。

检查

工具说明
get_structure显示顶级RTDB密钥(廉价的浅REST调用——没有下载子数据)
get_rules阅读 database.rules.json 来自cwd
get_config显示解析的运行时配置:cwd、envPath、basePath、dirs、审计/备份设置、数据库URL

图书馆使用情况

import { FirebaseModule, RtdbDAL, BaseRepository, AuditLog, BackupManager, YamlSync } from '@livx.cc/mcp-firebase';

const firebase = new FirebaseModule({
  serviceAccountPath: './service-account.json',
  databaseURL: 'https://your-project.firebaseio.com',
  basePath: '/v1/',
});

const dal = new RtdbDAL(firebase);
const yamlSync = new YamlSync(dal);

// Audit log (append-only JSONL)
const audit = new AuditLog({ logFile: '.rtdb-audit/audit.jsonl' });

// Backup manager
const backup = new BackupManager({ dir: '.rtdb-backups/', operations: ['put', 'patch', 'delete'] }, yamlSync);

// Manual backup
const file = await backup.backup('users/abc', 'put');

// List backups filtered by path
const backups = backup.list({ path: 'users' });

// Restore a backup
await backup.restore('put_users.abc_2026-02-18T12-00-00-000Z.yaml');

// Query audit log
const entries = audit.list({ op: 'delete', limit: 20 });

// Typed repository
const users = new BaseRepository(dal, 'users');
const user = await users.getById('abc');
await users.update('abc', { name: 'Bob' });

审计和备份

每次写作(put, patch, delete, push, load)将JSON行附加到配置的审核文件中(默认值: .mcp-firebase/audit/audit.jsonl):

{ "id": "2026-02-18T12-00-00-000Z", "ts": "2026-02-18T12:00:00.000Z", "op": "delete", "path": "users/abc", "status": "ok", "backupFile": ".mcp-firebase/backups/delete_users.abc_2026-02-18T12-00-00-000Z.yaml", "durationMs": 42 }

backupFile 字段将审核条目与其操作前快照相关联。备份文件名编码 {op}_{path}_{timestamp}.yaml.

回收流程:

  1. get_audit_list --发现错误操作,注意其 id / backupFile
  2. get_backup_list --确认备份存在
  3. post_backup_restore { "filename": "..." } --恢复术前状态

YAML文件格式

转储文件使用 _path 跟踪RTDB源路径的约定:

_path: users/abc
name: Alice
email: alice@example.com
role: admin

加载文件会写入其内容(减号 _path)返回指定的RTDB路径。

目录标签

目录标签

调试工具TypeScriptClaude数据同步实时数据库本地部署FirebaseMCP协议

支持客户端

ClaudeCursor

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

20

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP