Udostępnij za pomocą


Obsługa MCP

Model Context Protocol (MCP) to otwarty protokół, który standaryzuje sposób, w jaki aplikacje dostarczają kontekst dużym modelom językowym (LLM). Począwszy od wersji AI Shell 1.0.0-preview.6, AI Shell może działać jako host i klient MCP dla serwerów MCP. Kluczowymi uczestnikami architektury MCP są:

  • Host MCP — powłoka AI koordynuje i zarządza jednym lub wieloma klientami MCP
  • Klient MCP — składnik klienta powłoki AI Shell utrzymuje połączenie z serwerem MCP i uzyskuje kontekst z serwera MCP, z którego może korzystać host MCP
  • Serwer MCP — program działający lokalnie lub hostowany zdalnie, który zapewnia kontekst klientom MCP

Aby uzyskać więcej informacji na temat MCP, zobacz Omówienie architektury w oficjalnej dokumentacji protokołu Model Context Protocol.

Narzędzia MCP umożliwiają agentom AI dostęp do zewnętrznych narzędzi i usług w celu zwiększenia ich możliwości i zapewnienia dokładniejszych odpowiedzi. MCP mogą integrować się z różnymi interfejsami API, bazami danych i innymi zasobami, umożliwiając agentom pobieranie informacji w czasie rzeczywistym i wykonywanie złożonych zadań.

Wbudowane narzędzia dla AI Shell

AI Shell jest wyposażony w zestaw wbudowanych narzędzi podobnych do MCP, które są dostępne dla wszystkich agentów. Te polecenia są podobne do narzędzi serwera MCP, ale są dostępne wyłącznie w środowisku powłoki AI. Narzędzia te ulepszają działanie powłoki AI, zapewniając możliwości kontekstowe i funkcje automatyzacji. Możesz ich używać w połączeniu z innymi serwerami MCP, aby stworzyć potężne środowisko powłoki oparte na sztucznej inteligencji.

Poniższa lista zawiera wbudowane narzędzia i ich zastosowanie:

  • get_working_directory - Pobierz bieżący katalog roboczy połączonej sesji programu PowerShell, w tym nazwę dostawcy (np. FileSystem, Certificate) i ścieżkę (np. C:\\, cert:\\).
  • get_command_history - Pobierz maksymalnie 5 najnowszych poleceń wykonywanych w połączonej sesji programu PowerShell.
  • get_terminal_content - Pobierz wszystkie dane wyjściowe aktualnie wyświetlane w oknie terminalu połączonej sesji programu PowerShell.
  • get_environment_variables - Pobierz zmienne środowiskowe i ich wartości z połączonej sesji programu PowerShell. Wartości potencjalnie wrażliwych zmiennych są redagowane.
  • copy_text_to_clipboard - Skopiuj podany tekst lub kod do schowka systemowego, udostępniając go do wklejenia w innym miejscu.
  • post_code_to_terminal - Wstaw kod do wiersza polecenia połączonej sesji programu PowerShell bez jej wykonywania. Użytkownik może przejrzeć i uruchomić go ręcznie, naciskając Enter.
  • run_command_in_terminal - To narzędzie umożliwia wykonywanie poleceń powłoki w trwałej sesji programu PowerShell, zachowując zmienne środowiskowe, katalog roboczy i inny kontekst w wielu poleceniach.
  • get_command_output - Pobiera dane wyjściowe polecenia, które zostało wcześniej uruchomione za pomocą run_command_in_terminal.

Uwaga / Notatka

Wbudowane narzędzia opierają się na środowisku przyczepki z połączoną sesją programu PowerShell i zapewniają zwiększoną świadomość kontekstu i możliwości automatyzacji.

Demos

Oto prosta demonstracja pokazująca, w jaki sposób AI Shell może uruchamiać polecenia w Twoim imieniu za pomocą run_command_in_terminal tego narzędzia:

Niech MCP uruchomi polecenie w terminalu za Ciebie.

W tym przykładzie pokazano, jak dodatkowy kontekst jest dostarczany do AI Shell w celu poprawy wyników:

Uzyskiwanie szerszego kontekstu dzięki wbudowanym narzędziom.

Możesz również użyć tego get_terminal_content narzędzia, aby pobrać zawartość z podłączonego terminala i dostarczyć ją do AI Shell, aby pomóc mu zrozumieć, co próbujesz zrobić:

Pobieranie zawartości z terminala dla danych wyjściowych utworzonych przed uruchomieniem AI Shell.

Znajdowanie i konfigurowanie serwerów MCP

Serwer MCP to aplikacja, która działa lokalnie lub jest hostowana zdalnie, a dostęp do niej uzyskuje się za pośrednictwem adresu URL punktu końcowego. Wiele serwerów MCP jest typu open source i dostępnych za darmo. Lokalne aplikacje serwera MCP są zwykle tworzone przy użyciu Node.js i mogą być instalowane przy użyciu npmprogramu . Listę dostępnych serwerów MCP można znaleźć na stronie Awesome MCP Servers.

Aby można było korzystać z serwera MCP (lokalnego lub zdalnego), należy dodać go do mcp.json pliku konfiguracyjnego. W niektórych przypadkach instalacja lokalnego MCP przed użyciem może nie być konieczna. Jednak serwer MCP zostanie zainstalowany przy pierwszym uruchomieniu AI Shell. Może to potrwać kilka minut. Aby uzyskać najlepsze wyniki, należy wstępnie zainstalować serwer MCP. Zapoznaj się z dokumentacją konkretnego serwera MCP, aby uzyskać instrukcje instalacji. Nie trzeba instalować zdalnych serwerów MCP. Wystarczy dodać je do mcp.json pliku.

Instalowanie lokalnego serwera MCP

Poniższy przykład instaluje serwery @modelcontextprotocol/server-everything i @modelcontextprotocol/server-filesystem MCP. Serwery te są publikowane jako pakiety węzłów. Aby korzystać z tych serwerów MCP, musisz mieć Node.js zainstalowane.

Aby zainstalować serwery MCP, możesz użyć następujących poleceń:

npm install -g @modelcontextprotocol/server-everything
npm install -g @modelcontextprotocol/server-filesystem

Aby uzyskać więcej informacji na temat ich poleceń i możliwości, zobacz następującą dokumentację:

Dodawanie serwerów MCP

Aby dodać serwer MCP, utwórz plik w $HOME\.aish\ folderzemcp.json. W poniższym przykładzie przedstawiono dwa lokalne serwery MCP i filesystemdwa zdalne serwery everything MCP. Możesz dodać dowolną liczbę serwerów MCP.

{
    "servers": {
        "everything": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "@modelcontextprotocol/server-everything"
            ]
        },
        "filesystem": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "@modelcontextprotocol/server-filesystem",
                "C:/Users/username/"
            ]
        },
        "github": {
            "type": "http",
            "url": "https://api.githubcopilot.com/mcp/",
            "headers": {
                "Authorization": "Bearer <YOUR_GITHUB_TOKEN>"
            }
        },
        "microsoft.docs.mcp": {
            "type": "http",
            "url": "https://learn.microsoft.com/api/mcp"
        }
    }
}

Aby uzyskać więcej informacji na temat zdalnego serwera MCP firmy Microsoft, zobacz: