Utiliser l'API Cloud Healthcare avec MCP et d'autres agents

Ce guide vous explique comment utiliser la boîte à outils MCP pour les bases de données afin de connecter l'API Cloud Healthcare à différents environnements de développement intégrés (IDE) et outils de développement. Il utilise le protocole MCP (Model Context Protocol), un protocole ouvert permettant de connecter de grands modèles de langage (LLM) à des sources de données telles que des ensembles de données de santé. Vous pouvez ainsi rechercher des données de santé et interagir avec elles directement à partir de vos outils existants.

Ce guide présente le processus de connexion pour les IDE suivants :

  • Cursor
  • Windsurf (anciennement Codeium)
  • Visual Studio Code (Copilot)
  • Cline (extension VS Code)
  • Claude desktop
  • Claude code

Avant de commencer

  1. Dans la Google Cloud console, sur la page de sélection du projet, sélectionnez ou créez un Google Cloud projet.

  2. Assurez-vous que la facturation est activée pour votre Google Cloud projet.

  3. Activez l'API Cloud Healthcare dans le Google Cloud projet.

  4. Configurez les rôles et autorisations requis pour effectuer cette tâche. Vous aurez besoin du rôle Lecteur de ressources FHIR Healthcare (roles/healthcare.fhirResourceReader) et du rôle Lecteur DICOM Healthcare (roles/healthcare.dicomViewer), ou d'autorisations IAM équivalentes pour vous connecter au projet.

  5. Configurez les identifiants par défaut de l'application (ADC) pour votre environnement.

Installer la boîte à outils MCP

La boîte à outils fait office de serveur MCP (Model Context Protocol) Open Source qui se situe entre votre IDE et l'API Cloud Healthcare. Elle fournit un plan de contrôle sécurisé et efficace pour vos outils d'IA.

  1. Téléchargez la dernière version de la boîte à outils MCP sous forme de fichier binaire. Sélectionnez le fichier binaire correspondant à votre système d'exploitation et à l'architecture de votre processeur. Vous devez utiliser la version 0.19.1 ou ultérieure de la boîte à outils MCP :

    linux/amd64

    curl -O https://storage.googleapis.com/mcp-toolbox-for-databases/VERSION/linux/amd64/toolbox
    

    Remplacez VERSION par la version de la boîte à outils MCP, par exemple v0.19.1.

    macOS darwin/arm64

    curl -O https://storage.googleapis.com/mcp-toolbox-for-databases/VERSION/darwin/arm64/toolbox
    

    Remplacez VERSION par la version de la boîte à outils MCP, par exemple v0.19.1.

    macOS darwin/amd64

    curl -O https://storage.googleapis.com/mcp-toolbox-for-databases/VERSION/darwin/amd64/toolbox
    

    Remplacez VERSION par la version de la boîte à outils MCP, par exemple v0.19.1.

    windows/amd64

    curl -O https://storage.googleapis.com/mcp-toolbox-for-databases/VERSION/windows/amd64/toolbox
    

    Remplacez VERSION par la version de la boîte à outils MCP, par exemple v0.19.1.

  2. Rendez le binaire exécutable :

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

    ./toolbox --version
    

Configurer les clients et les connexions

Cette section explique comment connecter l'API Cloud Healthcare à vos outils.

Claude code

  1. Installez Claude Code.
  2. Si le fichier .mcp.json n'existe pas, créez-le dans la racine de votre projet.
  3. Ajoutez la configuration, remplacez les variables d'environnement par vos valeurs, puis enregistrez :
            {
              "mcpServers": {
                "healthcare": {
                  "command": "./PATH/TO/toolbox",
                  "args": ["--prebuilt","cloud-healthcare","--stdio"],
                  "env": {
                    "HEALTHCARE_PROJECT": "PROJECT_ID",
                    "HEALTHCARE_REGION": "REGION",
                    "HEALTHCARE_DATASET": "DATASET_ID"
                  }
                }
              }
            }
            
  4. Redémarrez Claude Code pour charger les nouveaux paramètres. Lorsque l'outil se rouvre, il indique que le serveur MCP configuré a été détecté.

