Configurer le serveur MCP à distance Azure DevOps (préversion)

Azure DevOps Services

Important

Le serveur MCP distant Azure DevOps est actuellement en préversion publique. Les fonctionnalités en préversion peuvent avoir des fonctionnalités limitées et peuvent changer avant la disponibilité générale.

Soutien

  • La prise en charge est actuellement limitée aux problèmes envoyés via le référentiel de serveur MCP local.
  • Pour envoyer une demande de support, créez un problème à l’aide du modèle de problème du serveur MCP distant.

Le serveur MCP distant Azure DevOps est une version hébergée du serveur MCP Azure DevOps MCP qui ne nécessite pas d'installation locale. Au lieu d’exécuter le serveur sur votre ordinateur, vous connectez directement votre assistant IA au point de terminaison hébergé par Azure DevOps à l’aide du transport HTTP streamable.

Le serveur distant offre les mêmes fonctionnalités que le serveur local, notamment l’accès aux éléments de travail, aux demandes de tirage, aux pipelines et bien plus encore, tout en éliminant la complexité de la configuration locale.

Serveur MCP local et distant

Fonctionnalité Serveur MCP distant (préversion) Serveur MCP local
Installation Aucune installation obligatoire Nécessite Node.js 20.0+ et npx
Transport HTTP diffusable en continu Studio
Authentification Microsoft Entra ID (OAuth) Azure DevOps PAT ou Microsoft Entra ID
Hébergement service hébergé Azure DevOps S’exécute localement sur votre ordinateur
Configuration Minimal mcp.json Configuration spécifique à l’environnement
État Aperçu public Généralement disponible

Prerequisites

Catégorie Exigences
Azure DevOps Une organisation active Azure DevOps connectée à Microsoft Entra ID
Permissions Appartenance au projet et accès aux ressources que vous souhaitez interroger
Environnement Un environnement assistant IA pris en charge (voir Environnements pris en charge)

configuration de mcp.json

{
  "servers": {
    "ado-remote-mcp": {
      "url": "https://mcp.dev.azure.com/{organization}",
      "type": "http"
    }
  },
  "inputs": []
}

Vous pouvez également omettre le nom de l’organisation à partir de l’URL. Toutefois, si vous omettez le nom de l’organisation, vous devez le fournir comme contexte dans chaque appel d’outil.

{
  "servers": {
    "ado-remote-mcp": {
      "url": "https://mcp.dev.azure.com/",
      "type": "http"
    }
  },
  "inputs": []
}

Ensembles d’outils

Spécifiez des ensembles d’outils pour restreindre les outils disponibles pour le serveur MCP. Ne doit pas être combiné avec X-MCP-Tools.

{
  "servers": {
    "ado-remote-mcp": {
      "url": "https://mcp.dev.azure.com/{organization}",
      "type": "http",
      "headers": {
        "X-MCP-Toolsets": "repos,wiki,wit"
      }
    }
  },
  "inputs": []
}
Valeur de l’ensemble d’outils Outils inclus
all (par défaut) Tous les outils de chaque ensemble d’outils
repos Outils de dépôt et pull request (repo_*)
wit Outils pour les éléments de travail (wit_*) et search_workitem
pipelines Outils de pipeline et de build (pipelines_*)
wiki Outils Wiki (wiki, wiki_upsert_page) et search_wiki
work Outils d’itération et de capacité (work_*)
testplan Outils de plan de test (testplan_*)

Outils en mode lecture seule

Utilisez l’en-tête X-MCP-Readonly pour restreindre le serveur aux opérations en lecture seule. Cette restriction est utile lorsque vous souhaitez empêcher les modifications apportées aux ressources Azure DevOps.

{
  "servers": {
    "ado-remote-mcp": {
      "url": "https://mcp.dev.azure.com/{organization}",
      "type": "http",
      "headers": {
        "X-MCP-Readonly": "true"
      }
    }
  },
  "inputs": []
}

Combiner des ensembles d’outils et un filtrage en lecture seule

