Connetti il tuo IDE a Firestore utilizzando MCP Toolbox

Questa pagina descrive come utilizzare MCP Toolbox for databases per connettere l'istanza Firestore a ambienti di sviluppo integrati (IDE) e strumenti per sviluppatori che supportano il Model Context Protocol (MCP). Utilizza questi strumenti per eseguire query e interagire con il database. Questa guida è rivolta agli sviluppatori che utilizzano gli IDE e gli strumenti per sviluppatori esistenti per lavorare con Firestore.

Il Model Context Protocol (MCP) è un protocollo aperto per connettere i modelli linguistici di grandi dimensioni (LLM) a origini dati come Firestore. Questa pagina descrive come utilizzare MCP Toolbox for Databases per esporre gli strumenti di assistenza per sviluppatori a un'istanza Firestore utilizzando i seguenti IDE:

Configura Firestore

  1. Crea un nuovo Google Cloud progetto o selezionane uno esistente.

  2. Abilitare l'API Firestore per il tuo progetto.

  3. Se non l'hai ancora fatto, crea un database Firestore.

  4. Configura l'autenticazione per l'ambiente locale.

Installare MCP Toolbox

  1. Scarica l'ultima versione di MCP Toolbox come file binario. Seleziona il file binario corrispondente al tuo sistema operativo e all'architettura della CPU. Devi utilizzare MCP Toolbox versione V0.13.0 o successive.

    linux/amd64

    curl -O https://storage.googleapis.com/genai-toolbox/version/linux/amd64/toolbox
    

    Sostituisci version con il numero di versione di MCP Toolbox, ad esempio v0.13.0.

    darwin/arm64

    curl -O https://storage.googleapis.com/genai-toolbox/version/darwin/arm64/toolbox
    

    Sostituisci version con il numero di versione di MCP Toolbox, ad esempio v0.13.0.

    darwin/amd64

    curl -O https://storage.googleapis.com/genai-toolbox/version/darwin/amd64/toolbox
    

    Sostituisci version con il numero di versione di MCP Toolbox, ad esempio v0.13.0.

    windows/amd64

    curl -O https://storage.googleapis.com/genai-toolbox/version/windows/amd64/toolbox
    

    Sostituisci version con il numero di versione di MCP Toolbox, ad esempio v0.13.0.

  2. Rendi eseguibile il file binario.

    chmod +x toolbox
    
  3. Verifica l'installazione.

    ./toolbox --version
    

Configura il client MCP

Codice Claude

  1. Installa Claude Code.
  2. Crea il file .mcp.json nella root del progetto, se non esiste.
  3. Aggiungi la seguente configurazione, sostituisci le variabili di ambiente con i tuoi valori e salva.

 {
    "mcpServers": {
      "firestore": {
        "command": "./PATH/TO/toolbox",
        "args": ["--prebuilt","firestore","--stdio"],
        "env": {
          "FIRESTORE_PROJECT": "PROJECT_ID",
          "FIRESTORE_DATABASE": "DATABASE_NAME"
        }
      }
    }
  }
  1. Riavvia il codice Claude per applicare la nuova configurazione.

Claude desktop

  1. Apri Claude Desktop e vai a Impostazioni.
  2. Nella scheda Sviluppatore, fai clic su Modifica configurazione per aprire il file di configurazione.
  3. Aggiungi la seguente configurazione, sostituisci le variabili di ambiente con i tuoi valori e salva.

 {
    "mcpServers": {
      "firestore": {
        "command": "./PATH/TO/toolbox",
        "args": ["--prebuilt","firestore","--stdio"],
        "env": {
          "FIRESTORE_PROJECT": "PROJECT_ID",
          "FIRESTORE_DATABASE": "DATABASE_NAME"
        }
      }
    }
  }
  1. Riavvia Claude Desktop.
  2. Nella nuova schermata di chat, dovrebbe apparire un'icona a forma di martello (MCP) con il nuovo server MCP disponibile.

Cline

  1. Apri l'estensione Cline in VS Code e tocca l'icona Server MCP.
  2. Fai clic su Configura server MCP per aprire il file di configurazione.
  3. Aggiungi la seguente configurazione, sostituisci le variabili di ambiente con i tuoi valori e salva.

 {
    "mcpServers": {
      "firestore": {
        "command": "./PATH/TO/toolbox",
        "args": ["--prebuilt","firestore","--stdio"],
        "env": {
          "FIRESTORE_PROJECT": "PROJECT_ID",
          "FIRESTORE_DATABASE": "DATABASE_NAME"
        }
      }
    }
  }

Dopo la connessione riuscita del server, viene visualizzato uno stato attivo verde.