Claude desktop

  1. Ouvrez Claude Desktop et accédez à Settings (Paramètres).
  2. Dans l'onglet Developer (Développeur), cliquez sur Edit Config (Modifier la configuration) pour ouvrir le fichier de configuration.
  3. Ajoutez la configuration, remplacez les variables d'environnement par vos valeurs, puis enregistrez :
            {
              "mcpServers": {
                "healthcare": {
                  "command": "./PATH/TO/toolbox",
                  "args": ["--prebuilt","cloud-healthcare","--stdio"],
                  "env": {
                    "HEALTHCARE_PROJECT": "PROJECT_ID",
                    "HEALTHCARE_REGION": "REGION",
                    "HEALTHCARE_DATASET": "DATASET_ID"
                  }
                }
              }
            }
            
  4. Redémarrez Claude Desktop.
  5. Le nouvel écran de chat affiche une icône de marteau (MCP) avec le nouveau serveur MCP.

Cline

  1. Ouvrez l'extension Cline dans VS Code, puis appuyez sur l'icône MCP Servers.
  2. Appuyez sur Configure MCP Servers (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": {
                "healthcare": {
                  "command": "./PATH/TO/toolbox",
                  "args": ["--prebuilt","cloud-healthcare","--stdio"],
                  "env": {
                    "HEALTHCARE_PROJECT": "PROJECT_ID",
                    "HEALTHCARE_REGION": "REGION",
                    "HEALTHCARE_DATASET": "DATASET_ID"
                  }
                }
              }
            }
            

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

Cursor

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

Visual Studio Code (Copilot)

  1. Ouvrez VS Code et créez un répertoire .vscode dans la racine de votre projet s'il n'existe pas.
  2. Si le fichier .vscode/mcp.json n'existe pas, créez-le et ouvrez-le.
  3. Ajoutez la configuration suivante, remplacez les variables d'environnement par vos valeurs, puis enregistrez :
            {
              "servers": {
                "healthcare": {
                  "command": "./PATH/TO/toolbox",
                  "args": ["--prebuilt","cloud-healthcare","--stdio"],
                  "env": {
                    "HEALTHCARE_PROJECT": "PROJECT_ID",
                    "HEALTHCARE_REGION": "REGION",
                    "HEALTHCARE_DATASET": "DATASET_ID"
                  }
                }
              }
            }
            
  4. Actualisez la fenêtre VS Code. L'extension compatible avec MCP détecte automatiquement la configuration et démarre le serveur.

Windsurf

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

Remarque : La variable d'environnement HEALTHCARE_PROJECT spécifie l'ID du projet par défaut Google Cloud que la boîte à outils MCP doit utiliser. Toutes les opérations, telles que la recherche de patients ou la recherche d'instances DICOM, sont exécutées dans ce projet.

Utiliser les outils

Votre outil d'IA est désormais connecté à l'API Cloud Healthcare à l'aide de MCP. Essayez de demander à votre assistant IA de rechercher des patients FHIR, de récupérer des dossiers pour un patient donné, de rechercher une étude DICOM ou de répertorier les magasins DICOM dans l'ensemble de données.

Les outils suivants sont disponibles pour le LLM :

  • get_dataset : récupère les détails d'un ensemble de données.
  • list_datasets : répertorie les ensembles de données de santé dans un projet.
  • list_fhir_stores : répertorie les FHIR Stores dans l'ensemble de données donné.
  • list_dicom_stores : répertorie les magasins DICOM dans l'ensemble de données donné.
  • get_fhir_store : obtient la configuration du FHIR Store spécifié.
  • get_fhir_store_metrics : obtient les métriques associées au FHIR Store.
  • get_fhir_resource : obtient le contenu d'une ressource FHIR.
  • get_fhir_resource_version : obtient le contenu d'une version (actuelle ou historique) d'une ressource FHIR.
  • fhir_patient_everything : récupère une ressource Patient FHIR et les ressources associées à ce patient.
  • fhir_patient_search : recherche des ressources Patient FHIR dans le FHIR Store en fonction des critères spécifiés.
  • get_dicom_store : obtient la configuration du magasin DICOM spécifié.
  • get_dicom_store_metrics : obtient les métriques associées au magasin DICOM.
  • search_dicom_studies : renvoie une liste d'études DICOM correspondantes.
  • search_dicom_series : renvoie une liste de séries DICOM correspondantes.
  • search_dicom_instances : renvoie une liste d'instances DICOM correspondantes.
  • retrieve_dicom_instance_rendered : renvoie un encodage en base64 d'une image rendue au format JPEG pour une instance DICOM associée à l'étude, à la série et à l'UID d'instance SOP donnés.