{
  "servers": {
    "ado-remote-mcp": {
      "url": "https://mcp.dev.azure.com/{organization}",
      "type": "http",
      "headers": {
        "X-MCP-Toolsets": "repos,wiki,wit",
        "X-MCP-Readonly": "true"
      }
    }
  },
  "inputs": []
}

Outils individuels

Utilisez l’en-tête X-MCP-Tools pour activer uniquement des outils spécifiques. Ne doit pas être combiné avec X-MCP-Toolsets.

{
  "servers": {
    "ado-remote-mcp": {
      "url": "https://mcp.dev.azure.com/{organization}",
      "type": "http",
      "headers": {
        "X-MCP-Tools": "core_list_projects, wit_my_work_items, wit_get_work_items_batch_by_ids"
      }
    }
  },
  "inputs": []
}

Membres du programme Insider

À mesure que nous expérimentons et introduisons de nouveaux outils et mises à jour pour les éléments existants, vous pouvez accéder rapidement à ces modifications à l’aide de l’en-tête X-MCP-Insiders .

{
  "servers": {
    "ado-remote-mcp": {
      "url": "https://mcp.dev.azure.com/{organization}",
      "type": "http",
      "headers": {
        "X-MCP-Insiders": "true"
      }
    }
  },
  "inputs": []
}

Outils disponibles

Note

Cette liste peut ne pas toujours refléter les mises à jour d’outils les plus récentes.

Outils de base

Les outils de base sont toujours disponibles.

Outil Description
core_list_projects Répertorier les projets dans une organisation
core_list_project_teams Répertorier les équipes dans un projet

Travail

Outil Description Lecture seule
work_list_team_iterations Répertorier les itérations pour une équipe.
work_list_iterations Répertorier toutes les itérations dans un projet.
work_get_team_capacity Obtenir la capacité d’équipe pour une itération.
work_create_iterations Créez des itérations.
work_assign_iterations Affectez des itérations à une équipe.

Repos

Les outils de référentiel sont consolidés dans des dispatchers groupés avec le paramètre action, en suivant le même modèle que les outils wiki. Les noms d’outils individuels précédents continuent de fonctionner en tant qu’alias. Utiliser repo_create_branch et repo_search_commits directement — ils n’ont pas été consolidés.

Outil Action Description Lecture seule
repo_pull_request get Obtenir un pull request par ID
repo_pull_request list Lister les pull requests dans un référentiel ou un projet
repo_pull_request list_by_commits Rechercher des pull requests contenant des ID de validation spécifiques
repo_pull_request_thread list Lister les threads de commentaires sur un pull request
repo_pull_request_thread list_comments Répertorier les commentaires dans un thread spécifique
repo_repository get Obtenir un référentiel par nom ou ID
repo_repository list Répertorier les référentiels dans un projet
repo_branch get Obtenir la branche par son nom
repo_branch list Répertorier les branches dans un référentiel
repo_branch list_mine Lister les branches que l'utilisateur actuel a poussées
repo_file get_content Obtenir le contenu texte d’un fichier à partir d'une branche, d'un tag ou d'une validation spécifique.
repo_file list_directory Répertorier les fichiers et dossiers d’un répertoire, avec une liste récursive facultative
repo_search_commits N/A Rechercher des validations avec filtrage par texte, auteur, plage de dates, etc.
repo_pull_request_write create Créer une pull request
repo_pull_request_write update Mettre à jour une pull request, y compris la définition de l'autocomplétion
repo_pull_request_write update_reviewers Ajouter ou retirer des réviseurs de pull request
repo_pull_request_write vote Voter sur un pull request
repo_pull_request_thread_write create Créer un nouveau fil de discussion sur une requête de tirage
repo_pull_request_thread_write reply Répondre à un commentaire dans un thread
repo_pull_request_thread_write update_status Mettre à jour l’état d’un thread de commentaire
repo_create_branch Créer une branche

Esprit

Les outils liés aux éléments de travail sont consolidés dans des répartiteurs regroupés en utilisant un paramètre action, suivant le même modèle que celui des outils de dépôt et de pipeline. Les noms d’outils individuels précédents continuent de fonctionner en tant qu’alias. Utiliser search_workitem directement : elle n’a pas été consolidée.

