透過 MCP 使用 Crashlytics 的 AI 輔助功能


透過 Firebase Crashlytics MCP 工具和提示,您可以使用支援 MCP 的 AI 輔助開發工具 (例如 Gemini CLI、Claude Code 或 Cursor),與 Crashlytics 資料互動。這些 CrashlyticsMCP 工具和提示詞 可為 AI 工具提供重要背景資訊,協助您管理、排定優先順序、偵錯及修正問題。

設定 Firebase MCP 伺服器後,即可使用 MCP 功能Crashlytics

引導式工作流程,可為問題排定優先順序並進行修正

任意形式的對話式偵錯


什麼是 MCP? Model Context Protocol (MCP) 是 AI 工具存取外部工具和資料來源的標準化方式。



事前準備:設定 Firebase MCP 伺服器

本節說明如何基本設定 Firebase MCP 伺服器,以便使用 Crashlytics 專屬的 MCP 指令、提示和工具 (本頁稍後會說明這些項目)。

事前準備

請確認環境符合下列規定:

  • Node.js 和 npm 的運作安裝。安裝 Node.js 時,系統會自動安裝 npm 指令工具。

  • AI 輔助開發工具支援 MCP 整合。

如果您使用 Unity 專案,請參閱載入 Crashlytics MCP 工具和提示的常見問題

設定 AI 工具以使用 Firebase MCP 伺服器

Gemini CLI

建議您安裝 Gemini CLI 的 Firebase 擴充功能,設定 Gemini CLI 使用 Firebase MCP 伺服器:

gemini extensions install https://github.com/gemini-cli-extensions/firebase/

安裝 Firebase 擴充功能後,系統會自動設定 Firebase MCP 伺服器,並提供可提升 Gemini Firebase 應用程式開發成效的內容檔案。

或者,您也可以編輯或建立下列任一設定檔,將 Gemini CLI 設為使用 Firebase MCP 伺服器 (但不是 Firebase 擴充功能環境定義檔):

  • 專案中的內容:.gemini/settings.json
  • 在主目錄中:~/.gemini/settings.json

如果檔案尚不存在,請在上層目錄上按一下滑鼠右鍵,然後選取「New file」,即可建立檔案。在檔案中加入下列內容:

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

Gemini 程式碼小幫手

建議您安裝 Gemini CLI 的 Firebase 擴充功能,設定 Gemini Code Assist 使用 Firebase MCP 伺服器:

gemini extensions install https://github.com/gemini-cli-extensions/firebase/

安裝 Firebase 擴充功能後,系統會自動設定 Firebase MCP 伺服器,並提供可提升 Gemini Firebase 應用程式開發成效的內容檔案。

或者,您也可以編輯或建立下列任一設定檔,將 Gemini Code Assist 設為使用 Firebase MCP 伺服器 (但不是 Firebase 擴充功能內容檔案):

  • 專案中的內容:.gemini/settings.json
  • 在主目錄中:~/.gemini/settings.json

如果檔案尚不存在,請在上層目錄上按一下滑鼠右鍵,然後選取「New file」,即可建立檔案。在檔案中加入下列內容:

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

Firebase Studio

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

如果檔案尚不存在,請在上層目錄上按一下滑鼠右鍵,然後選取「New file」,即可建立檔案。在檔案中加入下列內容:

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

Claude

Claude Code

如要設定 Claude Code 使用 Firebase MCP 伺服器,請在應用程式資料夾下執行下列指令:

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

如要驗證安裝作業,請執行下列指令:

claude mcp list

應該顯示:

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

Claude Desktop

如要將 Claude Desktop 設定為使用 Firebase MCP 伺服器,請編輯 claude_desktop_config.json 檔案。你可以透過「Claude」>「設定」選單開啟或建立這個檔案。選取「開發人員」分頁標籤,然後按一下「編輯設定」

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

Cline

