Udostępnij za pośrednictwem


Używanie serwera MCP Menedżera pakietów systemu Windows do zarządzania pakietami za pomocą agentów sztucznej inteligencji

Menedżer pakietów systemu Windows (WinGet) zawiera wbudowany serwer protokołu MCP (Model Context Protocol). Serwer WinGet MCP umożliwia agentom sztucznej inteligencji i narzędziom programistycznym inteligentne wspomaganie, poprzez zrozumienie, jakie pakiety są dostępne i jak je instalować.

Serwer McP WinGet uwidacznia podstawowe funkcje winGet agentom sztucznej inteligencji, umożliwiając im znajdowanie pakietów, zrozumienie ich szczegółów i pomoc w przepływach pracy instalacji. Ta funkcja zwiększa ogólne środowisko tworzenia, udostępniając kontekstowe informacje o dostępnych pakietach bezpośrednio w narzędziach opartych na sztucznej inteligencji.

Co to jest protokół MCP (Model Context Protocol)?

Model Context Protocol (MCP) to otwarty protokół, który umożliwia systemom sztucznej inteligencji interakcję z zewnętrznymi źródłami danych i narzędziami w spójny sposób. Zapewnia on ustandaryzowany interfejs dla agentów sztucznej inteligencji do odnajdywania możliwości, pobierania informacji i wywoływania akcji w różnych systemach i usługach.

McP umożliwia narzędziom opartym na sztucznej inteligencji zrozumienie, jakie operacje są możliwe i jak je wykonywać, bez konieczności integracji niestandardowych dla każdego systemu. Ten protokół ułatwia deweloperom tworzenie asystentów sztucznej inteligencji, którzy mogą bezproblemowo pracować z wieloma narzędziami i usługami.

Aby dowiedzieć się więcej o programie MCP i sposobie jej działania z agentami sztucznej inteligencji, zobacz Używanie serwerów MCP w programie VS Code.

Jak usługa WinGet MCP współpracuje z agentami sztucznej inteligencji

Aby użyć serwera McP WinGet z agentami sztucznej inteligencji, należy najpierw skonfigurować środowisko programistyczne w celu nawiązania połączenia z serwerem MCP. Po nawiązaniu połączenia serwer McP WinGet może pomóc:

  • Odnajdywanie dostępnych pakietów: gdy poprosisz agenta o pomoc w zadaniach instalacji oprogramowania, agent może przeszukać repozytorium WinGet pod kątem dostępnych pakietów. WinGet MCP pomaga agentom zapewnić dokładne i aktualne informacje o dostępnym oprogramowaniu. Na przykład:

    • Pytasz: "Muszę zainstalować program Visual Studio Code"
    • Wyszukiwanie agentów: repozytorium WinGet dla pakietów programu Visual Studio Code
    • Agent udostępnia: szczegóły pakietu, w tym identyfikator, wersja, wydawca i opcje instalacji
  • Instalowanie pakietów: jeśli trzeba zainstalować określone oprogramowanie, agenci mogą pomóc w procesie instalacji, zapewniając, że oprogramowanie jest zainstalowane przy użyciu prawidłowej konfiguracji. Przykład:

    • Pytasz: "Zainstaluj język Python na potrzeby programowania"
    • Agent identyfikuje: odpowiedni pakiet Python z repozytorium WinGet
    • Agent zapewnia: polecenia instalacji lub może rozpocząć instalację po Twojej akceptacji

Wymagania wstępne

Przed rozpoczęciem korzystania z integracji z serwerem MCP WinGet upewnij się, że masz:

Konfigurowanie serwera MCP WinGet

Aby skonfigurować serwer MCP WinGet do użycia z agentami sztucznej inteligencji w programie VS Code, należy:

  1. Znajdź ścieżkę wykonywalną serwera McP WinGet
  2. Konfigurowanie serwera MCP w programie Visual Studio Code

Znajdź ścieżkę wykonywalną serwera McP WinGet

