Connecter votre IDE à Firestore à l'aide de MCP Toolbox

Cette page explique comment utiliser la MCP Toolbox pour les bases de données afin de connecter votre instance Firestore à des environnements de développement intégrés (IDE) et à des outils pour les développeurs compatibles avec le Model Context Protocol (MCP). Utilisez ces outils pour exécuter des requêtes et interagir avec votre base de données. Ce guide est destiné aux développeurs qui utilisent leurs IDE et outils de développement existants pour travailler avec Firestore.

Le Model Context Protocol (MCP) est un protocole ouvert permettant de connecter des grands modèles de langage (LLM) à des sources de données telles que Firestore. Cette page explique comment utiliser la boîte à outils MCP pour les bases de données afin d'exposer vos outils d'assistance aux développeurs à une instance Firestore à l'aide des IDE suivants :

Configurer Firestore

  1. Créez un Google Cloud projet ou sélectionnez-en un existant.

  2. Activez l'API Firestore pour votre projet.

  3. Créez une base de données Firestore si vous ne l'avez pas déjà fait.

  4. Configurez l'authentification pour votre environnement local.

Installer la boîte à outils MCP

  1. Téléchargez la dernière version de MCP Toolbox en tant que binaire. Sélectionnez le fichier binaire correspondant à votre système d'exploitation et à l'architecture de votre processeur. Vous devez utiliser la version V0.13.0 ou ultérieure de MCP Toolbox.

    linux/amd64

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

    Remplacez version par le numéro de version de MCP Toolbox, par exemple v0.13.0.

    darwin/arm64

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

    Remplacez version par le numéro de version de MCP Toolbox, par exemple v0.13.0.

    darwin/amd64

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

    Remplacez version par le numéro de version de MCP Toolbox, par exemple v0.13.0.

    windows/amd64

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

    Remplacez version par le numéro de version de MCP Toolbox, par exemple v0.13.0.

  2. Rendez le binaire exécutable.

    chmod +x toolbox
    
  3. Vérifiez l'installation.

    ./toolbox --version
    

Configurer le client MCP

Code Claude

  1. Installez Claude Code.
  2. Créez le fichier .mcp.json à la racine de votre projet, s'il n'existe pas.
  3. Ajoutez la configuration suivante, remplacez les variables d'environnement par vos valeurs, puis enregistrez.

 {
    "mcpServers": {
      "firestore": {
        "command": "./PATH/TO/toolbox",
        "args": ["--prebuilt","firestore","--stdio"],
        "env": {
          "FIRESTORE_PROJECT": "PROJECT_ID",
          "FIRESTORE_DATABASE": "DATABASE_NAME"
        }
      }
    }
  }
  1. Redémarrez le code Claude pour appliquer la nouvelle configuration.

Claude sur ordinateur

  1. Ouvrez Claude Desktop et accédez à Settings (Paramètres).
  2. Dans l'onglet Développeur, cliquez sur Modifier la configuration pour ouvrir le fichier de configuration.
  3. Ajoutez la configuration suivante, remplacez les variables d'environnement par vos valeurs, puis enregistrez.

 {
    "mcpServers": {
      "firestore": {
        "command": "./PATH/TO/toolbox",
        "args": ["--prebuilt","firestore","--stdio"],
        "env": {
          "FIRESTORE_PROJECT": "PROJECT_ID",
          "FIRESTORE_DATABASE": "DATABASE_NAME"
        }
      }
    }
  }
  1. Redémarrez Claude Desktop.
  2. Sur le nouvel écran de chat, une icône en forme de marteau (MCP) devrait s'afficher avec le nouveau serveur MCP disponible.

Cline

  1. Ouvrez l'extension Cline dans VS Code, puis appuyez sur l'icône Serveurs MCP.
  2. Cliquez sur Configurer les serveurs MCP pour ouvrir le fichier de configuration.
  3. Ajoutez la configuration suivante, remplacez les variables d'environnement par vos valeurs, puis enregistrez.

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

Un état actif vert s'affiche une fois que le serveur est connecté.

