Firebase MCP Server

官方

你可以使用 Firebase MCP 伺服器,讓 AI 驅動的開發工具能夠操作你的 Firebase 專案與應用程式的程式碼庫。

你可以用 Firebase MCP 做什麼?

  • 建立與管理 Firebase 專案 — 請助理使用 firebase_create_project 初始化新專案,或列出現有專案與應用程式。
  • 管理 Authentication 使用者 — 使用 auth_get_users 擷取使用者詳細資料,透過 auth_update_user 更新自訂聲明或停用帳戶。
  • 查詢與更新 Firestore 或 Realtime Database — 使用 firebase_read_resources 及資料庫相關工具讀取、寫入與管理文件。
  • 使用 Crashlytics 偵錯當機 — 透過 crashlytics_get_issuecrashlytics_list_events 取得問題詳細資訊、列出近期當機事件並新增備註。
  • 驗證與擷取安全規則 — 使用 firebase_validate_security_rules 檢查 Firestore、Storage 或 Realtime Database 規則是否有錯誤。
  • 監控 App Hosting 後端 — 透過 apphosting_list_backends 列出後端,並使用 apphosting_fetch_logs 擷取近期建置或執行階段日誌。

文件

Firebase MCP 伺服器

License Install MCP Server

Firebase 模型內容協定 (MCP) 伺服器讓 AI 驅動的開發工具能夠與您的 Firebase 專案和應用程式碼庫協作。Firebase MCP 伺服器可與任何能作為 MCP 用戶端的工具搭配使用,包括:Firebase StudioGemini CLIClaude CodeClineCursor、VS Code Copilot、Windsurf 等!

功能特色

設定為使用 Firebase MCP 伺服器的編輯器,可以利用其 AI 功能來協助您:

  • 建立與管理 Firebase 專案 - 初始化新專案、列出現有專案,以及管理 Firebase 應用程式
  • 管理 Firebase Authentication 使用者 - 擷取、更新及管理使用者帳戶
  • 使用 Cloud Firestore 和 Firebase SQL Connect - 查詢、讀取、寫入及管理資料庫文件
  • 擷取 Firebase SQL Connect 結構定義 - 透過 AI 輔助產生結構定義和操作
  • 了解安全規則 - 驗證並擷取 Firestore、Cloud Storage 和 Realtime Database 的安全規則
  • 使用 Firebase Cloud Messaging 傳送訊息 - 傳送推播通知至裝置和主題
  • 存取 Crashlytics 資料 - 偵錯問題、檢視當機報告及管理當機分析
  • 部署至 App Hosting - 監控後端並擷取記錄
  • 使用 Realtime Database - 即時讀取和寫入資料
  • 查詢 Cloud Functions 記錄 - 擷取並分析函式執行記錄
  • 管理 Remote Config - 取得並更新遠端設定範本

部分工具會使用 Gemini in Firebase 來協助您:

  • 產生 Firebase SQL Connect 結構定義和操作
  • 向 Gemini 諮詢 Firebase 產品相關問題

重要事項: Gemini in Firebase 可能會產生看似合理但事實上不正確的輸出內容。它可能會回應不準確的資訊,且不代表 Google 的觀點。在使用 Gemini 的所有輸出內容前,請務必進行驗證,且不要將未經測試的產生程式碼用於生產環境。請勿在對話中輸入個人識別資訊 (PII) 或使用者資料。
進一步瞭解 Gemini in Firebase 及其如何使用您的資料

安裝與設定

必要條件

請確保您已安裝可正常運作的 Node.jsnpm

基本設定

Firebase MCP 伺服器可與任何支援標準 I/O (stdio) 作為傳輸媒介的 MCP 用戶端搭配使用。當 Firebase MCP 伺服器進行工具呼叫時,它會使用在執行環境中授權 Firebase CLI 的相同使用者憑證。

以下是針對熱門 AI 輔助工具的設定說明:

Gemini CLI

安裝 Firebase 擴充功能 for Gemini CLI