Outil Action Description Lecture seule
wit_work_item get Récupérer un élément de travail par identifiant
wit_work_item get_batch Obtenir plusieurs éléments de travail par IDs
wit_work_item list_comments Répertorier les commentaires sur un élément de travail
wit_work_item my Obtenir les éléments de travail pertinents pour l’utilisateur authentifié
wit_work_item list_revisions Répertorier les révisions d’un élément de travail
wit_work_item list_for_iteration Répertorier les éléments de travail pour une itération d’équipe
wit_work_item get_type Obtenir des métadonnées pour un type d’élément de travail
wit_query get Obtenir une requête par ID ou chemin d’accès
wit_query get_results Exécuter une requête enregistrée
wit_backlog list Répertorier les niveaux de backlog pour une équipe
wit_backlog list_work_items Répertorier les éléments de travail dans un niveau de backlog spécifique
search_workitem N/A Recherche d’éléments de travail en texte intégral
wit_work_item_write create Créer un élément de travail
wit_work_item_write update Mettre à jour des champs sur un élément de travail
wit_work_item_write update_batch Mettre à jour plusieurs éléments de travail dans un seul appel
wit_work_item_write add_child Créer des éléments de travail enfants sous un parent
wit_work_item_comment_write add Ajouter un commentaire à un élément de travail
wit_work_item_comment_write update Mettre à jour un commentaire existant sur un élément de travail
wit_work_item_link_write link Lier deux éléments de travail
wit_work_item_link_write unlink Supprimer des liens d’un élément de travail
wit_work_item_link_write link_to_pull_request Associer un élément de travail à une pull request
wit_work_item_link_write add_artifact_link Ajouter un dépôt, une branche, un commit ou un artefact de build à un élément de travail

Note

wit_query_by_wiql est disponible uniquement pour les MCP Insiders actuellement, à l’aide de l’en-tête X-MCP-Insiders.

Pipelines

Les outils de pipeline sont consolidés dans des répartiteurs regroupés à l’aide d’un action paramètre, en suivant le même modèle que les outils wiki et de dépôt. Les noms d’outils individuels précédents continuent de fonctionner en tant qu’alias.

Outil Action Description Lecture seule
pipelines_build list Répertorier les builds avec des filtres facultatifs
pipelines_build get_status Obtenir l’état, les problèmes et les métadonnées de rapport pour une build
pipelines_build get_changes Obtenez des validations et des éléments de travail associés à une compilation
pipelines_build_log list Répertorier les journaux disponibles pour une build
pipelines_build_log get_content Obtenir le contenu texte d’un journal spécifique par ID
pipelines_definition list Répertorier les définitions de pipeline avec des filtres facultatifs
pipelines_definition list_revisions Répertorier l’historique des révisions pour une définition de pipeline
pipelines_run get Obtenir une seule exécution de pipeline
pipelines_run list Répertorier les exécutions d’un pipeline
pipelines_artifact list Répertorier les artefacts d’une build
pipelines_artifact download Télécharger un artefact de construction nommé
pipelines_write run_pipeline Mettre en file d’attente une nouvelle exécution de pipeline
pipelines_write create_pipeline Créer une définition de pipeline YAML
pipelines_write update_build_stage Annuler, réessayer ou exécuter une étape sur une build en cours

Wiki

Les opérations de lecture wiki sont consolidées dans un seul wiki outil. Utilisez le action paramètre pour sélectionner l’opération.

Outil Action Description Lecture seule
wiki list_wikis Répertorier des wikis dans un projet ou une organisation
wiki get_wiki Obtenir un wiki par identificateur
wiki list_pages Répertorier les pages dans un wiki
wiki get_page Obtenir le contenu et les métadonnées de la page
search_wiki Recherche wiki en texte intégral
wiki_upsert_page Créer ou mettre à jour une page wiki

Plans de test

