Konfigurera fjärrservern Azure DevOps MCP

Azure DevOps-tjänster

Den fjärranslutna Azure DevOps MCP-servern är en värdbaserad version av Azure DevOps MCP Server som inte kräver någon lokal installation. I stället för att köra servern på datorn ansluter du AI-assistenten direkt till den Azure DevOps-värdbaserade slutpunkten med hjälp av strömmande HTTP-transport.

Välj distansarbete i första hand

Använd den fjärranslutna MCP-servern när din miljö stöder den. Fjärrservern är det rekommenderade alternativet eftersom Azure DevOps värdar och uppdaterar den och du inte behöver installera Node.js eller hantera en lokal serverprocess.

Använd den lokala MCP-servern när klienten inte kan autentisera till fjärrservern med Microsoft Entra ID. Den här begränsningen gäller för närvarande för klienter som Claude Desktop och Codex. Cursor och Claude Code kräver en anpassad Microsoft Entra-appregistrering för autentisering. Anvisningar för lokal installation finns i Aktivera AI-hjälp med Azure DevOps MCP-server.

Feature Fjärr-MCP-server Lokal MCP-server
Installation Ingen installation krävs Kräver Node.js 20.0+ och npx
Transport Strömmande HTTP stdio
autentisering Microsoft Entra ID (OAuth) Azure DevOps PAT eller Microsoft Entra ID
Webbhotell Azure DevOps värdbaserad tjänst Körs lokalt på datorn
Konfiguration Minimal mcp.json Miljöspecifik konfiguration

Förutsättningar

Kategori Requirements
Azure DevOps En aktiv Azure DevOps organisation som backas upp av en Microsoft Entra klientorganisation. Fristående Microsoft-konto organisationer (MSA) stöds inte för fjärranvändning av MCP Server.
Behörigheter Medlemskap i projektet och åtkomst till de resurser du vill fråga
Miljö En AI-assistentmiljö som stöds (se Miljöer som stöds)

Konfiguration av mcp.json

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

Du kan också utelämna organisationsnamnet från URL:en. Men om du utelämnar organisationsnamnet måste du ange det som kontext i varje verktygsanrop.

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

Verktygsuppsättningar

Ange verktygsuppsättningar för att begränsa de verktyg som är tillgängliga för MCP-servern. Ska inte kombineras med X-MCP-Tools.

{
  "servers": {
    "ado-remote-mcp": {
      "url": "https://mcp.dev.azure.com/{organization}",
      "type": "http",
      "headers": {
        "X-MCP-Toolsets": "repos,wiki,wit"
      }
    }
  },
  "inputs": []
}
Verktygsvärde Inkluderade verktyg
all (standard) Alla verktyg
repos Verktyg för lagringsplats och pull-begäran
advsec Aviseringsverktyg för avancerad säkerhet
wit Verktyg för arbetsobjekt och search_workitem
pipelines Flödes- och byggverktyg
wiki Wiki-verktyg och search_wiki
work Itererings- och kapacitetsverktyg
testplan Verktyg för testplaner
elm Enterprise Live Migration-verktyg (förhandsversion, aktiverad som standard)

Skrivskyddade verktyg

Använd X-MCP-Readonly-huvudet för att begränsa servern till skrivskyddade åtgärder. Den här begränsningen är användbar när du vill förhindra ändringar av Azure DevOps resurser.

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

Kombinera verktygsuppsättningar och skrivskyddad filtrering

{
  "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": []
}

Enskilda verktyg

X-MCP-Tools Använd rubriken om du bara vill aktivera specifika verktyg. Ska inte kombineras med X-MCP-Toolsets.

Ange verktygsnamn som visas i listan över tillgängliga verktyg . För konsoliderade verktyg som wit_work_itemväljer du åtgärden med hjälp av verktygets action parameter när du anropar den.

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

Insiders

När vi experimenterar och introducerar nya verktyg och uppdateringar för befintliga kan du få tidig åtkomst till dessa ändringar med hjälp X-MCP-Insiders av rubriken.

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

Tillgängliga verktyg

Anmärkning

Den här listan kanske inte alltid återspeglar de senaste verktygsuppdateringarna.

Kärnverktyg

Kärnverktyg är alltid tillgängliga om inget annat anges.