gemini extensions install https://github.com/firebase/agent-skills

Claude Code

選項 1:透過外掛程式安裝 (建議)

在 Claude Code 中設定 Firebase MCP 伺服器最簡單的方式,就是安裝官方的 Firebase 外掛程式:

  1. 新增 Claude 外掛程式的 Firebase 市集:

    claude plugin marketplace add firebase/firebase-tools
    
  2. 安裝 Claude 外掛程式 for Firebase:

    claude plugin install firebase@firebase
    
  3. 驗證安裝:

    claude plugin
    
選項 2:手動設定 MCP 伺服器

或者,您可以透過執行以下指令來手動設定 Firebase MCP 伺服器:

claude mcp add firebase npx -- -y firebase-tools@latest mcp

您可以透過執行以下指令來驗證安裝:

claude mcp list

它應該會顯示:

firebase: npx -y firebase-tools@latest mcp - ✓ Connected

Cursor

新增至專案目錄中的 .cursorrules,或在 Cursor 設定中進行設定:

{
  "mcpServers": {
    "firebase": {
      "command": "npx",
      "args": ["-y", "firebase-tools@latest", "mcp"]
    }
  }
}

Windsurf

新增至 ~/.codeium/windsurf/mcp_config.json

{
  "mcpServers": {
    "firebase": {
      "command": "npx",
      "args": ["-y", "firebase-tools@latest", "mcp"]
    }
  }
}

Firebase Studio

若要設定 Firebase Studio 使用 Firebase MCP 伺服器,請編輯或建立設定檔:.idx/mcp.json

{
  "mcpServers": {
    "firebase": {
      "command": "npx",
      "args": ["-y", "firebase-tools@latest", "mcp"]
    }
  }
}

使用方式

設定完成後,MCP 伺服器將自動為您的 AI 助理提供 Firebase 功能。您可以:

  • 要求 AI 協助設定 Firebase 服務
  • 查詢您的 Firestore 資料庫
  • 管理 Authentication 使用者
  • 部署至 Firebase Hosting
  • 偵錯 Crashlytics 問題
  • 以及更多功能!

如需可用工具和資源的完整清單,請參閱下方的伺服器功能章節。

說明文件

如需更多資訊,請造訪官方 Firebase MCP 伺服器說明文件

伺服器功能

Firebase MCP 伺服器提供三種類型的功能:工具 (執行動作的函式)、提示 (可重複使用的指令範本) 和資源 (提供給 AI 模型的說明文件檔案)。

