Tutoriel : Régir l'accès MCP d'un agent de codage GitHub

Important

Cette fonctionnalité est en version bêta. Les administrateurs de compte peuvent gérer l’accès à cette fonctionnalité à partir de la page Aperçus de la console de compte. Consultez Gérer les préversions d’Azure Databricks.

Dans ce tutoriel, vous régissez l'accès d'un agent de codage à GitHub à l'aide du catalogue Unity et de la passerelle IA. Supposons que votre équipe utilise un agent de programmation tel que Claude Code ou Cursor avec le serveur MCP de GitHub, et que vous souhaitiez que les développeurs puissent lire les dépôts et ouvrir des pull requests via l’agent, sans jamais pouvoir effectuer de pushs forcés ni supprimer quoi que ce soit, tout en auditant chaque appel d’outil.

Vous utilisez le service MCP prédéfini system.ai.github fourni Azure Databricks, de sorte que vous n'hébergez pas ou n'inscrivez pas de serveur MCP ou créez une connexion de catalogue Unity. Vous attachez une stratégie de service intégrée pour bloquer les opérations d’écriture, accorder à votre équipe l’accès, connecter un agent de codage et confirmer que chaque appel d’outil est journalisé.

Prerequisites

  • Un espace de travail activé pour le catalogue Unity. Consultez Bien démarrer avec Unity Catalog.
  • La préversion de Unity AI Gateway et les services MCP en préversion proposés par Databricks activés pour votre compte. Consultez Gérer les préversions d’Azure Databricks.
  • Les privilèges suivants sur le service intégré system.ai.github :
    • MANAGE, pour associer une stratégie de service.
    • EXECUTE, pour invoquer le service et accorder l’accès à d’autres.
  • L’interface CLI Azure Databricks, authentifiée auprès de votre espace de travail.

Étape 1 : Bloquer les opérations destructrices avec une stratégie intégrée

Le service MCP system.ai.github donne accès aux outils de lecture de GitHub et, par défaut, refuse l’accès aux outils d’écriture. Pour garantir cette garantie explicite et régie, attachez la stratégie intégrée system.ai.github_policy à l’option disallow_writes . Les stratégies intégrées sont gérées par la plateforme : vous référencez le gestionnaire au lieu d’écrire votre propre fonction.

databricks api patch \
  "/api/2.1/unity-catalog/mcp-services/system.ai.github?update_mask=config.service_policies" \
  --json '{
    "config": {
      "service_policies": [
        {
          "name": "block_github_writes",
          "policy_type": "POLICY_TYPE_BUILTIN",
          "handler": "system.ai.github_policy",
          "options": { "disallow_writes": "true" }
        }
      ]
    }
  }'

Une fois la stratégie appliquée, toute requête tools/call visant un outil d’écriture (c’est-à-dire un outil qui n’est pas marqué comme étant en lecture seule) est rejetée, tandis que les outils de lecture et de gestion des pull requests continuent de fonctionner. Pour plus d’informations sur les services et stratégies intégrés, consultez les services MCP fournis par Databricks et les stratégies de service pour les éléments sécurisables d’IA.

Étape 2 : Partager le service MCP avec votre équipe

Par défaut, seules les entités disposant de EXECUTE peuvent invoquer le service. Pour accorder à votre équipe de développeur l’accès à partir de l’interface utilisateur :

  1. Dans AI Gateway, accédez à l’onglet MCPs et sélectionnez le service MCP à partager, par exemple system.ai.github.
  2. Accédez à l’onglet Autorisations.
  3. Cliquez sur Accorder.
  4. Spécifiez le principal à autoriser à appeler le service MCP, par dev_teamexemple, sélectionnez le privilège EXECUTE , puis cliquez sur Confirmer.

Note

Pour accorder l’accès à un service MCP dans system.ai, un administrateur du metastore doit d’abord s’octroyer MANAGE sur le schéma system.ai.

Étape 3 : Connecter votre agent de codage

Dirigez votre agent de développement vers le point de terminaison MCP de la passerelle d’IA pour le service intégré :

https://<workspace-url>/ai-gateway/mcp-services/system.ai.github

Chaque développeur s’authentifie auprès de Azure Databricks et doit avoir EXECUTE sur le service MCP. Pour connaître les étapes de configuration propres à chaque agent pour Claude Code, Cursor et d’autres outils, consultez Connecter des MCP à des assistants IA et à des agents de codage. Pour obtenir des exemples d’appel, y compris le SDK OpenAI Agents, consultez Appeler le service MCP.

Étape 4 : Confirmer que l’activité est régie et journalisée

Vérifiez que la gouvernance fonctionne à partir des deux extrémités :

  • Application de la stratégie : depuis l’agent, un outil de lecture ou de gestion des pull requests s’exécute correctement, tandis qu’un outil d’écriture est rejeté avec une erreur de stratégie.

  • Journalisation de l’utilisation : interrogez la table système d’utilisation pour confirmer que les appels sont enregistrés :

    SELECT service_name, mcp_metadata.tool_name AS tool_name, status_code, COUNT(*) AS calls
    FROM system.ai_gateway.usage
    WHERE service_type = 'MCP_SERVICE'
      AND service_name = 'system.ai.github'
    GROUP BY service_name, mcp_metadata.tool_name, status_code
    ORDER BY calls DESC;
    

Pour plus d’informations sur la surveillance, consultez Surveiller l’utilisation.

Étapes suivantes