Aby skonfigurować serwer MCP WinGet, należy najpierw zlokalizować ścieżkę do pliku wykonywalnego. Użyj jednej z następujących metod, aby znaleźć ścieżkę:

  1. Otwórz wiersz polecenia i wprowadź winget mcp polecenie . W wyniku zostanie wyświetlony fragment konfiguracji JSON, który pokazuje ścieżkę WindowsPackageManagerMCPServer.exe do pliku.

    winget mcp
    

    Jeśli wystąpi następujący błąd: Nierozpoznane polecenie: "mcp"

    Sprawdź, czy aplikacja Instalatora aplikacji jest aktualna na urządzeniu. Można to zweryfikować w aplikacji Store.

  2. Otwórz program PowerShell i użyj następującego skryptu, aby zlokalizować plik wykonywalny serwera MCP:

    # Find the WinGet executable path
    $wingetPath = (Get-Command winget).Source
    # Get the directory containing WinGet
    $wingetDir = Split-Path $wingetPath -Parent
    # The MCP server executable is in the same directory
    $mcpServerPath = Join-Path -Path $wingetDir `
        -ChildPath "Microsoft.DesktopAppInstaller_8wekyb3d8bbwe" `
        -AdditionalChildPath "WindowsPackageManagerMCPServer.exe"
    Write-Host "WinGet MCP Server path: $mcpServerPath"
    

Typowa lokalizacja to:C:\Users\<username>\AppData\Local\Microsoft\WindowsApps\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\WindowsPackageManagerMCPServer.exe

Konfigurowanie serwera MCP w programie Visual Studio Code

Zalecanym sposobem skonfigurowania serwera MCP WinGet jest użycie mcp.json pliku konfiguracji. Musisz znaleźć (może być konieczne wyświetlenie ukrytych plików) lub utworzyć .vscode folder w katalogu głównym projektu. W tym katalogu utwórz mcp.json plik (lub zaktualizuj go, jeśli ten plik już istnieje) o następującej zawartości:

{
  "servers": {
    "winget-mcp": {
      "type": "stdio",
      "command": "C:\\Users\\<username>\\AppData\\Local\\Microsoft\\WindowsApps\\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\\WindowsPackageManagerMCPServer.exe"
    }
  },
  "inputs": []
}

Zastąp <username> swoją rzeczywistą nazwą użytkownika systemu Windows lub użyj wcześniej zidentyfikowanej ścieżki do pliku wykonywalnego serwera MCP WinGet.

Ta konfiguracja informuje klientów MCP o:

  • Użyj pliku wykonywalnego serwera MCP w Menedżerze pakietów Windows (WinGet) jako komendy
  • Używanie standardowej komunikacji we/wy między klientem a serwerem
  • Rejestrowanie serwera przy użyciu identyfikatora winget-mcp

Aby uzyskać szczegółowe informacje na temat konfiguracji i konfiguracji mcp w programie VS Code, zobacz Używanie serwerów MCP w programie VS Code.

Ręczne testowanie wiersza polecenia

Aby ręcznie uruchomić serwer MCP WinGet na potrzeby testowania lub programowania, uruchom plik wykonywalny bezpośrednio, wprowadzając następujące polecenie w programie PowerShell:

& "C:\Users\<username>\AppData\Local\Microsoft\WindowsApps\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\WindowsPackageManagerMCPServer.exe"

Zastąp <username> swoją nazwą użytkownika systemu Windows.

Serwer uruchamia się i czeka na komunikaty protokołu MCP w standardowych danych wejściowych. Serwer będzie działać do momentu zakończenia działania (Ctrl+C) lub zamknięcia strumienia wejściowego.

Korzystanie z narzędzi McP WinGet w programie Visual Studio Code

Aby rozpocząć korzystanie z serwera MCP Menedżera pakietów systemu Windows (WinGet) w programie Visual Studio Code:

  1. Otwórz okno czatu rozszerzenia Copilot usługi GitHub i wybierz pozycję Tryb agenta , aby włączyć integrację narzędzia MCP.
  2. Uzyskaj dostęp do narzędzi MCP WinGet, wybierając ikonę narzędzia w oknie czatu GitHub Copilot i wyszukaj ciąg MCP Server: winget-mcp na liście dostępnych narzędzi.
  3. Sprawdź, czy narzędzia serwera McP WinGet są dostępne z znacznikiem wyboru obok wpisu.
  4. Rozpocznij zadawanie pytań lub żądanie pomocy dotyczącej zadań zarządzania pakietami. Agent sztucznej inteligencji automatycznie używa narzędzi McP WinGet, jeśli jest to konieczne, aby zapewnić dokładną pomoc kontekstową.

Używanie narzędzia WinGet MCP z GitHub Copilot CLI