工具名稱功能群組說明
apphosting_fetch_logsapphosting使用此工具來擷取指定 App Hosting 後端的最新記錄。若指定了 buildLogs,則會傳回最新版本的建置過程記錄。最新的記錄會列在最前面。
apphosting_list_backendsapphosting使用此工具來擷取目前專案中的 App Hosting 後端清單。若清單為空,表示沒有任何後端。uri 是後端的公開網址。正常運作的後端會有一個 managed_resources 陣列,其中包含一個 run_service 項目。該 run_service.service 是提供 App Hosting 後端服務的 Cloud Run 服務資源名稱。該名稱的最後一個區段即為服務 ID。domains 是與後端關聯的網域清單。這些網域的類型為 CUSTOMDEFAULT。每個後端都應該有一個 DEFAULT 網域。使用者用來連線到後端的實際網域,是網域資源名稱的最後一個參數。若自訂網域已正確設定,其狀態結尾會是 ACTIVE
auth_get_usersauth使用此工具根據 UID 清單或電子郵件清單,擷取一或多個 Firebase Auth 使用者。
auth_update_userauth使用此工具來停用、啟用或設定特定使用者帳戶的自訂聲明。
auth_set_sms_region_policyauth使用此工具為 Firebase Authentication 設定 SMS 區域政策,以根據允許或拒絕的國碼清單,限制可接收簡訊的區域。此政策設定後將覆蓋任何現有政策。
firebase_logincore使用此工具將使用者登入 Firebase CLI 和 Firebase MCP 伺服器。這需要 Google 帳戶,且必須登入才能建立及使用 Firebase 專案。
firebase_logoutcore使用此工具將使用者登出 Firebase CLI 和 Firebase MCP 伺服器。
firebase_validate_security_rulescore使用此工具檢查 Firestore、Storage 或 Realtime Database 的 Firebase 安全規則,確認語法和驗證錯誤。
firebase_get_projectcore使用此工具擷取目前作用中 Firebase 專案的相關資訊。
firebase_list_appscore使用此工具擷取在目前作用中 Firebase 專案中註冊的 Firebase 應用程式清單。Firebase 應用程式可以是 iOS、Android 或 Web。
firebase_list_projectscore使用此工具擷取已登入使用者有權存取的 Firebase 專案清單。
firebase_get_sdk_configcore使用此工具擷取 Firebase 應用程式的 Firebase 設定資訊。您必須為在目前作用中 Firebase 專案中註冊的 Firebase 應用程式,指定平台「或」Firebase 應用程式 ID。
firebase_create_projectcore使用此工具建立新的 Firebase 專案。
firebase_create_appcore使用此工具在目前作用中的 Firebase 專案內建立新的 Firebase 應用程式。Firebase 應用程式可以是 iOS、Android 或 Web 類型。
firebase_create_android_shacore使用此工具將指定的 SHA 憑證雜湊新增至指定的 Firebase Android 應用程式。
firebase_get_environmentcore使用此工具擷取 Firebase CLI 與 Firebase MCP 伺服器目前的 Firebase 環境設定,包含目前驗證的使用者、專案目錄、作用中的 Firebase 專案等資訊。所有工具皆要求使用者必須通過驗證,但並非所有資訊都是每個工具的必要項目。請留意各工具對於必要資訊的要求。
firebase_update_environmentcore使用此工具更新 Firebase CLI 與 Firebase MCP 伺服器的環境設定,例如專案目錄、作用中專案、作用中使用者帳戶、接受服務條款等。使用 firebase_get_environment 查看目前設定的環境。
firebase_initcore使用此工具在工作區中初始化選定的 Firebase 服務(Cloud Firestore 資料庫、Firebase SQL Connect、Firebase Realtime Database、Firebase AI Logic)。所有服務皆為選用;僅指定您想設定的產品。您可以將新功能初始化至現有的專案目錄中,但重新初始化現有功能可能會覆寫設定。若要部署已初始化的功能,請在 firebase_init 工具之後執行 firebase deploy 指令。
firebase_get_security_rulescore使用此工具擷取指定 Firebase 服務的安全規則。若該產品中有多個服務執行個體,則會傳回預設執行個體的規則。
firebase_read_resourcescore使用此工具讀取 firebase:// 資源的內容或列出可用資源
crashlytics_create_notecrashlytics為 Crashlytics 中的問題新增附註。
crashlytics_delete_notecrashlytics從 Crashlytics 問題中刪除附註。
crashlytics_get_issuecrashlytics取得 Crashlytics 問題的資料,可作為偵錯的起點。
crashlytics_list_eventscrashlytics使用此工具列出符合指定篩選條件的最新事件。
可用於擷取問題的範例崩潰和例外狀況,
其中將包含堆疊追蹤和其他有助於偵錯的資料。
crashlytics_batch_get_eventscrashlytics依資源名稱取得特定事件。
可用於擷取問題的範例崩潰和例外狀況,
其中將包含堆疊追蹤和其他有助於偵錯的資料。
crashlytics_list_notescrashlytics使用此工具列出 Crashlytics 中某個問題的所有附註。
crashlytics_update_issuecrashlytics使用此工具更新 Crashlytics 問題的狀態。
realtimedatabase_get_datarealtimedatabase使用此工具從 Firebase Realtime Database 中指定位置擷取資料。
realtimedatabase_set_datarealtimedatabase使用此工具將資料寫入 Firebase Realtime Database 中指定位置。
dataconnect_builddataconnect使用此工具編譯 Firebase SQL Connect 的結構定義、操作和/或連接器,並檢查建置錯誤。
dataconnect_list_servicesdataconnect使用此工具列出現有的本機和後端 Firebase SQL Connect 服務。
dataconnect_executedataconnect使用此工具對 SQL Connect 服務或其模擬器執行 GraphQL 操作。
firestore_delete_documentfirestore使用此工具透過完整文件路徑,從目前專案的資料庫中刪除 Firestore 文件。若您知道文件的確切路徑,請使用此工具。
firestore_get_documentsfirestore使用此工具透過完整文件路徑,從目前專案的資料庫中擷取一或多個 Firestore 文件。若您知道文件的確切路徑,請使用此工具。
firestore_list_collectionsfirestore使用此工具從目前專案的 Firestore 資料庫中擷取集合清單。
firestore_query_collectionfirestore使用此工具透過具有完整文件路徑的集合,從目前專案資料庫的集合中擷取一或多個 Firestore 文件。若您知道集合的確切路徑以及您想要用於文件的篩選條件,請使用此工具。
functions_get_logsfunctions使用此工具透過 Google Cloud Logging 進階篩選器擷取一頁 Cloud Functions 日誌條目。
functions_list_functionsfunctions列出 Firebase 專案中所有已部署的函式。
messaging_send_messagemessaging使用此工具向 Firebase Cloud Messaging 註冊權杖或主題發送訊息。在特定呼叫中,只能提供 registration_tokentopic 其中之一。
remoteconfig_update_templateremoteconfig使用此工具為專案發布新的遠端設定範本,或復原至特定版本。
storage_get_object_download_urlstorage使用此工具擷取 Firebase Cloud Storage 儲存桶中物件的下載網址。
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
firebase:deploycore使用此指令將資源部署至 Firebase。