Verktyg Beskrivning
core_list_orgs Lista Azure DevOps organisationer som den autentiserade användaren har åtkomst till
core_list_projects Lista projekten i en organisation
core_list_project_teams Lista grupper i ett projekt
core_list_group_members Visa en lista över direkta medlemmar och underordnade grupper i en Azure DevOps grupp

Anmärkning

Endast MCP Insiders kan använda core_list_group_members med hjälp X-MCP-Insiders av rubriken.

Arbete

Arbetsverktygen konsolideras i grupperade dispatchers med hjälp av en action parameter.

Verktyg Action Beskrivning skrivskyddad
work list_iterations Visa en lista över alla iterationer i ett projekt ✅
work list_team_iterations Lista iterationer som tilldelats ett team ✅
work get_team_settings Hämta gruppinställningar, inklusive standarditerationen, backloggiterationen och standardsökvägen för område ✅
work get_team_capacity Hämta teamkapacitet för en iteration ✅
work get_iteration_capacities Hämta kapaciteten för en iteration för alla team i iterationen och projektet ✅
work_iteration_write create Skapa iterationer ❌
work_iteration_write assign Tilldela iterationer till ett team ❌
work_capacity_write update Uppdatera teamkapaciteten för en gruppmedlem för en specifik iteration ❌

Repos

Lagringsplatsverktygen samlas i grupperade anropshanterare med parametern action.

Verktyg Action Beskrivning skrivskyddad
repo_pull_request get Hämta en pull request med ID ✅
repo_pull_request list Lista pull-begäranden i en lagringsplats eller ett projekt ✅
repo_pull_request list_by_commits Hitta pull request som innehåller specifika commit-ID:n ✅
repo_pull_request get_changes Hämta filändringar och valfria radvisa diffar för en pull request-iteration ✅
repo_pull_request_thread list Lista kommentarstrådar på en pull-begäran ✅
repo_pull_request_thread list_comments Visa kommentarer i en specifik tråd ✅
repo_repository get Hämta en lagringsplats efter namn eller ID ✅
repo_repository list Lista lagringsplatser i ett projekt ✅
repo_branch get Hämta en gren efter namn ✅
repo_branch list Visa en lista över grenar på en lagringsplats ✅
repo_branch list_mine Lista grenar som den aktuella användaren har pushat till ✅
repo_file get_content Hämta textinnehållet i en fil vid en specifik gren, tagg eller commit. ✅
repo_file list_directory Visa en lista över filer och mappar i en katalog med valfri rekursiv lista ✅
repo_search_commits Sök åtaganden med filtrering efter text, författare, datumintervall och mer ✅
search_code Fulltextkodssökning ✅
repo_pull_request_write create Skapa en pull-begäran ❌
repo_pull_request_write update Uppdatera en pull-förfrågan, inklusive att ställa in automatisk komplettering ❌
repo_pull_request_write update_reviewers Lägga till eller ta bort granskare av pull-begäranden ❌
repo_pull_request_write vote Rösta på en dragbegäran ❌
repo_pull_request_thread_write create Skapa en ny kommentarstråd i en pull-förfrågan ❌
repo_pull_request_thread_write reply Svara på en kommentar i en tråd ❌
repo_pull_request_thread_write update_status Uppdatera status för en kommentarstråd ❌
repo_create_branch Skapa en gren ❌

Wit

Arbetsobjektverktygen konsolideras i grupperade dispatchers med hjälp av en action parameter.