Interfejs wiersza polecenia narzędzia GitHub Copilot zapewnia pomoc obsługiwaną przez sztuczną inteligencję bezpośrednio w terminalu. Po zarejestrowaniu serwera MCP WinGet za pomocą interfejsu wiersza polecenia Copilot można wyszukać i zainstalować pakiety przy użyciu wierszy polecenia języka naturalnego — bez opuszczania wiersza polecenia.

Wymagania wstępne

Dodawanie serwera MCP WinGet do interfejsu wiersza polecenia Copilot

  1. Uruchom Copilot CLI w terminalu:

    copilot
    
  2. W wierszu polecenia wprowadź /mcp add polecenie slash:

    /mcp add
    
  3. Wypełnij szczegóły serwera MCP w formularzu interaktywnym. Użyj Tab, aby przejść między polami.

    Pole Wartość
    Nazwa winget-mcp
    Typ stdio
    Polecenie Pełna ścieżka do WindowsPackageManagerMCPServer.exe
  4. Naciśnij klawisze Ctrl+S , aby zapisać. Copilot CLI zapisuje konfigurację do ~/.copilot/mcp-config.json.

Opcja 2. Bezpośrednie edytowanie mcp-config.json

Otwórz (lub utwórz) ~/.copilot/mcp-config.json i dodaj następujący wpis, zastępując <username> nazwą użytkownika Windows.

{
  "mcpServers": {
    "winget-mcp": {
      "type": "stdio",
      "command": "C:\\Users\\<username>\\AppData\\Local\\Microsoft\\WindowsApps\\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\\WindowsPackageManagerMCPServer.exe",
      "args": [],
      "tools": ["*"]
    }
  }
}

Uwaga / Notatka

Jeśli mcp-config.json już istnieje i zawiera inne serwery, dodaj winget-mcp wpis wewnątrz istniejącego mcpServers obiektu zamiast zastępować plik.

Sprawdzanie, czy serwer jest zarejestrowany

Po dodaniu serwera upewnij się, że został załadowany:

  1. Uruchom lub uruchom ponownie Copilot CLI:

    copilot
    
  2. Po wyświetleniu monitu wprowadź:

    /mcp
    

    Dane wyjściowe zawierają listę wszystkich skonfigurowanych serwerów MCP. Sprawdź, czy winget-mcp pojawia się i pokazuje stan połączenia.

Używanie narzędzia WinGet MCP w monitach CLI Copilot

Po zarejestrowaniu serwera interfejs wiersza polecenia Copilot automatycznie wywołuje narzędzia WinGet MCP, gdy monit obejmuje zarządzanie pakietami. Po każdym żądaniu wyszukiwania lub instalacji copilot prosi o zatwierdzenie przed uruchomieniem dowolnego polecenia. Aby uzyskać przykładowe monity i porady dotyczące ich stosowania, zobacz Przykładowe monity dla WinGet MCP.

Przykładowe zapytania dotyczące WinGet MCP

Następujące polecenia działają dobrze zarówno z GitHub Copilot (VS Code), jak i z GitHub Copilot CLI po skonfigurowaniu serwera MCP WinGet:

Goal Przykładowy monit
Wyszukiwanie pakietu "Search WinGet for a PDF reader"
Instalowanie według nazwy "Install the latest version of Git"
Instalowanie określonej wersji "Install Node.js 20 LTS from WinGet"
Znajdowanie pakietów dla zadania "What WinGet packages are available for container development?"
Znajdowanie pakietów na potrzeby programowania w języku Python "What packages are available for Python development?"
Instalowanie wspólnego narzędzia "Help me install Visual Studio Code"
Znajdowanie pakietów specyficznych dla platformy "Find packages for Docker on Windows"

Porady dotyczące skutecznego monitowania

Aby pomóc Copilot niezawodnie wywołać narzędzia MCP WinGet, użyj języka, który wyraźnie wskazuje intencję zarządzania pakietami. Jeśli copilot nie używa narzędzi McP WinGet automatycznie, dodaj do monitu jawne słowa kluczowe, takie jak "using WinGet", "from WinGet" lub "search WinGet".

W przypadku korzystania z programu VS Code sprawdź również, czy tryb agenta jest nadal włączony i czy winget-mcp jest zaewidencjonowany w panelu narzędzi. W przypadku korzystania z Copilot CLI, użyj polecenia /mcp, aby potwierdzić, że serwer jest połączony.

