Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
usługi Azure DevOps
Zdalny serwer mcp Azure DevOps jest hostowaną wersją Azure DevOps MCP Server która nie wymaga instalacji lokalnej. Zamiast uruchamiać serwer na maszynie, możesz połączyć asystenta sztucznej inteligencji bezpośrednio z punktem końcowym hostowanym Azure DevOps przy użyciu transportu HTTP z możliwością przesyłania strumieniowego.
Najpierw wybierz tryb zdalny
Użyj zdalnego serwera MCP , gdy środowisko go obsługuje. Serwer zdalny jest zalecaną opcją, ponieważ Azure DevOps hosty i aktualizuje go i nie trzeba instalować Node.js ani zarządzać procesem serwera lokalnego.
Użyj lokalnego serwera MCP, gdy klient nie może uwierzytelnić się na serwerze zdalnym przy użyciu Microsoft Entra ID. To ograniczenie dotyczy obecnie klientów, takich jak Claude Desktop i Codex. Cursor i Claude Code wymagają niestandardowej rejestracji aplikacji Microsoft Entra na potrzeby uwierzytelniania. Aby uzyskać instrukcje dotyczące konfiguracji lokalnej, zobacz Włączanie asysty SI za pomocą serwera Azure DevOps MCP.
| Funkcja | Zdalny serwer MCP | Lokalny serwer MCP |
|---|---|---|
| Installation | Brak wymaganej instalacji | Wymaga Node.js 20.0+ i npx |
| Transport | Przesyłanie strumieniowe HTTP | stdio |
| Uwierzytelnianie | Microsoft Entra ID (OAuth) | Azure DevOps PAT lub Microsoft Entra ID |
| Usługi hostingowe | usługa hostowana Azure DevOps | Uruchamia się lokalnie na komputerze |
| Configuration | Minimalne mcp.json |
Konfiguracja specyficzna dla środowiska |
Wymagania wstępne
| Kategoria | Wymagania |
|---|---|
| Azure DevOps | Aktywna organizacja Azure DevOps wspierana przez dzierżawę Microsoft Entra. Organizacje korzystające wyłącznie z kont Microsoft (MSA) nie są obsługiwane w przypadku zdalnego korzystania z serwera MCP. |
| Uprawnienia | Członkostwo w projekcie i dostęp do zasobów, które chcesz przeszukiwać. |
| Środowisko | Obsługiwane środowisko asystenta sztucznej inteligencji (zobacz Obsługiwane środowiska) |
konfiguracja mcp.json
{
"servers": {
"ado-remote-mcp": {
"url": "https://mcp.dev.azure.com/{organization}",
"type": "http"
}
},
"inputs": []
}
Możesz również pominąć nazwę organizacji z adresu URL. Jeśli jednak pominięto nazwę organizacji, musisz podać ją jako kontekst w każdym wywołaniu narzędzia.
{
"servers": {
"ado-remote-mcp": {
"url": "https://mcp.dev.azure.com/",
"type": "http"
}
},
"inputs": []
}
Zestawy narzędzi
Określ zestawy narzędzi, aby ograniczyć narzędzia dostępne dla serwera MCP. Nie należy łączyć z X-MCP-Tools.
{
"servers": {
"ado-remote-mcp": {
"url": "https://mcp.dev.azure.com/{organization}",
"type": "http",
"headers": {
"X-MCP-Toolsets": "repos,wiki,wit"
}
}
},
"inputs": []
}
| Wartość zestawu narzędzi | Dołączone narzędzia |
|---|---|
all
(ustawienie domyślne) |
Wszystkie narzędzia |
repos |
Narzędzia repozytorium i pull requestów |
advsec |
Zaawansowane narzędzia alertów zabezpieczeń |
wit |
Narzędzia elementów roboczych i search_workitem |
pipelines |
Narzędzia potoków i kompilacji |
wiki |
Narzędzia typu wiki i search_wiki |
work |
Narzędzia do iteracji i wydajności |
testplan |
Narzędzia do planowania testów |
elm |
Narzędzia migracji na żywo dla przedsiębiorstw (wersja zapoznawcza; domyślnie włączone) |
Narzędzia tylko do odczytu
Użyj nagłówka X-MCP-Readonly do ograniczenia serwera do operacji tylko odczytu. To ograniczenie jest przydatne, gdy chcesz zapobiec modyfikacjom Azure DevOps zasobów.
{
"servers": {
"ado-remote-mcp": {
"url": "https://mcp.dev.azure.com/{organization}",
"type": "http",
"headers": {
"X-MCP-Readonly": "true"
}
}
},
"inputs": []
}
Łączenie zestawów narzędzi i filtrowanie w trybie tylko do odczytu
{
"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": []
}
Poszczególne narzędzia
Użyj nagłówka X-MCP-Tools , aby włączyć tylko określone narzędzia. Nie należy łączyć z X-MCP-Toolsets.
Określ nazwy narzędzi wyświetlane na liście dostępnych narzędzi . W przypadku skonsolidowanych narzędzi, takich jak wit_work_item, wybierz operację przy użyciu parametru action narzędzia podczas jego wywoływania.
{
"servers": {
"ado-remote-mcp": {
"url": "https://mcp.dev.azure.com/{organization}",
"type": "http",
"headers": {
"X-MCP-Tools": "core_list_projects, wit_work_item"
}
}
},
"inputs": []
}
Wewnętrznych
Podczas eksperymentowania i wprowadzania nowych narzędzi i aktualizacji istniejących można uzyskać wczesny dostęp do tych zmian przy użyciu nagłówka X-MCP-Insiders .
{
"servers": {
"ado-remote-mcp": {
"url": "https://mcp.dev.azure.com/{organization}",
"type": "http",
"headers": {
"X-MCP-Insiders": "true"
}
}
},
"inputs": []
}
Dostępne narzędzia
Uwaga / Notatka
Ta lista może nie zawsze odzwierciedlać najnowsze aktualizacje narzędzi.
Podstawowe narzędzia
Podstawowe narzędzia są zawsze dostępne, chyba że określono inaczej.
| Narzędzie | Opis |
|---|---|
core_list_orgs |
Wyświetlanie listy Azure DevOps organizacji, do których uwierzytelniony użytkownik ma dostęp |
core_list_projects |
Lista projektów w organizacji |
core_list_project_teams |
Lista zespołów w projekcie |
core_list_group_members |
Wyświetl listę bezpośrednich członków i grup podrzędnych grupy Azure DevOps |
Uwaga / Notatka
Tylko członkowie programu MCP Insider mogą korzystać z core_list_group_members, używając nagłówka X-MCP-Insiders.
Praca
Narzędzia robocze są scalane w zgrupowane dyspozytory przy użyciu parametru action.
| Narzędzie | Action | Opis | Tylko odczyt |
|---|---|---|---|
work |
list_iterations |
Wyświetlanie listy wszystkich iteracji w projekcie | ✅ |
work |
list_team_iterations |
Wyświetl listę iteracji przypisanych do zespołu | ✅ |
work |
get_team_settings |
Pobieranie ustawień zespołu, w tym domyślnej iteracji, iteracji listy prac i domyślnej ścieżki obszaru | ✅ |
work |
get_team_capacity |
Uzyskiwanie pojemności zespołu na potrzeby iteracji | ✅ |
work |
get_iteration_capacities |
Uzyskiwanie pojemności iteracji dla wszystkich zespołów w iteracji i projekcie | ✅ |
work_iteration_write |
create |
Tworzenie iteracji | ❌ |
work_iteration_write |
assign |
Przypisywanie iteracji do zespołu | ❌ |
work_capacity_write |
update |
Aktualizowanie pojemności zespołu członka zespołu pod kątem określonej iteracji | ❌ |
Repos
Narzędzia repozytorium są konsolidowane do pogrupowanych dyspozytorów za pomocą parametru action.
| Narzędzie | Action | Opis | Tylko odczyt |
|---|---|---|---|
repo_pull_request |
get |
Pobierz pull request według identyfikatora | ✅ |
repo_pull_request |
list |
Wyświetlanie listy żądań ściągnięcia w repozytorium lub projekcie | ✅ |
repo_pull_request |
list_by_commits |
Znajdź pull requesty zawierające określone identyfikatory commitów | ✅ |
repo_pull_request |
get_changes |
Pobierz zmiany plików i opcjonalne różnice wiersz po wierszu dla iteracji pull requestu | ✅ |
repo_pull_request_thread |
list |
Wymień wątki komentarzy w pull request. | ✅ |
repo_pull_request_thread |
list_comments |
Wyświetlanie listy komentarzy w określonym wątku | ✅ |
repo_repository |
get |
Uzyskaj repozytorium według nazwy lub identyfikatora | ✅ |
repo_repository |
list |
Wyświetlanie listy repozytoriów w projekcie | ✅ |
repo_branch |
get |
Pobierz gałąź według nazwy | ✅ |
repo_branch |
list |
Wypisz gałęzie w repozytorium | ✅ |
repo_branch |
list_mine |
Wyświetl gałęzie, do których wypchnął bieżący użytkownik | ✅ |
repo_file |
get_content |
Uzyskaj zawartość tekstową pliku w określonej gałęzi, tagu lub commicie. | ✅ |
repo_file |
list_directory |
Wyświetlanie listy plików i folderów w katalogu z opcjonalną listą cyklisywną | ✅ |
repo_search_commits |
Wyszukiwanie zatwierdzeń za pomocą filtrowania według tekstu, autora, zakresu dat i nie tylko | ✅ | |
search_code |
Wyszukiwanie kodu pełnotekstowego | ✅ | |
repo_pull_request_write |
create |
Utwórz żądanie ściągnięcia | ❌ |
repo_pull_request_write |
update |
Aktualizowanie pull requestu, w tym konfiguracja autouzupełniania | ❌ |
repo_pull_request_write |
update_reviewers |
Dodaj lub usuń recenzentów pull requestów | ❌ |
repo_pull_request_write |
vote |
Oddanie głosu w sprawie żądania ściągnięcia | ❌ |
repo_pull_request_thread_write |
create |
Tworzenie nowego wątku komentarza w pull request | ❌ |
repo_pull_request_thread_write |
reply |
Odpowiedz na komentarz w wątku | ❌ |
repo_pull_request_thread_write |
update_status |
Aktualizowanie stanu wątku komentarza | ❌ |
repo_create_branch |
Tworzenie gałęzi | ❌ |
Wit
Narzędzia elementów pracy są scalane w zgrupowane dyspozytory za pomocą parametru action.
| Narzędzie | Action | Opis | Tylko odczyt |
|---|---|---|---|
wit_work_item |
get |
Uzyskaj element roboczy według identyfikatora | ✅ |
wit_work_item |
get_batch |
Pobieranie wielu elementów roboczych według identyfikatorów | ✅ |
wit_work_item |
list_comments |
Lista komentarzy dotyczących elementu roboczego | ✅ |
wit_work_item |
my |
Pobieranie elementów roboczych istotnych dla uwierzytelnionego użytkownika | ✅ |
wit_work_item |
list_revisions |
Wyświetlanie listy poprawek elementu roboczego | ✅ |
wit_work_item |
list_for_iteration |
Lista elementów roboczych dla iteracji zespołu | ✅ |
wit_work_item |
get_type |
Pobieranie metadanych dla typu elementu roboczego | ✅ |
wit_query |
get |
Pobierz zapytanie według identyfikatora lub ścieżki | ✅ |
wit_query |
get_results |
Uruchamianie zapisanego zapytania | ✅ |
wit_query |
search |
Wyszukiwanie zapytań według nazwy | ✅ |
wit_query |
list |
Wyświetl główne foldery zapytań i ich foldery podrzędne | ✅ |
wit_query_by_wiql |
Uruchamianie zapytania WIQL i zwracanie pasujących elementów roboczych | ✅ | |
wit_backlog |
list |
Lista poziomów backlogu dla zespołu | ✅ |
wit_backlog |
list_work_items |
Wyświetl elementy robocze na określonym poziomie backlogu | ✅ |
search_workitem |
Wyszukiwanie pełnotekstowych elementów roboczych | ✅ | |
wit_work_item_write |
create |
Tworzenie nowego elementu roboczego | ❌ |
wit_work_item_write |
update |
Aktualizowanie pól w elemencie roboczym | ❌ |
wit_work_item_write |
update_batch |
Aktualizowanie wielu elementów roboczych w jednym wywołaniu | ❌ |
wit_work_item_write |
add_child |
Tworzenie podrzędnych elementów roboczych w ramach elementu nadrzędnego | ❌ |
wit_work_item_comment_write |
add |
Dodawanie komentarza do elementu roboczego | ❌ |
wit_work_item_comment_write |
update |
Aktualizowanie istniejącego komentarza do elementu roboczego | ❌ |
wit_work_item_link_write |
link |
Łączenie dwóch elementów roboczych | ❌ |
wit_work_item_link_write |
unlink |
Usuwanie łączy z elementu roboczego | ❌ |
wit_work_item_link_write |
link_to_pull_request |
Powiązanie elementu roboczego z pull requestem | ❌ |
wit_work_item_link_write |
add_artifact_link |
Dodawanie linku do repozytorium, gałęzi, zatwierdzenia, kompilacji lub artefaktu typu wiki do elementu roboczego | ❌ |
wit_work_item_attachment |
Pobierz załącznik elementu roboczego na podstawie identyfikatora; zwraca zawartość zakodowaną w base64 wraz z nazwą pliku i typem MIME | ✅ |
Uwaga / Notatka
wit_query_by_wiql jest obecnie dostępny tylko dla Insiderów MCP przy użyciu nagłówka X-MCP-Insiders.
Pipelines
Narzędzia potoku są konsolidowane w grupy dyspozytorów za pomocą parametru action.
| Narzędzie | Action | Opis | Tylko odczyt |
|---|---|---|---|
pipelines_build |
list |
Wyświetlanie listy buildów z opcjonalnymi filtrami | ✅ |
pipelines_build |
get_status |
Uzyskiwanie stanu, problemów i zgłaszanie metadanych dla kompilacji | ✅ |
pipelines_build |
get_changes |
Pobieranie zatwierdzeń i elementów roboczych skojarzonych z kompilacją | ✅ |
pipelines_build_log |
list |
Lista dostępnych dzienników dla kompilacji | ✅ |
pipelines_build_log |
get_content |
Uzyskaj zawartość tekstową określonego logu za pomocą identyfikatora | ✅ |
pipelines_definition |
list |
Wyświetl definicje potoku z opcjonalnymi filtrami | ✅ |
pipelines_definition |
list_revisions |
Wyświetlanie listy historii poprawek dla definicji potoku | ✅ |
pipelines_run |
get |
Uzyskaj pojedyncze uruchomienie potoku | ✅ |
pipelines_run |
list |
Wyświetlanie listy przebiegów dla potoku | ✅ |
pipelines_artifact |
list |
Lista artefaktów dla kompilacji | ✅ |
pipelines_artifact |
download |
Pobieranie nazwanego artefaktu kompilacji | ✅ |
pipelines_write |
run_pipeline |
Kolejka nowego uruchomienia potoku | ❌ |
pipelines_write |
create_pipeline |
Utwórz nową definicję potoku YAML | ❌ |
pipelines_write |
update_build_stage |
Anulowanie, ponawianie próby lub uruchamianie etapu kompilacji w locie | ❌ |
Wiki
Operacje odczytu typu wiki są konsolidowane w jednym wiki narzędziu. Użyj parametru action , aby wybrać operację.
| Narzędzie | Action | Opis | Tylko odczyt |
|---|---|---|---|
wiki |
list_wikis |
Lista wiki w projekcie lub organizacji | ✅ |
wiki |
get_wiki |
Pobieranie witryny typu wiki według identyfikatora | ✅ |
wiki |
list_pages |
Wyświetlanie listy stron w witrynie typu wiki | ✅ |
wiki |
get_page |
Pobieranie zawartości i metadanych strony | ✅ |
search_wiki |
Wyszukiwanie w witrynie typu wiki pełnotekstowej | ✅ | |
wiki_upsert_page |
Tworzenie lub aktualizowanie strony typu wiki | ❌ |
Plany testów
Narzędzia planu testów są konsolidowane w zgrupowanych dyspozytorach za pomocą parametru action.
| Narzędzie | Action | Opis | Tylko odczyt |
|---|---|---|---|
testplan |
list_plans |
Wyświetl plany testowe w projekcie | ✅ |
testplan |
list_suites |
Wyświetlanie listy zestawów testów w ramach planu testowego | ✅ |
testplan |
list_cases |
Wyświetl przypadki testowe w zestawie testów | ✅ |
testplan_show_test_results_from_build_id |
Uzyskiwanie wyników testów z kompilacji | ✅ | |
testplan_test_run |
get_results |
Pobierz wyniki dla uruchomienia testowego z opcjonalnymi filtrami szczegółów i wyników | ✅ |
testplan_test_plan_write |
create |
Tworzenie planu testu | ❌ |
testplan_test_suite_write |
create |
Tworzenie zestawu testów | ❌ |
testplan_test_suite_write |
add_test_cases |
Dodawanie przypadków testowych do pakietu | ❌ |
testplan_test_case_write |
create |
Tworzenie przypadku testowego | ❌ |
testplan_test_case_write |
update_steps |
Aktualizowanie kroków przypadku testowego | ❌ |
testplan_test_run_write |
create_run |
Tworzenie przebiegu testu na potrzeby ręcznego wykonywania testów | ❌ |
testplan_test_run_write |
update_results |
Aktualizowanie wyników i szczegółów wyników testów w przebiegu | ❌ |
testplan_test_run_write |
complete_run |
Ukończ lub przerwij przebieg testu na podstawie jego wyników | ❌ |
testplan_test_run_write |
update_test_point_outcome |
Aktualizowanie lub resetowanie wyników dla punktów testowych | ❌ |
Zaawansowane zabezpieczenia
Narzędzia Advanced Security są konsolidowane w grupowanym dyspozytorze, który używa parametru action .
| Narzędzie | Action | Opis | Tylko odczyt |
|---|---|---|---|
advsec_alerts |
list |
Wyświetlanie listy alertów usługi Advanced Security dla repozytorium z opcjonalnymi filtrami | ✅ |
advsec_alerts |
get |
Pobierz alert usługi Advanced Security na podstawie identyfikatora | ✅ |
Migracja na żywo w przedsiębiorstwie (wersja zapoznawcza)
Narzędzia do migracji na żywo w przedsiębiorstwie używają parametru action do grupowania i wysyłania zadań.
Dowiedz się więcej o wersji zapoznawczej migracji na żywo w przedsiębiorstwie.
Ważna
Obsługa ELM na zdalnym serwerze MCP usługi Azure DevOps jest obecnie w wersji zapoznawczej. Narzędzia są domyślnie włączone.
| Narzędzie | Action | Opis | Tylko odczyt |
|---|---|---|---|
enterprise_live_migration |
list |
Wyświetlanie listy migracji dla organizacji; opcjonalny filtr projektu i flaga includeAllMigrations | ✅ |
enterprise_live_migration |
get |
Pobieranie stanu migracji dla repozytorium | ✅ |
enterprise_live_migration |
get_cutover_review |
Pobierz elementy, których przetwarzanie zakończyło się niepowodzeniem lub które zostały zablokowane przed przełączeniem | ✅ |
enterprise_live_migration |
get_device_flow_config |
Pobierz konfigurację przepływu urządzenia dla GitHub App | ✅ |
enterprise_live_migration |
list_pipelines |
Wyświetlanie listy potoków i stan ponownego wirowania | ✅ |
enterprise_live_migration_write |
create |
Tworzenie nowej migracji | ❌ |
enterprise_live_migration_write |
pause |
Wstrzymywanie aktywnej migracji | ❌ |
enterprise_live_migration_write |
resume |
Wznawianie wstrzymanej migracji | ❌ |
enterprise_live_migration_write |
cutover_set |
Ustal datę przełączenia | ❌ |
enterprise_live_migration_write |
cutover_cancel |
Anuluj zaplanowane przełączenie | ❌ |
enterprise_live_migration_write |
approve_cutover |
Zaakceptuj niepowodzenia i kontynuuj przełączenie | ❌ |
enterprise_live_migration_write |
abandon |
Trwałe usuwanie migracji | ❌ |
enterprise_live_migration_pipelines_write |
submit |
Prześlij potoki do ponownego połączenia | ❌ |
enterprise_live_migration_pipelines_write |
update |
Aktualizacja konfiguracji ponownego wirowania potoku | ❌ |
enterprise_live_migration_pipelines_write |
delete |
Usuń wszystkie klony potoku do migracji terminalu | ❌ |
Aby udostępnić wyłącznie narzędzia Enterprise Live Migration, użyj nagłówka X-MCP-Toolsets z wartością elm:
{
"servers": {
"ado-remote-mcp": {
"url": "https://mcp.dev.azure.com/{organization}",
"type": "http",
"headers": {
"X-MCP-Toolsets": "elm"
}
}
},
"inputs": []
}
Obsługiwane środowiska
Zdalny serwer Azure DevOps MCP wymaga konta użytkownika oraz organizacji Azure DevOps, aby połączyć się z Microsoft Entra ID.
Nie wszyscy klienci MCP domyślnie obsługują uwierzytelnianie Microsoft Entra. Niektóre środowiska wymagają wykonania dodatkowych kroków w celu zarejestrowania aplikacji klienckiej.
Obsługiwane środowiska dla zdalnego punktu końcowego, gdy jest dostępne uwierzytelnianie Microsoft Entra, obejmują:
- Visual Studio z GitHub Copilot
- Visual Studio
- Microsoft Foundry
- Microsoft Copilot Studio
- interfejs wiersza polecenia GitHub Copilot
- Aplikacja GitHub Copilot
- Cursor lub Claude Code z niestandardową rejestracją aplikacji w Microsoft Entra
Ważna
Claude Desktop i Codex nie obsługują obecnie przepływu uwierzytelniania Microsoft Entra wymaganego przez zdalny serwer Azure DevOps MCP. Użyj lokalnego serwera MCP z tymi klientami.
Visual Studio Code
Aby skonfigurować zdalny serwer MCP w Visual Studio Code:
-
.vscode/mcp.jsonDodaj plik do repozytorium przy użyciu przedstawionej wcześniej konfiguracjimcp.json. - Zapisz plik.
- Otwórz GitHub Copilot w programie VS Code.
- Po wyświetleniu monitu uwierzytelnij się przy użyciu konta Microsoft Entra i wybierz swoje konto.
Po zakończeniu uwierzytelniania zostanie wyświetlona lista dostępnych narzędzi.
Visual Studio (2022 i nowsze)
Skonfiguruj zdalny serwer MCP w Visual Studio przez dodanie adresu URL serwera do ustawień MCP. Aby uzyskać więcej informacji, zobacz Użyj serwery MCP w Visual Studio.
Cursor
Cursor wymaga własnej rejestracji aplikacji Microsoft Entra, aby uzyskać dostęp do zdalnego serwera MCP usługi Azure DevOps.
Rejestrowanie aplikacji
- Upewnij się, że aplikacja dla przedsiębiorstw Azure DevOps MCP została wdrożona w Twojej dzierżawie. Jeśli nie możesz jej znaleźć, zobacz Nie możesz znaleźć aplikacji korporacyjnej Azure DevOps MCP w dzierżawie.
- W centrum administracyjne Microsoft Entra przejdź do Rejestracje aplikacji, a następnie utwórz rejestrację aplikacji.
- W obszarze rejestracji aplikacji wybierz pozycje Uwierzytelnianie (wersja zapoznawcza)>Dodaj identyfikator URI przekierowania>Aplikacje mobilne i klasyczne.
- Wprowadź
http://localhost:8787/callbackjako identyfikator URI przekierowania, a następnie zapisz zmiany. - Na stronie Uwierzytelnianie (wersja zapoznawcza) wybierz kartę Ustawienia , a następnie włącz opcję Zezwalaj na przepływy klientów publicznych.
- Na stronie Uprawnienia interfejsu API wybierz pozycję Dodaj uprawnienie>Interfejsy API używane przez moją organizację.
- Wyszukaj Azure DevOps MCP lub identyfikator
2a72489c-aab2-4b65-b93a-a91edccf33b8aplikacji , a następnie wybierz aplikację. - Wybierz delegowane uprawnienia wymagane przez aplikację, a następnie wybierz pozycję Dodaj uprawnienia.
- Wybierz Udzielanie zgody administratora. W zależności od roli administrator dzierżawy może wymagać wykonania tego kroku.
Skopiuj identyfikator aplikacji (klienta) z rejestracji aplikacji. Ta wartość jest potrzebna do skonfigurowania kursora.
Konfigurowanie kursora
W Cursor otwórz Ustawienia>.
Wybierz pozycję Nowy serwer MCP.
Dodaj następującą konfigurację, zastępując
{client-id}skopiowanym identyfikatorem aplikacji (klienta):{ "mcpServers": { "ado": { "url": "https://mcp.dev.azure.com", "type": "http", "auth": { "CLIENT_ID": "{client-id}" } } } }Zapisz konfigurację, a następnie wróć do Ustawień>Narzędzia i MCP.
Znajdź serwer ado , a następnie wybierz pozycję Uwierzytelnij.
Kod Claude'a
Claude Code wymaga niestandardowej rejestracji aplikacji Microsoft Entra, aby uzyskać dostęp do zdalnego serwera MCP Azure DevOps.
Rejestrowanie aplikacji
- Upewnij się, że aplikacja dla przedsiębiorstw Azure DevOps MCP została wdrożona w Twojej dzierżawie. Jeśli nie możesz jej znaleźć, zobacz Nie możesz znaleźć aplikacji korporacyjnej Azure DevOps MCP w dzierżawie.
- W centrum administracyjne Microsoft Entra przejdź do Rejestracje aplikacji, a następnie utwórz rejestrację aplikacji.
- W obszarze rejestracji aplikacji wybierz pozycje Uwierzytelnianie (wersja zapoznawcza)>Dodaj identyfikator URI przekierowania>Aplikacje mobilne i klasyczne.
- Wprowadź
http://localhost:3118/callbackjako identyfikator URI przekierowania, a następnie zapisz zmiany. - Na stronie Uwierzytelnianie (wersja zapoznawcza) wybierz kartę Ustawienia , a następnie włącz opcję Zezwalaj na przepływy klientów publicznych.
- Na stronie Uprawnienia interfejsu API wybierz pozycję Dodaj uprawnienie>Interfejsy API używane przez moją organizację.
- Wyszukaj Azure DevOps MCP lub identyfikator
2a72489c-aab2-4b65-b93a-a91edccf33b8aplikacji , a następnie wybierz aplikację. - Wybierz delegowane uprawnienia wymagane przez aplikację, a następnie wybierz pozycję Dodaj uprawnienia.
- Wybierz Udzielanie zgody administratora. W zależności od roli administrator dzierżawy może wymagać wykonania tego kroku.
Skopiuj identyfikator aplikacji (klienta) z rejestracji aplikacji. Ta wartość jest potrzebna do skonfigurowania programu Claude Code.
Konfigurowanie kodu Claude'a
Uruchom następujące polecenie, zastępując
{client-id}element identyfikatorem aplikacji (klienta), który został skopiowany i{organization}nazwą organizacji Azure DevOps:claude mcp add --transport http ado https://mcp.dev.azure.com/{organization} \ --client-id {client-id} --callback-port 3118Alternatywnie utwórz
.mcp.jsonplik w katalogu głównym repozytorium przy użyciu następującej konfiguracji:{ "mcpServers": { "ado": { "type": "http", "url": "https://mcp.dev.azure.com/{organization}", "oauth": { "clientId": "{client-id}", "callbackPort": 3118 } } } }Uruchom program Claude Code, uruchamiając polecenie
claude.Uruchom polecenie
/mcp, a następnie postępuj zgodnie z przepływem logowania przeglądarki, aby uwierzytelnić się przy użyciu konta Microsoft Entra.
Aby uzyskać więcej informacji na temat tych opcji, zobacz Connect Claude Code to tools via MCP (Łączenie kodu Claude'a z narzędziami za pośrednictwem programu MCP).
Weryfikowanie połączenia
Po skonfigurowaniu sprawdź, czy zdalny serwer MCP działa, zadając asystentowi sztucznej inteligencji pytanie dotyczące danych Azure DevOps.
Przykłady:
- "Wyświetl listę projektów w mojej organizacji Azure DevOps".
- Pokaż moje przypisane zadania.
- Jakie prośby o scalenie wymagają mojej recenzji?
Jeśli asystent sztucznej inteligencji zwraca wyniki z organizacji Azure DevOps, zdalny serwer MCP jest poprawnie skonfigurowany.
Używanie sztucznej inteligencji do weryfikowania i rozwiązywania problemów z zdalną konfiguracją mcp
Poniższe przykładowe monity dla Copilot Chat pomagają wybrać odpowiednie podejście do MCP, skonfigurować i zweryfikować konfigurację zdalnego połączenia, udoskonalić monity używane na co dzień oraz w razie potrzeby rozwiązywać problemy związane z błędami. Skopiuj i wklej te prompty w Copilot Chat, a następnie zastąp symbole zastępcze rzeczywistymi informacjami o swojej organizacji, kliencie i szczegółach błędu.
| Zadanie | Przykładowy monit |
|---|---|
| Wybierz: zdalne czy lokalne | 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. |
| Tworzenie konfiguracji z najniższymi uprawnieniami | Generate a remote mcp.json configuration for organization <contoso> that uses only the needed toolsets and read-only mode. |
Weryfikowanie mcp.json konfiguracji |
Review this remote Azure DevOps MCP server configuration and tell me whether anything is missing or incorrect for Visual Studio Code. |
| Weryfikowanie założeń uwierzytelniania | Help me verify whether this remote MCP setup can authenticate with Microsoft Entra ID for organization <contoso>. |
| Ulepsz prompty zapytań do codziennej pracy | 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. |
| Zdiagnozuj odrzucone połączenie | 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. |
| Diagnozowanie brakujących danych | The remote MCP server connects, but queries return no data. Help me determine whether this is a permissions issue or missing project context. |
| Debugowanie nagłówków filtrowania narzędzi | Check my X-MCP-Toolsets and X-MCP-Tools header configuration and explain why expected tools are not appearing. |
Copilot jest obsługiwany przez sztuczną inteligencję, więc możliwe są niespodzianki i błędy. Aby uzyskać więcej informacji, zobacz Copilot — często zadawane pytania.
Troubleshooting
| Issue | Resolution |
|---|---|
| Uwierzytelnianie kończy się niepowodzeniem | Sprawdź poświadczenia Microsoft Entra i upewnij się, że masz dostęp do organizacji Azure DevOps. |
| Nie znaleziono serwera | Sprawdź format adresu URL serwera: https://mcp.dev.azure.com/{organization}. |
| Odmowa połączenia | Upewnij się, że sieć zezwala na ruch wychodzący HTTPS do mcp.dev.azure.com. Jeśli korzystasz z firmowego serwera proxy lub zapory, poproś administratora o zezwolenie na wyświetlanie listy punktów końcowych i ponów próbę bez sieci VPN w celu odizolowania problemów ze ścieżką sieciową. |
| Brak zwróconych danych | Upewnij się, że masz odpowiednie uprawnienia do projektu lub zasobów, których dotyczy zapytanie. |
| Narzędzia ELM nie są dostępne | Narzędzia ELM są domyślnie włączone. Jeśli ograniczysz dostępne zestawy narzędzi, upewnij się, że nagłówek X-MCP-Toolsets zawiera elm. Następnie ponownie połącz się z serwerem MCP i sprawdź, czy Twoja tożsamość ma wymagane uprawnienia w usłudze Azure DevOps. Informacje o wymaganiach wstępnych można znaleźć w artykule Omówienie migracji na żywo w środowisku Enterprise. |
Aby uzyskać pomoc techniczną, możesz utworzyć problem w lokalnym repozytorium serwera MCP . Pamiętaj, aby użyć szablonu zdalnego zgłoszenia.
Często zadawane pytania
Co z innymi klientami, takimi jak Claude Desktop lub Codex?
Claude Desktop i Codex wymagają dynamicznej rejestracji identyfikatora klienta OAuth w Microsoft Entra ID przed użyciem zdalnego serwera MCP. Microsoft Entra ID obecnie nie obsługuje dynamicznego przepływu rejestracji klienta wymaganego przez tych klientów. Użyj lokalnego serwera MCP z tymi klientami.