Cursor

  1. Créez le répertoire .cursor dans la racine de votre projet s'il n'existe pas.
  2. Créez le fichier .cursor/mcp.json s'il n'existe pas, puis ouvrez-le.
  3. Ajoutez la configuration suivante, remplacez les variables d'environnement par vos valeurs, puis enregistrez.
 {
    "mcpServers": {
      "firestore": {
        "command": "./PATH/TO/toolbox",
        "args": ["--prebuilt","firestore","--stdio"],
        "env": {
          "FIRESTORE_PROJECT": "PROJECT_ID",
          "FIRESTORE_DATABASE": "DATABASE_NAME"
        }
      }
    }
  }
  1. Ouvrez Cursor, puis accédez à Settings > Cursor Settings > MCP (Paramètres > Paramètres du curseur > MCP). Un état actif vert s'affiche lorsque le serveur se connecte.

Visual Studio Code (Copilot)

  1. Ouvrez VS Code et créez le répertoire .vscode à la racine de votre projet s'il n'existe pas.
  2. Créez le fichier .vscode/mcp.json s'il n'existe pas, puis ouvrez-le.
  3. Ajoutez la configuration suivante, remplacez les variables d'environnement par vos valeurs, puis enregistrez.
 {
    "servers":{
      "firestore": {
        "command": "./PATH/TO/toolbox",
        "args": ["--prebuilt","firestore","--stdio"],
        "env": {
          "FIRESTORE_PROJECT": "PROJECT_ID",
          "FIRESTORE_DATABASE": "DATABASE_NAME"
        }
      }
    }
  }

Windsurf

  1. Ouvrez Windsurf et accédez à l'assistant Cascade.
  2. Cliquez sur l'icône MCP, puis sur Configurer pour ouvrir le fichier de configuration.
  3. Ajoutez la configuration suivante, remplacez les variables d'environnement par vos valeurs, puis enregistrez.
 {
    "mcpServers": {
      "firestore": {
        "command": "./PATH/TO/toolbox",
        "args": ["--prebuilt","firestore","--stdio"],
        "env": {
          "FIRESTORE_PROJECT": "PROJECT_ID",
          "FIRESTORE_DATABASE": "DATABASE_NAME"
        }
      }
    }
  }

CLI Gemini

  1. Installez la CLI Gemini.
  2. Dans votre répertoire de travail, créez un dossier nommé .gemini. Dans ce dossier, créez un fichier settings.json.
  3. Ajoutez la configuration suivante, remplacez les variables d'environnement par vos valeurs, puis enregistrez.
 {
    "mcpServers": {
      "firestore": {
        "command": "./PATH/TO/toolbox",
        "args": ["--prebuilt","firestore","--stdio"],
        "env": {
          "FIRESTORE_PROJECT": "PROJECT_ID",
          "FIRESTORE_DATABASE": "DATABASE_NAME"
        }
      }
    }
  }

Gemini Code Assist

  1. Installez l'extension Gemini Code Assist dans Visual Studio Code.
  2. Activez le mode Agent dans le chat Gemini Code Assist.
  3. Dans votre répertoire de travail, créez un dossier nommé .gemini. Dans ce dossier, créez un fichier settings.json.
  4. Ajoutez la configuration suivante, remplacez les variables d'environnement par vos valeurs, puis enregistrez.
 {
    "mcpServers": {
      "firestore": {
        "command": "./PATH/TO/toolbox",
        "args": ["--prebuilt","firestore","--stdio"],
        "env": {
          "FIRESTORE_PROJECT": "PROJECT_ID",
          "FIRESTORE_DATABASE": "DATABASE_NAME"
        }
      }
    }
  }

Utiliser les outils

Votre outil d'IA est désormais connecté à Firestore à l'aide de MCP. Essayez de demander à votre assistant IA de lister des collections, d'obtenir des documents, d'interroger des collections ou de gérer des règles de sécurité.

Les outils suivants sont à la disposition du LLM :

  • firestore-add-documents : ajoutez un document à un chemin d'accès à une collection Firestore.
  • firestore-get-documents : récupère plusieurs documents Firestore à partir de leurs chemins d'accès.
  • firestore-list-collections : liste les collections Firestore pour un chemin parent donné.
  • firestore-delete-documents : supprime plusieurs documents de Firestore.
  • firestore-query-collection : interroge les documents d'une collection avec des options de filtrage, de tri et de limite.
  • firestore-get-rules : récupère les règles de sécurité Firestore actives pour le projet en cours.
  • firestore-update-document : met à jour un document existant dans Firestore en fonction de son chemin d'accès.
  • firestore-validate-rules : valide la syntaxe et les erreurs des règles de sécurité Firestore.