如要設定 Cline 使用 Firebase MCP 伺服器,請編輯 cline_mcp_settings.json 檔案。如要開啟或建立這個檔案,請按一下「Cline」窗格頂端的「MCP Servers」圖示,然後按一下「Configure MCP Servers」按鈕。

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

游標

如要設定 Cursor 使用 Firebase MCP 伺服器,請編輯 .cursor/mcp.json 檔案 (僅設定特定專案) 或 ~/.cursor/mcp.json 檔案 (在所有專案中提供 MCP 伺服器):

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

VS Code Copilot

如要設定單一專案,請編輯工作區中的 .vscode/mcp.json 檔案:

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

如要在開啟的每個專案中使用伺服器,請編輯使用者設定,例如:

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

滑浪風帆

如要設定 Windsurf 編輯器,請編輯 ~/.codeium/windsurf/mcp_config.json 檔案:

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

除了上述各項 AI 工具的基本設定外,您還可以指定選用參數



(建議) 透過引導式工作流程,優先處理及修正 crashlytics:connect 問題

Crashlytics提供對話式引導工作流程,可彈性運用,協助您排定應用程式中 Crashlytics 問題的優先順序並加以修正。舉例來說,AI 工具可以擷取問題、說明問題、找出可能的修正方式,甚至為您變更程式碼。

您可以使用 crashlytics:connect MCP 指令,存取這個導覽式工作流程。

存取及使用指令

使用 crashlytics:connect 指令的 Gemini CLI
使用 AI 工具 (例如 Gemini CLI) 搭配引導式工作流程。
crashlytics:connect
  1. 如果尚未設定 Firebase MCP 伺服器,請先完成設定,然後啟動 AI 工具。

  2. 執行 crashlytics:connect MCP 指令。

    大多數 AI 工具都會提供便利的方式,讓您存取這項工作流程。 舉例來說,如果您使用 Gemini CLI,請執行斜線指令 /crashlytics:connect

  3. 使用 AI 工具協助排定 Crashlytics 問題的優先順序並修正,例如:

    • 查看優先處理的問題清單。
    • 提供問題 ID 或網址,即可偵錯特定問題。
    • 要求取得當機的詳細資訊。
    • 請代理程式說明建議根本原因的推論過程。



任意形式的對話式偵錯

雖然我們建議使用 crashlytics:connect 獲得最佳偵錯體驗,您也可以與可存取 Crashlytics MCP 工具的 AI 工具進行自由形式的對話,藉此偵錯問題。如果 AI 工具尚不支援 MCP 提示 (通常稱為斜線指令或自訂指令),這點就特別重要。

設定 Firebase MCP 伺服器後,請試試下列範例。

擷取問題和當機脈絡

如果 AI 工具可存取 Crashlytics MCP 工具,就能擷取重要Crashlytics問題資料,例如使用者和事件計數、堆疊追蹤、中繼資料和應用程式版本資訊。

範例提示如下:

  • A customer reported an issue during login when using our latest release. What Crashlytics issues do I have that could be related to this login trouble?

    • 為回答這個問題,AI 工具可能會讀取程式碼,瞭解登入發生位置,並使用各種 Crashlytics MCP 工具擷取問題資料。接著,AI 工具會嘗試判斷最新版本中是否有與登入流程相關的問題。
  • The previous on-call engineer was investigating issue abc123 but wasn't able to resolve it. She said she left some notes -- let's pick up where she left off.

    • 為回答這個問題,AI 工具會使用各種 Crashlytics MCP 工具,擷取問題背景資訊和發布至問題的任何附註。系統也可能會擷取當機範例,以繼續調查問題。

記錄偵錯調查

偵錯時,記錄自己或團隊的作業通常很有幫助。Crashlytics 控制台提供這項功能,Firebase配備 Crashlytics MCP 工具的 AI 工具也能提供協助,例如:摘要說明調查結果、新增附有實用中繼資料的附註 (例如 Jira 或 GitHub 問題的連結),或在問題修正後關閉。