Cursore

  1. Crea la directory .cursor nella root del progetto, se non esiste.
  2. Crea il file .cursor/mcp.json se non esiste e aprilo.
  3. Aggiungi la seguente configurazione, sostituisci le variabili di ambiente con i tuoi valori e salva.
 {
    "mcpServers": {
      "firestore": {
        "command": "./PATH/TO/toolbox",
        "args": ["--prebuilt","firestore","--stdio"],
        "env": {
          "FIRESTORE_PROJECT": "PROJECT_ID",
          "FIRESTORE_DATABASE": "DATABASE_NAME"
        }
      }
    }
  }
  1. Apri Cursore e vai a Impostazioni > Impostazioni cursore > MCP. Quando il server si connette, viene visualizzato uno stato attivo verde.

Visual Studio Code (Copilot)

  1. Apri VS Code e crea la directory .vscode nella radice del progetto, se non esiste.
  2. Crea il file .vscode/mcp.json se non esiste e aprilo.
  3. Aggiungi la seguente configurazione, sostituisci le variabili di ambiente con i tuoi valori e salva.
 {
    "servers":{
      "firestore": {
        "command": "./PATH/TO/toolbox",
        "args": ["--prebuilt","firestore","--stdio"],
        "env": {
          "FIRESTORE_PROJECT": "PROJECT_ID",
          "FIRESTORE_DATABASE": "DATABASE_NAME"
        }
      }
    }
  }

Windsurf

  1. Apri Windsurf e vai all'assistente per le cascate.
  2. Fai clic sull'icona di MCP, quindi su Configura per aprire il file di configurazione.
  3. Aggiungi la seguente configurazione, sostituisci le variabili di ambiente con i tuoi valori e salva.
 {
    "mcpServers": {
      "firestore": {
        "command": "./PATH/TO/toolbox",
        "args": ["--prebuilt","firestore","--stdio"],
        "env": {
          "FIRESTORE_PROJECT": "PROJECT_ID",
          "FIRESTORE_DATABASE": "DATABASE_NAME"
        }
      }
    }
  }

Interfaccia a riga di comando di Gemini

  1. Installa l'interfaccia a riga di comando di Gemini.
  2. Nella directory di lavoro, crea una cartella denominata .gemini. Al suo interno, crea un file settings.json.
  3. Aggiungi la seguente configurazione, sostituisci le variabili di ambiente con i tuoi valori e poi salva.
 {
    "mcpServers": {
      "firestore": {
        "command": "./PATH/TO/toolbox",
        "args": ["--prebuilt","firestore","--stdio"],
        "env": {
          "FIRESTORE_PROJECT": "PROJECT_ID",
          "FIRESTORE_DATABASE": "DATABASE_NAME"
        }
      }
    }
  }

Gemini Code Assist

  1. Installa l'estensione Gemini Code Assist in Visual Studio Code.
  2. Attiva la modalità Agente nella chat di Gemini Code Assist.
  3. Nella directory di lavoro, crea una cartella denominata .gemini. Al suo interno, crea un file settings.json.
  4. Aggiungi la seguente configurazione, sostituisci le variabili di ambiente con i tuoi valori e poi salva.
 {
    "mcpServers": {
      "firestore": {
        "command": "./PATH/TO/toolbox",
        "args": ["--prebuilt","firestore","--stdio"],
        "env": {
          "FIRESTORE_PROJECT": "PROJECT_ID",
          "FIRESTORE_DATABASE": "DATABASE_NAME"
        }
      }
    }
  }

Utilizzare gli strumenti

Il tuo strumento di AI è ora connesso a Firestore utilizzando MCP. Prova a chiedere all'assistente AI di elencare le raccolte, recuperare documenti, eseguire query sulle raccolte o gestire le regole di sicurezza.

Sono disponibili i seguenti strumenti per il LLM:

  • firestore-add-documents: aggiungi un documento a un percorso di raccolta Firestore.
  • firestore-get-documents: recupera più documenti da Firestore in base ai relativi percorsi.
  • firestore-list-collections: elenca le raccolte Firestore per un determinato percorso principale.
  • firestore-delete-documents: elimina più documenti da Firestore.
  • firestore-query-collection: esegui query sui documenti di una raccolta con opzioni di filtro, ordinamento e limite.
  • firestore-get-rules: recupera le regole di sicurezza di Firestore attive per il progetto corrente.
  • firestore-update-document: aggiorna un documento esistente in Firestore in base al relativo percorso.
  • firestore-validate-rules: convalida la sintassi e gli errori delle regole di sicurezza di Firestore.