Outil Description Lecture seule
testplan_list_test_plans Répertoriez les plans de test dans un projet.
testplan_list_test_suites Répertorier les suites de tests dans un plan de test.
testplan_list_test_cases Répertorier les cas de test dans une suite.
testplan_show_test_results_from_build_id Obtenez les résultats des tests d'une version.
testplan_create_test_plan Créez un plan de test.
testplan_create_test_suite Créez une suite de tests.
testplan_create_test_case Créez un cas de test.
testplan_update_test_case_steps Mettre à jour les étapes de cas de test.
testplan_add_test_cases_to_suite Ajoutez des cas de test à une suite.
Outil Description Lecture seule
search_code Recherche de code en texte intégral.
search_wiki Recherche wiki en texte intégral.
search_workitem Recherche en texte intégral d’élément de travail.

Environnements pris en charge

Le serveur MCP à distance Azure DevOps nécessite que votre compte d’utilisateur et votre organisation Azure DevOps se connectent à Microsoft Entra ID.

Tous les clients MCP ne prennent pas en charge l’authentification Entra par défaut. Certains environnements nécessitent des étapes supplémentaires pour inscrire l’application cliente.

Les environnements actuellement pris en charge sont les suivants :

  • Visual Studio Code
  • Visual Studio

Visual Studio Code

Pour configurer le serveur MCP distant dans Visual Studio Code :

  1. Ajoutez un fichier .vscode/mcp.json à votre référentiel avec la configuration mcp.json indiquée précédemment.
  2. Enregistrez le fichier.
  3. Ouvrez GitHub Copilot dans VS Code.
  4. Lorsque vous y êtes invité, authentifiez-vous à l’aide de votre compte Microsoft Entra et sélectionnez votre compte.

Une fois l’authentification terminée, une liste d’outils disponibles s’affiche.

Visual Studio (2022 et versions ultérieures)

Configurez le serveur MCP distant dans Visual Studio en ajoutant l’URL du serveur à vos paramètres MCP. Pour plus d’informations, consultez Utiliser des serveurs MCP dans Visual Studio.

Vérifier la connexion

Après l’installation, vérifiez que le serveur MCP distant fonctionne en posant à votre assistant IA une question sur vos données Azure DevOps.

Exemples :

  • « Répertorier les projets dans mon organisation Azure DevOps. »
  • « Afficher mes tâches assignées. »
  • « Quelles pull requests nécessitent ma révision ? »

Si l’Assistant IA retourne les résultats de votre organisation Azure DevOps, le serveur MCP distant est configuré correctement.

Résolution des problèmes

Problème Résolution
Échec de l’authentification Vérifiez vos informations d’identification Microsoft Entra et vérifiez que vous avez accès à l’organisation Azure DevOps.
Serveur introuvable Vérifiez le format d’URL du serveur : https://mcp.dev.azure.com/{organization}.
Aucune donnée retournée Vérifiez que vous disposez des autorisations appropriées pour le projet ou les ressources interrogées.
Préversion non disponible La préversion est déployée progressivement. Vérifiez ultérieurement ou contactez l’administrateur de votre organisation.

Pour la prise en charge, vous pouvez soumettre un problème dans le dépôt MCP du serveur local. Veillez à utiliser le modèle de problème distant.

Questions fréquentes (FAQ)

Qu’en est-il des autres clients tels que GitHub Copilot CLI, Claude Desktop, Claude Code, CodeX ou Cursor ?

D’autres outils clients tels que CodeX, Claude Desktop, Claude Code et ChatGPT nécessitent l’inscription dynamique d’un ID client OAuth dans Entra avant de pouvoir être utilisés avec le serveur MCP. Nous travaillons en étroite collaboration avec l’équipe Entra pour permettre cette fonctionnalité. Pour l’instant, seules les Visual Studio et les Visual Studio Code sont prises en charge.

Quels services peuvent utiliser Azure DevOps serveur MCP ?

La prise en charge d’autres services, notamment Azure AI Foundry, Microsoft 365 Copilot et Copilot Studio, n’est pas encore disponible, mais sera bientôt ajoutée.

Le serveur MCP Azure DevOps prend-il en charge l’AgentId ?

AgentId sera bientôt pris en charge.