Verktyg Action Beskrivning skrivskyddad
wit_work_item get Hämta ett arbetsobjekt efter ID ✅
wit_work_item get_batch Hämta flera arbetsobjekt efter ID:t ✅
wit_work_item list_comments Visa en lista med kommentarer om ett arbetsobjekt ✅
wit_work_item my Hämta arbetsobjekt som är relevanta för den autentiserade användaren ✅
wit_work_item list_revisions Visa en lista över revisioner av ett arbetsobjekt ✅
wit_work_item list_for_iteration Visa en lista över arbetsobjekt för en team-iteration ✅
wit_work_item get_type Hämta metadata för en typ av arbetsobjekt ✅
wit_query get Hämta en fråga efter ID eller sökväg ✅
wit_query get_results Köra en sparad fråga ✅
wit_query search Sök frågor efter namn ✅
wit_query list Lista rotmappar för frågor och deras underordnade mappar ✅
wit_query_by_wiql Köra en WIQL-fråga och returnera matchande arbetsobjekt ✅
wit_backlog list Lista kvarvarande nivåer för ett team ✅
wit_backlog list_work_items Lista arbetsobjekt på en specifik backlognivå ✅
search_workitem Fulltextsökning av arbetsobjekt ✅
wit_work_item_write create Skapa ett nytt arbetsobjekt ❌
wit_work_item_write update Uppdatera fält på ett arbetsobjekt ❌
wit_work_item_write update_batch Uppdatera flera arbetsobjekt i ett anrop ❌
wit_work_item_write add_child Skapa underordnade arbetsobjekt under en överordnad ❌
wit_work_item_comment_write add Lägga till en kommentar i ett arbetsobjekt ❌
wit_work_item_comment_write update Uppdatera en befintlig kommentar om ett arbetsobjekt ❌
wit_work_item_link_write link Länka två arbetsobjekt ❌
wit_work_item_link_write unlink Ta bort länkar från ett arbetsobjekt ❌
wit_work_item_link_write link_to_pull_request Länka ett arbetsobjekt till en pull-begäran ❌
wit_work_item_link_write add_artifact_link Lägg till en länk till en lagringsplats, gren, commit, bygge eller wikiartefakt i ett arbetsobjekt ❌
wit_work_item_attachment Ladda ned en bilaga till ett arbetsobjekt med ID; returnerar base64-kodat innehåll med filnamn och MIME-typ ✅
wit_work_item_attachment_upload Ladda upp filinnehåll (upp till 20 MB, Base64-kodat) till arkivet för bifogade filer utan att koppla det till ett arbetsobjekt ❌
wit_work_item_attachment_link Länka en tidigare uppladdad bifogad fil till ett arbetsobjekt ❌

Anmärkning

wit_query_by_wiql är för närvarande endast tillgängligt för MCP Insiders med hjälp av rubriken X-MCP-Insiders.

Pipelines

Pipelineverktygen konsolideras till grupperade dispatchers med hjälp av parametern action.

Verktyg Action Beskrivning skrivskyddad
pipelines_build list Lista versioner med valfria filter ✅
pipelines_build get_status Hämta status, problem och rapportmetadata för en version ✅
pipelines_build get_changes Hämta incheckningar och arbetsobjekt som är associerade med ett build ✅
pipelines_build_log list Lista tillgängliga loggar för en build ✅
pipelines_build_log get_content Hämta textinnehållet i en specifik logg efter ID ✅
pipelines_definition list Lista pipelinedefinitioner med valfria filter ✅
pipelines_definition list_revisions Visa en lista över revisionshistorik för en pipelinedefinition ✅
pipelines_run get Hämta en enda pipelinekörning ✅
pipelines_run list Lista körningar för en pipeline ✅
pipelines_artifact list Lista artefakter för en build ✅
pipelines_artifact download Ladda ned en namngiven byggartefakt ✅
pipelines_write run_pipeline Schemalägg en ny pipelinekörning ❌
pipelines_write create_pipeline Skapa en ny YAML-pipelinedefinition ❌
pipelines_write update_build_stage Avbryt, försök igen eller kör en fas i ett bygge under flygning ❌

Wiki

Wiki-läsåtgärderna konsolideras till ett enda wiki verktyg. Använd parametern action för att välja åtgärden.

Verktyg Action Beskrivning skrivskyddad
wiki list_wikis Lista wikis i ett projekt eller en organisation ✅
wiki get_wiki Hämta en wiki efter identifierare ✅
wiki list_pages Visa en lista över sidor i en wiki ✅
wiki get_page Hämta sidinnehåll och metadata ✅
search_wiki Wiki-sökning i fulltext ✅
wiki_upsert_page Skapa eller uppdatera en wiki-sida ❌

Testplaner

Testplansverktygen konsolideras i grupperade dispatchers med hjälp av en action parameter.