Dostępne polecenia WinGet MCP

Serwer McP WinGet obsługuje obecnie następujące polecenia:

znajdź

Wyszukuje repozytorium WinGet pod kątem pakietów spełniających określone kryteria. To narzędzie ułatwia odnajdywanie dostępnego oprogramowania i ich szczegółów.

Parametry:

  • Zapytanie wyszukiwania lub identyfikator pakietu
  • Opcjonalne filtry dla źródła, wersji lub innych kryteriów

instalować

Inicjuje instalację określonego pakietu z repozytorium WinGet. To narzędzie może instalować pakiety za Twoją zgodą.

Parametry:

  • Identyfikator lub nazwa pakietu
  • Opcjonalna specyfikacja wersji
  • Opcjonalne parametry instalacji

Rozwiązywanie problemów

Problemy z połączeniem

Jeśli wystąpią problemy z połączeniem między programem VS Code i serwerem MCP WinGet:

  1. Sprawdź składnię mcp.json pliku konfiguracji.
  2. Sprawdź, czy ścieżka do WindowsPackageManagerMCPServer.exe jest poprawna.
  3. Upewnij się, że plik wykonywalny ma odpowiednie uprawnienia do uruchomienia.
  4. Przejrzyj panel danych wyjściowych programu VS Code, aby uzyskać szczegółowe komunikaty o błędach.
  5. Spróbuj ponownie uruchomić integrację mcp w programie VS Code.

Ograniczona lub brak odpowiedzi od agenta sztucznej inteligencji

Jeśli agent sztucznej inteligencji nie korzysta z narzędzi WinGet MCP:

  • Użyj określonych monitów, które wyraźnie wskazują, że chcesz uzyskać informacje o zarządzaniu pakietami.
  • Wypróbuj frazy, takie jak "Wyszukaj pakiety" lub "Zainstaluj przy użyciu winGet".
  • Sprawdź, czy tryb agenta jest włączony w czacie Copilot.
  • Sprawdź, czy narzędzia WinGet MCP są widoczne na liście narzędzi.

Problemy z instalacją pakietu

Jeśli instalacja pakietu zakończy się niepowodzeniem lub nieoczekiwanie zachowuje się:

  • Przejrzyj polecenie instalacji lub parametry sugerowane przez agenta sztucznej inteligencji.
  • Zapoznaj się z przewodnikiem rozwiązywania problemów z usługą WinGet , aby zapoznać się z typowymi problemami.
  • Sprawdź, czy masz odpowiednie uprawnienia do instalowania oprogramowania.
  • Upewnij się, że źródło pakietu jest dostępne.

Ograniczenia

Ważne

Odpowiadasz za przejrzenie wszystkich poleceń wygenerowanych z pomocą sztucznej inteligencji. Zawsze weryfikuj polecenia instalacji i sprawdź źródło oprogramowania przed wykonaniem ich w systemie.

Bieżące ograniczenia integracji serwera WinGet MCP obejmują:

  • Zachowanie agenta: agenci sztucznej inteligencji mogą nie używać serwera MCP WinGet dla każdego zapytania, choć określone monitowanie może zachęcić do jego użycia.
  • Dostępność narzędzi: integracja obecnie obsługuje polecenia tylko find i install. Przyszłe wersje mogą dodać obsługę większej liczby poleceń.

Jak program WinGet MCP integruje się z programem VS Code

Serwer McP WinGet integruje się z agentami programu VS Code i sztucznej inteligencji w następujący sposób:

  1. Program VS Code Copilot komunikuje się z agentami sztucznej inteligencji, którzy mogą uzyskiwać dostęp do serwerów MCP.
  2. Agenci sztucznej inteligencji używają protokołu MCP do wykonywania zapytań dotyczących serwera MCP WinGet w celu uzyskania informacji.
  3. Serwer WinGet MCP przetwarza żądania i wywołuje odpowiednie polecenia interfejsu wiersza polecenia WinGet.
  4. Interfejs wiersza polecenia WinGet wykonuje wyszukiwania i instalacje pakietów w repozytorium.
  5. Wyniki przepływają z powrotem przez łańcuch, aby zapewnić ulepszoną pomoc.

Diagram integracji rozwiązania WinGet MCP