引數:
<prompt> (選用):您希望提供的任何特定部署指示
firebase:initcore使用此指令設定 Firebase 服務,例如後端與 AI 功能。
firestore:generate_security_rulesfirestore為您的專案產生安全的 Firebase Firestore 安全規則及對應的單元測試。
storage:generate_security_rulesstorage為您的專案產生安全的 Firebase Storage 安全規則及對應的單元測試。
crashlytics:connectcrashlytics使用此指令存取 Firebase 應用程式的 Crashlytics 資料。
資源名稱說明
app_id_guideFirebase 應用程式 ID 指南:引導編碼代理程式在目前專案中選擇 Firebase 應用程式 ID
crashlytics_investigations_guideFirebase Crashlytics 調查指南:引導編碼代理程式調查 Crashlytics 問題中回報的錯誤,包含診斷與修復當機的程序。
crashlytics_issues_guideFirebase Crashlytics 問題指南:引導編碼代理程式處理 Crashlytics 問題,包含優先順序規則以及診斷與修復當機的程序。
crashlytics_reports_guideFirebase Crashlytics 報表指南:引導編碼代理程式請求 Crashlytics 報表,包含設定適當的篩選條件以及如何理解指標。代理程式在請求任何報表前應先閱讀此指南。
backend_init_guideFirebase 後端初始化指南:引導編碼代理程式在目前專案中設定 Firebase 後端服務
ai_init_guideFirebase GenAI 初始化指南:引導編碼代理程式在目前專案中利用 Firebase 設定 GenAI 功能
firestore_init_guideFirestore 初始化指南:引導編碼代理程式在目前專案中設定 Firestore
firestore_rules_init_guideFirestore 規則初始化指南:引導編碼代理程式在專案中設定 Firestore 安全規則
auth_init_guideFirebase Authentication 初始化指南:引導編碼代理程式在目前專案中設定 Firebase Authentication
hosting_init_guideFirebase Hosting 部署指南:引導編碼代理程式在目前專案中部署至 Firebase Hosting
docsFirebase 文件:載入來自 Firebase 文件的純文字內容,例如 https://firebase.google.com/docs/functions 變成 firebase://docs/functions