Assistenza AI per Crashlytics tramite MCP


Con gli strumenti e i prompt Firebase Crashlytics MCP, puoi interagire con i tuoi dati Crashlytics utilizzando gli strumenti di sviluppo basati sull'AI compatibili con MCP, come Gemini CLI, Claude Code o Cursor. Questi Crashlyticsstrumenti e prompt MCP forniscono un contesto fondamentale al tuo strumento di AI per aiutarti a gestire, dare priorità, eseguire il debug e risolvere i problemi.

Dopo aver configurato il server MCP Firebase, puoi utilizzare le funzionalità MCP per Crashlytics:

Flusso di lavoro guidato per assegnare priorità e risolvere i problemi

Debug conversazionale in formato libero


Che cos'è MCP? Il Model Context Protocol (MCP) è un modo standardizzato per consentire agli strumenti di AI di accedere a strumenti e origini dati esterni.



Prima di iniziare: configura il server MCP Firebase

Questa sezione descrive la configurazione di base del server Firebase MCP in modo da poter utilizzare comandi, prompt e strumenti MCP specifici per Crashlytics (descritti più avanti in questa pagina).

Prerequisiti

Assicurati che il tuo ambiente soddisfi i seguenti requisiti:

  • Un'installazione funzionante di Node.js e npm. L'installazione di Node.js installa automaticamente gli strumenti di comando npm.

  • Il tuo strumento di sviluppo basato sull'AI supporta le integrazioni MCP.

Se stai lavorando a un progetto Unity, consulta le domande frequenti sul caricamento di Crashlytics strumenti e prompt MCP.

Configura lo strumento di AI per utilizzare il server MCP Firebase

Interfaccia a riga di comando di Gemini

Il modo consigliato per configurare l'interfaccia a riga di comando di Gemini in modo che utilizzi il server Firebase MCP consiste nell'installare l'estensione Firebase per l'interfaccia a riga di comando di Gemini:

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

L'installazione dell'estensione Firebase configura automaticamente il server Firebase MCP e include anche un file di contesto che può migliorare il rendimento dello sviluppo di app Firebase di Gemini.

In alternativa, puoi configurare l'interfaccia a riga di comando Gemini per utilizzare il server Firebase MCP (ma non il file di contesto dell'estensione Firebase) modificando o creando uno dei file di configurazione:

  • Nel tuo progetto: .gemini/settings.json
  • Nella tua home directory: ~/.gemini/settings.json

Se il file non esiste ancora, crealo facendo clic con il tasto destro del mouse sulla directory principale e selezionando Nuovo file. Aggiungi i seguenti contenuti al file:

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

Gemini Code Assist

Il modo consigliato per configurare Gemini Code Assist in modo che utilizzi il server Firebase MCP è installare l'estensione Firebase per l'interfaccia a riga di comando di Gemini:

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

L'installazione dell'estensione Firebase configura automaticamente il server Firebase MCP e include anche un file di contesto che può migliorare il rendimento dello sviluppo di app Firebase di Gemini.