範例提示如下:

  • Add a note to issue abc123 summarizing this investigation and the proposed fix.
  • We weren't able to get to the bottom of this issue today, summarize what we learned and attach it to issue abc123 to pick back up later.
  • Close issue abc123 and leave a note including the link to the PR that fixed the issue.



Crashlytics MCP 工具參考資料

下表列出可透過 Firebase MCP 伺服器使用的 Crashlytics MCP 工具。

設定 Firebase MCP 伺服器後,AI 工具就能使用這些 MCP 工具,協助您瞭解、偵錯及管理問題。在 crashlytics:connect 導覽工作流程和與 AI 工具的自由形式對話中,都會用到這些 MCP 工具。

在大多數情況下,這些 MCP 工具僅供 LLM 使用,不適合人類開發人員直接使用。LLM 會根據您與 AI 工具的互動,決定何時使用這些 MCP 工具。

管理 Crashlytics 問題

下表說明可用於管理 Crashlytics 問題的工具。

工具名稱 特徵群組 說明
crashlytics_create_note crashlytics 為 Crashlytics 中的問題新增附註。
crashlytics_delete_note crashlytics 從 Crashlytics 問題中刪除附註。
crashlytics_update_issue crashlytics 使用此功能更新 Crashlytics 問題的狀態。

擷取 Crashlytics 資料

下表說明可用的工具,協助您取得應用程式的 Crashlytics 相關資訊。

工具名稱 特徵群組 說明
crashlytics_get_issue crashlytics 取得 Crashlytics 問題的資料,可用於偵錯。
crashlytics_list_events crashlytics 使用這個方法列出符合指定篩選條件的最新事件。
可用於擷取問題的當機和例外狀況樣本,
其中包含堆疊追蹤和其他有助於偵錯的資料。
crashlytics_batch_get_events crashlytics 依資源名稱取得特定事件。
可用於擷取問題的當機和例外狀況樣本,
其中包含堆疊追蹤和其他有助於偵錯的資料。
crashlytics_list_notes crashlytics 使用這個指令列出 Crashlytics 中問題的所有附註。
crashlytics_get_top_issues crashlytics 您可以使用這項功能,依問題分組,計算事件和受影響的獨立使用者。
群組會依事件數量遞減排序。
只會計算符合指定篩選條件的事件。
crashlytics_get_top_variants crashlytics 計算事件和受影響的不重複使用者人數,並依問題變體分組。
群組會依事件數量遞減排序。
只會計算符合指定篩選條件的事件。
crashlytics_get_top_versions crashlytics 計算事件和受影響的不重複使用者人數,並依版本分組。
群組會依事件數量遞減排序。
只會計算符合指定篩選條件的事件。
crashlytics_get_top_apple_devices crashlytics 計算事件和受影響的不重複使用者人數,並依 Apple 裝置分組。
群組會依事件數量遞減排序。
只會計算符合指定篩選條件的事件。
僅適用於 iOS、iPadOS 和 macOS 應用程式。
crashlytics_get_top_android_devices crashlytics 計算事件和受影響的不重複使用者人數,並依 Android 裝置分組。
群組會依事件數量遞減排序。
只會計算符合指定篩選條件的事件。
僅適用於 Android 應用程式。
crashlytics_get_top_operating_systems crashlytics 計算事件和受影響的不重複使用者人數,並依作業系統分組。
群組會依事件數量遞減排序。
只會計算符合指定篩選條件的事件。



其他資訊

資料的使用方式

資料控管方式取決於您使用的 AI 技術輔助開發工具,並受該 AI 工具定義的條款規範。

定價

Firebase 不會收取 Crashlytics MCP 工具和提示的使用費用,也不會收取從公開 API 擷取 Crashlytics 資料的費用。

任何費用都取決於您使用的 AI 輔助開發工具,且可能取決於 AI 工具使用的 Crashlytics 資料量。請注意,Firebase 並未提供明確的方式來控管載入情境的資料量,但我們為模型提供合理的預設指引。

疑難排解與常見問題