Verktyg Action Beskrivning skrivskyddad
testplan list_plans Lista testplaner i ett projekt ✅
testplan list_suites Visa en lista över testpaket under en testplan ✅
testplan list_cases Lista testfall i en testsvit ✅
testplan_show_test_results_from_build_id Hämta testresultat från en build ✅
testplan_test_run get_results Hämta resultat för en testkörning med valfria filter för detaljnivå och utfall ✅
testplan_test_plan_write create Skapa en testplan ❌
testplan_test_suite_write create Skapa en testsvit ❌
testplan_test_suite_write add_test_cases Lägga till testfall i en svit ❌
testplan_test_case_write create Skapa ett testfall ❌
testplan_test_case_write update_steps Uppdatera steg i testfall ❌
testplan_test_run_write create_run Skapa en testomgång för manuell testkörning ❌
testplan_test_run_write update_results Uppdatera resultat och information för testresultat i en körning ❌
testplan_test_run_write complete_run Slutför eller avbryt en testkörning baserat på dess resultat ❌
testplan_test_run_write update_test_point_outcome Uppdatera eller återställa resultat för testpunkter ❌

Avancerad säkerhet

Advanced Security-verktygen konsolideras till en grupperad dispatcher som använder en action parameter.

Verktyg Action Beskrivning skrivskyddad
advsec_alerts list Lista avancerade säkerhetsaviseringar för en lagringsplats med valfria filter ✅
advsec_alerts get Hämta en avisering om avancerad säkerhet med ID ✅

Enterprise Live Migration (förhandsversion)

Enterprise Live Migration-verktygen använder en action parameter för att gruppera och skicka uppgifter. Läs mer om förhandsversionen av Enterprise Live Migration.

Viktigt!

ELM-stöd i den fjärranslutna Azure DevOps MCP-servern är för närvarande i förhandsversion. Verktygen är aktiverade som standard.

Verktyg Action Beskrivning skrivskyddad
enterprise_live_migration list Lista migreringar för organisationen; valfritt projektfilter och includeAllMigrations-flagga ✅
enterprise_live_migration get Hämta migreringsstatus för en lagringsplats ✅
enterprise_live_migration get_cutover_review Hämta misslyckade eller blockerade objekt före cutover ✅
enterprise_live_migration get_device_flow_config Hämta konfiguration för GitHub App-enhetsflödet ✅
enterprise_live_migration list_pipelines Visa en lista över pipelines och ändra status ✅
enterprise_live_migration_write create Skapa en ny migrering ❌
enterprise_live_migration_write pause Pausa en aktiv migrering ❌
enterprise_live_migration_write resume Återuppta en pausad migrering ❌
enterprise_live_migration_write cutover_set Schemalägg ett övergångsdatum ❌
enterprise_live_migration_write cutover_cancel Avbryt en schemalagd övergång ❌
enterprise_live_migration_write approve_cutover Acceptera fel och fortsätt med övergången ❌
enterprise_live_migration_write abandon Ta bort en migrering permanent ❌
enterprise_live_migration_pipelines_write submit Skicka pipelines för omkoppling ❌
enterprise_live_migration_pipelines_write update Uppdatera konfigurationen för pipelineomkoppling ❌
enterprise_live_migration_pipelines_write delete Ta bort alla pipeline-kloner för en terminalmigrering ❌

Om du endast vill göra Enterprise Live Migration-verktygen tillgängliga använder du headern X-MCP-Toolsets med värdet elm:

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

Miljötyper som stöds

Den fjärranslutna Azure DevOps MCP-servern kräver att ditt användarkonto och Azure DevOps organisation ansluter till Microsoft Entra ID.

Alla MCP-klienter stöder inte Microsoft Entra autentisering som standard. Vissa miljöer kräver extra steg för att registrera klientprogrammet.

Miljöer som stöds för fjärrslutpunkten, när Microsoft Entra autentisering är tillgänglig, inkluderar:

  • Visual Studio med GitHub Copilot
  • Visual Studio
  • Microsoft Foundry
  • Microsoft Copilot Studio
  • GitHub Copilot CLI
  • GitHub Copilot-appen
  • Cursor-datorapp, Cursor Cloud Agents eller Claude Code med en anpassad Microsoft Entra-appregistrering

Viktigt!

Claude Desktop och Codex stöder för närvarande inte det Microsoft Entra autentiseringsflöde som krävs av den fjärranslutna Azure DevOps MCP-servern. Använd den lokala MCP-servern med dessa klienter.

Visual Studio Code

Så här konfigurerar du den fjärranslutna MCP-servern i Visual Studio Code:

  1. Lägg till en .vscode/mcp.json-fil på lagringsplatsen med den mcp.json-konfiguration som visats tidigare.
  2. Spara filen.
  3. Öppna GitHub Copilot i VS Code.
  4. När du uppmanas till det autentiserar du med ditt Microsoft Entra konto och väljer ditt konto.

När autentiseringen är klar visas en lista över tillgängliga verktyg.

Visual Studio (2022 och senare)

Konfigurera den fjärranslutna MCP-servern i Visual Studio genom att lägga till server-URL:en i MCP-inställningarna. Mer information finns i Använda MCP-servrar i Visual Studio.

Välj OAuth-omfång för anpassade klienter

När du registrerar en anpassad MCP-klient beviljar du endast de delegerade behörigheter som krävs för de Azure DevOps åtgärder som klienten utför. OAuth-omfång avgör vilka Azure DevOps resurser och åtgärder som klienten kan komma åt. Att aktivera ett MCP-verktyg eller en verktygsuppsättning ger inte ytterligare behörigheter.

Följ principen om lägsta behörighet:

  • Bevilja läsbehörigheter när klienten endast använder MCP-verktyg med endast läsåtkomst.
  • Bevilja endast skriv- eller hanteringsbehörigheter när klienten behöver motsvarande skrivåtgärder.
  • Granska ärvda omfång för att undvika att bevilja redundanta behörigheter.

Information om tillgängliga behörigheter och relationerna mellan dem finns i OAuth-behörigheter.

OAuth-omfång åsidosätter inte behörigheterna för den inloggade användaren. En MCP-åtgärd lyckas bara när både programmets omfång och användarens Azure DevOps behörigheter tillåter det.

Cursor

Cursor kräver en anpassad appregistrering i Microsoft Entra för att få åtkomst till den fjärranslutna Azure DevOps MCP-servern.

Registrera programmet för Cursor Desktop

  1. Bekräfta att det Azure DevOps MCP-företagsprogrammet har etablerats i din klientorganisation. Om du inte hittar det, se Det går inte att hitta Azure DevOps MCP-företagsappen i klienten.
  2. I Microsoft Entra administrationscenter går du till App registrations och skapar sedan en appregistrering.
  3. I appregistreringen väljer du Autentisering (förhandsversion)>Lägg till omdirigerings-URI>Mobile- och skrivbordsprogram.
  4. Ange http://localhost:8787/callback som omdirigerings-URI och spara sedan ändringarna.
  5. På sidan Autentisering (förhandsversion) väljer du fliken Inställningar och aktiverar sedan Tillåt offentliga klientflöden.
  6. På sidan API-behörigheter väljer du Lägg till en behörighet>API:er som min organisation använder.
  7. Sök efter Azure DevOps MCP eller program-ID 2a72489c-aab2-4b65-b93a-a91edccf33b8och välj sedan programmet.
  8. Välj de delegerade behörigheter som klienten behöver, följ riktlinjerna för OAuth-omfång och välj sedan Lägg till behörigheter.
  9. Välj Bevilja administratörsmedgivande. Beroende på din roll kan en klientadministratör behöva slutföra det här steget.

Kopiera program-ID :t (klient) från appregistreringen. Du behöver det här värdet för att konfigurera markören.

Konfigurera skrivbordsappen Cursor

  1. Öppna Inställningsverktyg>och MCP i Markören.

  2. Välj Ny MCP-server.

  3. Lägg till följande konfiguration och {client-id} ersätt med det program-ID (klient)-ID som du kopierade:

    {
      "mcpServers": {
        "ado": {
          "url": "https://mcp.dev.azure.com",
          "type": "http",
          "auth": {
            "CLIENT_ID": "{client-id}"
          }
        }
      }
    }
    
  4. Spara konfigurationen och gå sedan tillbaka till Inställningsverktyg>och MCP.

  5. Leta upp ado-servern och välj sedan Autentisera.

Konfigurera markörmolnagenter

Cursor Cloud Agents kräver en webbomdirigerings-URI och en klienthemlighet utöver den anpassade appregistreringen i Microsoft Entra.

  1. I Microsoft Entra administrationscenter öppnar du appregistreringen som du skapade för Cursor.

  2. Välj Autentisering (förhandsversion)>Lägg till omdirigerings-URI>Web.

  3. Ange https://www.cursor.com/agents/mcp/oauth/callback som omdirigerings-URI och spara sedan ändringarna.

  4. Välj Certifikat och hemligheter>Klienthemligheter>Ny klienthemlighet.

  5. Ange en beskrivning, välj en förfalloperiod och välj sedan Lägg till.

  6. Kopiera värdet för klienthemligheten. Värdet visas bara en gång.

  7. Öppna MCP-serverkonfigurationen för molnagenter i Markören och lägg sedan till eller redigera den anpassade MCP-servern.

  8. Ange server-URL:en till https://mcp.dev.azure.com.

  9. Ange programmets (klientens) ID från appregistreringen i Klient-ID och värdet för klienthemlighet i Klienthemlighet.

    Du kan också redigera JSON-konfigurationen och ersätta platshållarna med dina appregistreringsvärden:

    {
      "mcpServers": {
        "ado": {
          "url": "https://mcp.dev.azure.com",
          "type": "http",
          "auth": {
            "CLIENT_ID": "{client-id}",
            "CLIENT_SECRET": "{client-secret}"
          }
        }
      }
    }
    
  10. Spara konfigurationen och välj sedan Logga in från Cursor Cloud Agents för att slutföra Microsoft Entra-autentisering.

Viktigt!

Behandla klienthemligheten som ett lösenord. Checka inte in den till källkontrollen. Innan den löper ut, skapa en ny hemlighet och uppdatera konfigurationen för Cursor Cloud Agents.

Om Microsoft Entra returnerar felet AADSTS50011kontrollerar du att webbomdirigerings-URI:n exakt matchar https://www.cursor.com/agents/mcp/oauth/callback. Om tokenutbytet misslyckas med felet AADSTS7000218, kontrollera att det aktuella värdet för klienthemligheten är konfigurerat i Cursor Cloud Agents.

Claude Code

Claude Code kräver en anpassad Microsoft Entra appregistrering för att få åtkomst till den fjärranslutna Azure DevOps MCP-servern.

Registrera programmet

  1. Bekräfta att det Azure DevOps MCP-företagsprogrammet har etablerats i din klientorganisation. Om du inte hittar det, se Det går inte att hitta Azure DevOps MCP-företagsappen i klienten.
  2. I Microsoft Entra administrationscenter går du till App registrations och skapar sedan en appregistrering.
  3. I appregistreringen väljer du Autentisering (förhandsversion)>Lägg till omdirigerings-URI>Mobile- och skrivbordsprogram.
  4. Ange http://localhost:3118/callback som omdirigerings-URI och spara sedan ändringarna.
  5. På sidan Autentisering (förhandsversion) väljer du fliken Inställningar och aktiverar sedan Tillåt offentliga klientflöden.
  6. På sidan API-behörigheter väljer du Lägg till en behörighet>API:er som min organisation använder.
  7. Sök efter Azure DevOps MCP eller program-ID 2a72489c-aab2-4b65-b93a-a91edccf33b8och välj sedan programmet.
  8. Välj de delegerade behörigheter som klienten behöver, följ riktlinjerna för OAuth-omfång och välj sedan Lägg till behörigheter.
  9. Välj Bevilja administratörsmedgivande. Beroende på din roll kan en klientadministratör behöva slutföra det här steget.

Kopiera program-ID :t (klient) från appregistreringen. Du behöver det här värdet för att konfigurera Claude Code.

Konfigurera Claude Code

  1. Kör följande kommando och ersätt {client-id} med det program-ID (klient)-ID som du kopierade och {organization} med ditt Azure DevOps organisationsnamn:

    claude mcp add --transport http ado https://mcp.dev.azure.com/{organization} \
      --client-id {client-id} --callback-port 3118
    

    Du kan också skapa en .mcp.json fil i roten på lagringsplatsen med följande konfiguration:

    {
      "mcpServers": {
        "ado": {
          "type": "http",
          "url": "https://mcp.dev.azure.com/{organization}",
          "oauth": {
            "clientId": "{client-id}",
            "callbackPort": 3118
          }
        }
      }
    }
    
  2. Starta Claude Code genom att köra claude.

  3. Kör /mcpoch följ sedan webbläsarens inloggningsflöde för att autentisera med ditt Microsoft Entra-konto.