In alternativa, puoi configurare Gemini Code Assist in modo che utilizzi il server Firebase MCP (ma non il file di contesto dell'estensione Firebase) modificando o creando uno dei file di configurazione:

  • Nel tuo progetto: .gemini/settings.json
  • Nella tua home directory: ~/.gemini/settings.json

Se il file non esiste ancora, crealo facendo clic con il tasto destro del mouse sulla directory principale e selezionando Nuovo file. Aggiungi i seguenti contenuti al file:

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

Firebase Studio

Per configurare Firebase Studio in modo che utilizzi il server Firebase MCP, modifica o crea il file di configurazione: .idx/mcp.json.

Se il file non esiste ancora, crealo facendo clic con il tasto destro del mouse sulla directory principale e selezionando Nuovo file. Aggiungi i seguenti contenuti al file:

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

Claude

Claude Code

Per configurare Claude Code in modo che utilizzi il server Firebase MCP, esegui questo comando nella cartella dell'app:

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

Puoi verificare l'installazione eseguendo:

claude mcp list

Dovrebbe mostrare:

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

Claude Desktop

Per configurare Claude Desktop in modo che utilizzi il server MCP Firebase, modifica il file claude_desktop_config.json. Puoi aprire o creare questo file dal menu Claude > Impostazioni. Seleziona la scheda Sviluppatore, quindi fai clic su Modifica configurazione.

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

Cline

Per configurare Cline in modo che utilizzi il server MCP di Firebase, modifica il file cline_mcp_settings.json. Puoi aprire o creare questo file facendo clic sull'icona dei server MCP nella parte superiore del riquadro Cline, quindi facendo clic sul pulsante Configura server MCP.

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

Cursore

Per configurare Cursor in modo che utilizzi il server MCP Firebase, modifica il file .cursor/mcp.json (per configurare solo un progetto specifico) o il file ~/.cursor/mcp.json (per rendere disponibile il server MCP in tutti i progetti):

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

VS Code Copilot

Per configurare un singolo progetto, modifica il file .vscode/mcp.json nell'area di lavoro:

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

Per rendere disponibile il server in ogni progetto che apri, modifica le impostazioni utente, ad esempio:

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

Windsurf

Per configurare Windsurf Editor, modifica il file ~/.codeium/windsurf/mcp_config.json:

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

Oltre alla configurazione di base descritta sopra per ogni strumento di AI, puoi specificare parametri facoltativi.



(Consigliato) Flusso di lavoro guidato per assegnare priorità e risolvere i problemi con crashlytics:connect

Crashlytics fornisce un flusso di lavoro guidato, conversazionale e flessibile per aiutarti a dare la priorità e risolvere i problemi di Crashlytics nella tua app. Ad esempio, lo strumento di AI può recuperare i problemi, spiegarli, identificare potenziali correzioni e persino apportare le modifiche al codice per te.

Questo flusso di lavoro guidato è disponibile tramite il comando crashlytics:connect MCP.

Accedere al comando e utilizzarlo

Interfaccia a riga di comando di Gemini che utilizza il comando crashlytics:connect
Utilizza uno strumento AI, come l'interfaccia a riga di comando di Gemini, con il crashlytics:connect workflow guidato.
  1. Se non l'hai ancora fatto, configura il server MCP Firebase e poi avvia lo strumento AI.

  2. Esegui il comando MCP crashlytics:connect.

    La maggior parte degli strumenti di AI offre un modo per accedere comodamente a questo flusso di lavoro. Ad esempio, se utilizzi la CLI Gemini, esegui il comando slash /crashlytics:connect

  3. Utilizza lo strumento di AI per assegnare la priorità e risolvere i problemi di Crashlytics, ad esempio:

    • Visualizza un elenco di problemi con priorità.
    • Esegui il debug di un problema specifico fornendo il relativo ID o URL.
    • Richiedere ulteriori informazioni su un arresto anomalo.
    • Chiedi all'agente il motivo di una causa principale suggerita.



Debug conversazionale in formato libero

Sebbene ti consigliamo di utilizzare crashlytics:connect per un'esperienza di debug ottimale, puoi anche eseguire il debug dei problemi utilizzando una conversazione in formato libero con uno strumento di AI che ha accesso agli strumenti Crashlytics MCP. Ciò è particolarmente importante per gli strumenti di AI che non supportano ancora i prompt MCP (spesso chiamati comandi slash o comandi personalizzati).

Dopo aver configurato il server Firebase MCP, prova alcuni degli esempi riportati di seguito.

Recuperare il contesto di un problema e di un arresto anomalo

Quando il tuo strumento di AI ha accesso agli strumenti Crashlytics MCP, può recuperare dati critici sui problemi Crashlytics, come conteggi di utenti ed eventi, stacktrace, metadati e informazioni sulla versione dell'app.

Ecco alcuni prompt di esempio:

  • 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?

    • Per rispondere a questa domanda, lo strumento di AI probabilmente leggerà il codice per capire dove avviene l'accesso e utilizzerà vari strumenti Crashlytics MCP per recuperare i dati dei problemi. Lo strumento AI tenterà quindi di determinare se esiste un problema nell'ultima versione relativo al flusso di accesso.
  • 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.

    • Per rispondere a questa domanda, lo strumento di AI utilizzerà vari strumenti Crashlytics MCP per recuperare il contesto del problema e le eventuali note pubblicate nel problema. Potrebbe anche recuperare esempi di arresti anomali per riprendere l'indagine sul problema.

Documentare un'indagine di debug

Quando esegui il debug di un problema, spesso è utile tenere traccia dei record per te o per il tuo team. Crashlytics offre questa funzionalità nella console Firebase e anche il tuo strumento di AI dotato di strumenti Crashlytics MCP può aiutarti, ad esempio riassumendo un'indagine, aggiungendo una nota con metadati utili (come un link a un problema di Jira o GitHub) o chiudendo un problema dopo che è stato risolto.

Ecco alcuni prompt di esempio:

  • 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 Riferimento allo strumento MCP

Le tabelle seguenti elencano gli strumenti Crashlytics MCP disponibili tramite il server Firebase MCP.

Dopo aver configurato il server MCP di Firebase, il tuo strumento di AI può utilizzare questi strumenti MCP per aiutarti a comprendere, eseguire il debug e gestire i problemi. Questi strumenti MCP vengono utilizzati sia nel flusso di lavoro guidato crashlytics:connect sia nelle conversazioni in formato libero con lo strumento AI.

Per la maggior parte dei casi d'uso, questi strumenti MCP sono destinati solo all'utilizzo di LLM e non all'utilizzo diretto da parte di uno sviluppatore umano. Il modello LLM decide quando utilizzare questi strumenti MCP in base alla tua interazione con lo strumento AI.

Gestire i problemi relativi a Crashlytics

La tabella seguente descrive gli strumenti disponibili per gestire i problemi relativi a Crashlytics.

Nome dello strumento Gruppo di caratteristiche Descrizione
crashlytics_create_note crashlytics Aggiungere una nota a un problema di Crashlytics.
crashlytics_delete_note crashlytics Eliminare una nota da un problema di Crashlytics.
crashlytics_update_issue crashlytics Utilizza questo campo per aggiornare lo stato del problema Crashlytics.

Recupera i dati di Crashlytics

La seguente tabella descrive gli strumenti disponibili per ottenere informazioni relative a Crashlytics sulle tue app.

Nome dello strumento Gruppo di caratteristiche Descrizione
crashlytics_get_issue crashlytics Recupera i dati per un problema di Crashlytics, che possono essere utilizzati come punto di partenza per il debug.
crashlytics_list_events crashlytics Utilizza questo campo per elencare gli eventi più recenti che corrispondono ai filtri specificati.
Può essere utilizzato per recuperare arresti anomali ed eccezioni di esempio per un problema,
che includeranno analisi dello stack e altri dati utili per il debug.
crashlytics_batch_get_events crashlytics Recupera eventi specifici in base al nome della risorsa.
Può essere utilizzato per recuperare arresti anomali ed eccezioni di esempio per un problema,
che includeranno analisi dello stack e altri dati utili per il debug.
crashlytics_list_notes crashlytics Utilizza questo campo per elencare tutte le note relative a un problema in Crashlytics.
crashlytics_get_top_issues crashlytics Utilizza questo report per conteggiare gli eventi e gli utenti interessati distinti, raggruppati per problema.
I gruppi sono ordinati in base al conteggio degli eventi, in ordine decrescente.
Conta solo gli eventi che corrispondono ai filtri specificati.
crashlytics_get_top_variants crashlytics Conteggia gli eventi e gli utenti interessati distinti, raggruppati per variante del problema.
I gruppi sono ordinati in base al conteggio degli eventi, in ordine decrescente.
Conta solo gli eventi che corrispondono ai filtri specificati.
crashlytics_get_top_versions crashlytics Conteggia gli eventi e gli utenti interessati distinti, raggruppati per versione.
I gruppi sono ordinati in base al conteggio degli eventi, in ordine decrescente.
Conta solo gli eventi che corrispondono ai filtri specificati.
crashlytics_get_top_apple_devices crashlytics Conteggia gli eventi e gli utenti interessati distinti, raggruppati per dispositivo Apple.
I gruppi sono ordinati in base al conteggio degli eventi, in ordine decrescente.
Conta solo gli eventi che corrispondono ai filtri specificati.
Rilevante solo per le applicazioni iOS, iPadOS e macOS.
crashlytics_get_top_android_devices crashlytics Conteggia gli eventi e gli utenti interessati distinti, raggruppati per dispositivo Android.
I gruppi sono ordinati in base al conteggio degli eventi, in ordine decrescente.
Conta solo gli eventi che corrispondono ai filtri specificati.
Pertinente solo per le applicazioni Android.
crashlytics_get_top_operating_systems crashlytics Conteggia gli eventi e gli utenti interessati distinti, raggruppati per sistema operativo.
I gruppi sono ordinati in base al conteggio degli eventi, in ordine decrescente.
Conta solo gli eventi che corrispondono ai filtri specificati.



Informazioni aggiuntive

Come vengono usati i tuoi dati

La governance dei dati è determinata dallo strumento di sviluppo basato sull'AI che utilizzi ed è soggetta ai termini definiti da questo strumento di AI.

Prezzi

Firebase non addebita costi per l'utilizzo di strumenti e prompt Crashlytics MCP o per il recupero di dati Crashlytics dalla nostra API pubblica.

I costi sono determinati dallo strumento di sviluppo basato sull'AI che utilizzi e potrebbero essere determinati dal volume di dati Crashlytics utilizzati dallo strumento di AI. Tieni presente che Firebase non offre un modo esplicito per controllare la quantità di dati caricati nel contesto, ma include indicazioni predefinite ragionevoli per il modello.

Risoluzione dei problemi e domande frequenti