Mer information om de här alternativen finns i Ansluta Claude Code till verktyg via MCP.

Verifiera anslutningen

Efter installationen kontrollerar du att mcp-fjärrservern fungerar genom att ställa en fråga till AI-assistenten om dina Azure DevOps data.

Exempel:

  • "Lista projekten i min Azure DevOps organisation."
  • "Visa mina tilldelade arbetsobjekt."
  • "Vilka pull-begäranden kräver min granskning?"

Om AI-assistenten returnerar resultat från din Azure DevOps organisation är den fjärranslutna MCP-servern korrekt konfigurerad.

Använda AI för att verifiera och felsöka mcp-fjärrkonfiguration

Följande exempelprompter för Copilot Chat hjälper dig att välja rätt MCP-metod, konfigurera och validera fjärrkonfigurationen, förbättra prompter för den dagliga användningen och felsöka problem vid behov. Kopiera och klistra in dessa frågor i Copilot Chat och ersätt platshållarna med din faktiska organisation, klient och felinformation.

Task Exempelprompt
Välj fjärr- eller lokal For my environment and client tools, help me decide whether to use the remote Azure DevOps MCP Server or the local server, and explain the tradeoffs.
Skapa en konfiguration med lägsta behörighet Generate a remote mcp.json configuration for organization <contoso> that uses only the needed toolsets and read-only mode.
Validera mcp.json konfigurationen Review this remote Azure DevOps MCP server configuration and tell me whether anything is missing or incorrect for Visual Studio Code.
Verifiera autentiseringsantaganden Help me verify whether this remote MCP setup can authenticate with Microsoft Entra ID for organization <contoso>.
Förbättra frågeprompter för dagligt arbete Give me better prompt wording to reliably fetch fresh Azure DevOps data from remote MCP for project <project-name>, including how to avoid stale results.
Diagnostisera nekad anslutning I'm getting Connection Refused when connecting to https://mcp.dev.azure.com/<organization>. Give me step-by-step network, proxy, and firewall checks to fix it.
Diagnostisera saknade data The remote MCP server connects, but queries return no data. Help me determine whether this is a permissions issue or missing project context.
Rubriker för filtrering i felsökningsverktyget Check my X-MCP-Toolsets and X-MCP-Tools header configuration and explain why expected tools are not appearing.

Copilot drivs av AI, så överraskningar och misstag är möjliga. För mer information, se Vanliga frågor om allmänt bruk av Copilot.

Felsökning

Issue Åtgärd
Autentiseringen misslyckas Verifiera dina Microsoft Entra-autentiseringsuppgifter och bekräfta att du har åtkomst till Azure DevOps-organisationen.
Servern hittades inte Kontrollera serverns URL-format: https://mcp.dev.azure.com/{organization}.
Anslutningen nekades Bekräfta att nätverket tillåter utgående HTTPS till mcp.dev.azure.com. Om du använder en företagsproxy eller brandvägg, be administratören att lägga till slutpunkten i tillåtelselistan och försök igen utan VPN för att isolera problem i nätverkssökvägen.
Inga data returnerades Bekräfta att du har rätt behörigheter för projektet eller resurserna som efterfrågas.
ELM-verktyg är inte tillgängliga ELM-verktyg är aktiverade som standard. Om du begränsar tillgängliga verktygsuppsättningar kontrollerar du att X-MCP-Toolsets rubriken innehåller elm. Återanslut sedan MCP-servern och kontrollera att din identitet har nödvändiga Azure DevOps behörigheter. Förutsättningar finns i översikten över Enterprise Live Migrations.

För support kan du skapa ett problem på den lokala MCP Server-lagringsplatsen. Se till att använda mallen Fjärrproblem .

Vanliga frågor och svar

Hur är det med andra klienter som Claude Desktop eller Codex?

Claude Desktop och Codex kräver dynamisk registrering av ett OAuth-klient-ID i Microsoft Entra ID innan de kan använda den fjärranslutna MCP-servern. Microsoft Entra ID stöder för närvarande inte det dynamiska klientregistreringsflöde som dessa klienter kräver. Använd den lokala MCP-servern med dessa klienter.