Plugin pro připojení MCP
Vestavěný plugin MCP připojuje servery Model Context Protocol a zpřístupňuje jejich nástroje Elowenu. Podporuje místní procesy stdio a vzdálená připojení streamable http. Jak server přidat a jak jeho nástroje používat najdete v MCP.
Cíle na místním počítači
Operace MCP přes HTTP a jen přes API zůstávají v místních konverzacích dostupné. Pro vybraný spárovaný počítač běží servery stdio na tomto počítači s jeho nainstalovanými příkazy a pracovním adresářem. Každá operace otevře a zavře vlastní připojení a proces, včetně inicializace; další tah začne novou operaci. Příkaz serveru musí být na počítači nainstalovaný. Centrálně uložené proměnné prostředí příkazu jsou odmítnuty, takže přihlašovací údaje nastavte přímo na počítači. Odpojená operace selže s LOCAL_EXECUTION_LOST a nikdy se neopakuje ani nespouští na hostiteli daemonu.
Správa MCP serverů
Otevřete MCP v postranním panelu webového rozhraní. Pomocí Přidat server nastavte název, vlastnictví, přenos a údaje o připojení. Pro stdio zadejte příkaz, argumenty a případné proměnné prostředí. Pro streamable http zadejte URL. Server můžete zapnout nebo vypnout, zobrazit jeho zjištěné nástroje, prohledávat a filtrovat seznam, znovu připojit jeden server nebo zvolit Znovu připojit vše. Vyberte několik serverů a zapněte, vypněte nebo smažte je společně.
Zapnutý server se při uložení ověří a jeho nástroje se zjistí. HTTP servery vyžadující OAuth zůstanou uložené, když je potřeba autorizace nebo když selže zjištění OAuth či registrace klienta. Neúspěšné nastavení OAuth zobrazí Chyba přihlášení a diagnostiku, která pojmenuje selhanou fázi nebo stav HTTP. Chyba i její akce pro přihlášení přežijí restart Elowenu. Těla odpovědí poskytovatele se nikdy nezobrazují. Ostatní chyby ověření se ohlásí, ale změna se neuloží.
Stránka ukazuje, zda je server Připojeno, Odpojeno, ve stavu Chyba nebo Zakázáno, spolu s přenosem, vlastnictvím a počtem nástrojů. Zapnutý server může být i odpojený, což je něco jiného než vypnutý. Po vyřešení chyby použijte Znovu připojit. Znovu připojit vše zkusí znovu vhodné odpojené nebo chybové servery a ohlásí úspěchy i chyby. Webová stránka i CLI přeskakují servery čekající na přihlášení a nepodporované servery SSE. K autorizaci použijte samostatnou akci Přihlásit se. Odebráním serveru budou jeho nástroje okamžitě nedostupné. Uložení nastavení pluginu nebo jeho zapnutí či vypnutí vyžádá restart Elowenu, aby se změna projevila.
Telemetrický pruh chatu nese část MCP s počtem připojených serverů ze všech nastavených; vypisuje připojené servery a ty, které potřebují přihlášení. Výběrem řádku otevřete stránku MCP.
V CLI vypíše /mcp Vaše osobní servery a servery instance, které smíte spravovat. Každá položka ukazuje vlastnictví, stav připojení, stav přihlášení a zjištěné nástroje. Vlastnictví a název dohromady určují server, takže dva rozsahy mohou mít servery se stejným názvem. Stisknutím Enter otevřete podrobnosti. Stisknutím r znovu připojíte vybraný server, R zkusí znovu zapnuté servery, které jsou odpojené nebo chybové, a Ctrl+L obnoví seznam. Výsledek opětovného připojení hlásí stav připojení, který server vrátil, ne jen to, zda požadavek uspěl. Připojený server bez nástrojů je platný. Znovu připojit vše ohlásí, kolik serverů se připojilo, bylo ověřeno ve svém spravovaném Projektu, potřebuje přihlášení nebo selhalo, s diagnostikou u každé chyby. Je dostupné jen tehdy, když je plugin zapnutý.
U HTTP serverů, které potřebují autorizaci, zvolte Přihlásit se ve výběru podrobností. CLI otevře autorizační adresu v prohlížeči a ponechá ji v oznámení, takže ji můžete otevřít i ručně, včetně připojení přes SSH. Dokončete přihlášení stejným účtem Elowen a potom zvolte Obnovit stav. Obnovení jen čte aktuální stav a nikdy nespouští další přihlášení. Žádný proces na pozadí nečeká na souhlas v prohlížeči. Zavřením výběru klávesou Escape zůstane přihlášení v prohlížeči čekající, dokud po deseti minutách nevyprší. Nové spuštění přihlášení nahradí čekající žádost. Odhlásit se vymaže přihlašovací údaje serveru a zruší každé čekající přihlášení.
HTTP servery vyžadující OAuth zůstanou uložené, když je potřeba autorizace. Pomocí Přihlásit se server autorizujte a pomocí Odhlásit se vymažte jeho přihlašovací údaje, čekající přihlášení i živé připojení. Uložené servery SSE nejsou podporované a nikdy se nepřipojí. Nahraďte je servery streamable HTTP. Přihlašovací údaje se vymažou při smazání serveru, při změně jeho URL, při převodu vlastnictví nebo při odebrání osobního vlastníka.
Skupina Nastavení serveru je zpočátku otevřená a pamatuje si, zda je sbalená, zvlášť pro každý server. Vlastnictví a přenos používají rozbalovací nabídky. Argumenty a hodnoty prostředí používají víceřádková pole. Změny přesto vyžadují Uložit. Stav připojení a akce OAuth zůstávají viditelné i při sbalené skupině.
Nastavení OAuth
OAuth vyžaduje nastavenou veřejnou webovou adresu. Některé servery podporují dokumenty s metadaty klienta a nemají registrační koncový bod. Pro ně Elowen zveřejní veřejný dokument klienta HTTPS na /hooks/mcp/oauth/client-metadata na Vaší instanci. Adresa dokumentu je ID klienta a dokument deklaruje /p/mcp/oauth/callback instance jako cíl přesměrování. Neobsahuje přihlašovací údaje, data účtu ani nastavení serveru. Ponechte veřejný původ HTTPS a adresu dokumentu stabilní po celou dobu používání připojení, včetně pozdějších obnovení tokenů. Když veřejný původ změníte a restartujete, ID klienta i cíl zpětného volání se změní. Odhlaste se a přihlaste znovu. Vypnutí pluginu MCP odstraní veřejný dokument, takže autorizační server už tohoto klienta nerozpozná.
Server s registračním koncovým bodem používá dynamickou registraci klienta, i když zároveň nabízí dokumenty klienta.
Chcete-li přejít z proxy OAuth pro stdio na přímé HTTP, přidejte koncový bod HTTP a přihlaste se k němu. Přihlašovací údaje se klíčují podle vlastníka, názvu serveru a URL, takže nová položka potřebuje vlastní přihlášení. Než proxy vyřadíte, ověřte přímé připojení a jeho nástroje.
Zpětné volání OAuth v prohlížeči
Po schválení přístupu poskytovatel přesměruje na stránku zpětného volání MCP na /p/mcp/oauth/callback. Stránka dokončí přihlášení a potom odstraní přihlašovací kód z adresního řádku. Pokud adresa neobsahuje state, stránka zobrazí chybu neplatné žádosti a nic neodešle.
Zatímco přihlášení potvrzuje, stránka ukazuje stav načítání. Při úspěchu zobrazí krátké potvrzení a vrátí se na /p/mcp, takže tlačítko Zpět nemůže odeslat zpětné volání znovu. Pokud žádost o přihlášení vypršela, nebyla rozpoznána, byla odmítnuta nebo selhala, stránka zobrazí odpovídající zprávu. Když síť selže nebo je odpověď neočekávaná, zobrazí obecnou zprávu o selhání a žádné podrobnosti o serveru. Selhání se neopakují. Spusťte nové přihlášení z MCP.
Zpětné volání potřebuje přihlášenou relaci. Pokud přijdete odhlášení, Elowen nejdřív zobrazí svůj přihlašovací formulář a stránka potom dokončí čekající přihlášení, dokud neuplyne deset minut. Když přihlášení nelze dokončit, spusťte nové z MCP.
Chování připojení
Server může poskytovat zdroje bez nástrojů a přesto se připojit. Nula nástrojů je platný výsledek. Nástroje se zjišťují jen tehdy, když je server nabízí.
Po úspěšném opětovném připojení serveru vázaného na spravovaný Projekt ho Elowen ohlásí jako ověřeno v projektu, ne jako připojený. Stav připojení zůstává odpojený, protože každá operace otevírá a zavírá vlastní připojení. Znovu připojit vše počítá tyto ověřené servery odděleně od živých připojení a chyb.
Servery instance se připojí při načtení pluginu a připojení i zjišťování nástrojů omezuje časový limit připojení. Pokus o připojení, který selže v síti, vyprší nebo odpoví stavem HTTP 408, 429 či chybou serveru, se opakuje nejvýše stanovený početkrát a stav serveru hlásí probíhající pokus. Server, který potřebuje přihlášení, odmítne žádost stavem HTTP 401 nebo 403 nebo odpoví chybou protokolu, se znovu nezkouší; po vyřešení použijte Znovu připojit. Osobní vzdálené servery se připojí při prvním volání některého jejich nástroje. Do té doby se jejich nástroje vypisují z posledního úspěšného zjištění. Pokud server nemá uložené zjištění, připojte ho znovu, aby se jeho nástroje zjistily. Osobní nástroje se registrují jen pro účet, který je vlastní. Nástroje instance jsou dostupné všem konverzacím. Oprávnění nástrojů účtu mohou jednotlivé nástroje dál omezit.
Server stdio spouští příkaz jako místní proces. Vytvořit nebo spustit ho mohou jen administrátoři instance, i když je označený jako osobní. Jeho argumenty se předají tomuto příkazu a hodnoty prostředí jsou pro proces dostupné. Nastavte jen příkazy, kterým důvěřujete. Pokud server stdio vytvoříte s vybraným spravovaným Projektem, připojí se k tomuto Projektu a běží tam. Připojení nelze později změnit. Uložení připojení ověří Váš aktuální přístup k Projektu, i když je server vypnutý. Vzdálené HTTP servery nikdy nespouští místní příkaz. Uložené centrální proměnné prostředí nelze do spravovaného Projektu importovat, takže jeho přihlašovací údaje nastavte uvnitř Projektu.
Název serveru lze použít v osobním i instančním rozsahu, ale ne dvakrát ve stejném rozsahu. Protože servery instance vidí každý účet, osobní server nemůže převzít název serveru instance.
Nástroje MCP
| Nástroj | Co dělá |
|---|---|
AddMcpServer |
Přidá server, ověří ho a zjistí jeho nástroje. |
ListMcpServers |
Vypíše servery v jednom rozsahu vlastnictví, aniž by vracel přihlašovací údaje, příkazy nebo hodnoty prostředí. |
ReconnectMcpServer |
Znovu připojí jeden server a znovu zjistí jeho nástroje. |
RemoveMcpServer |
Odebere server a zavře jeho připojení. |
ListMcpResources |
Vypíše zdroje z připojených serverů a u serverů, které selhaly, uvede chyby. |
ReadMcpResource |
Přečte zdroj podle serveru a URI. Text vrátí jako text. Binární obsah uloží do souboru. |
mcp__<server>__<tool> |
Zavolá nástroj, který zveřejnil připojený server. |
Výběr /mcp i stránka MCP Vám pomohou zkontrolovat připojení. Nástroje výše umožňují spravovat servery i asistentovi. AddMcpServer vyžaduje scope vlastnictví, buď personal, nebo instance. Přidání serveru, který potřebuje OAuth, ohlásí, že server byl uložen, a odkáže Vás na /mcp nebo /p/mcp pro výslovné přihlášení. Neúspěšné nastavení OAuth se vrátí jako chyba, která nese uložený server a bezpečnou diagnostiku. Nikdy netvrdí, že je připojený. ReconnectMcpServer hlásí připojení vyžadující přihlášení a selhaná připojení tak, jak jsou. Ani jeden nástroj sám nespouští přihlášení.
Na stránce MCP lze definice nástrojů poskytnuté serverem zobrazit, ale ne upravit. Měňte je na serveru samotném. Nástroje pro zdroje jsou jen pro čtení. Každé binární čtení zapíše nový soubor a dřívější soubory ponechá, takže cesta z dřívějšího čtení stále drží své bajty. Výsledek vrátí cestu, až je soubor kompletní. Pokud uložení selže, položka zdroje ohlásí chybu a neúplný soubor se odstraní. Když server vrátí chybu jako obsah, chyba zůstane čitelná. Chyby připojení a časových limitů se hlásí jako chyby nástroje.
Vlastnictví a přihlašovací údaje
Servery Osobní patří propojenému účtu, který je vytvořil. Jen tento účet je může spravovat a používat. Servery Instance jsou sdílené a spravují je administrátoři instance. Vytvoření osobního serveru vyžaduje propojený účet. Vytvoření, aktualizace, odebrání nebo opětovné připojení serveru instance vyžaduje přístup administrátora. Plugin nelze přidělovat uživatelům a jeho zapnutí nezobrazuje samostatný dotaz na souhlas.
Editor ukazuje názvy nastavených proměnných prostředí, nikdy jejich hodnoty. Chcete-li přidat nebo změnit hodnoty prostředí stdio, zadejte je jako KEY=value. Ponechání pole prázdného zachová stávající hodnoty. Nástroj ListMcpServers nikdy nevrací přihlašovací údaje, příkazy ani hodnoty prostředí. Vzdálený HTTP server se může přesunout mezi instančním rozsahem a Vaším osobním rozsahem. Server stdio rozsah změnit nemůže. Chcete-li ho přesunout, vytvořte ho znovu v druhém rozsahu. Odebrání účtu odstraní i jeho osobní servery a jejich uložená zjištění nástrojů.
Nastavení a limity
V Nastavení → Pluginy otevřete nastavení pluginu MCP a nastavte globální hodnoty Časový limit připojení a Časový limit volání nástroje:
| Nastavení | Výchozí | Rozsah |
|---|---|---|
| Časový limit připojení | 15 sekund | 5–60 sekund |
| Časový limit volání nástroje | 2 minuty | 30 sekund–5 minut |
Tyto časové limity platí pro všechny servery. Hodnoty mimo rozsah se nastaví na nejbližší povolenou hodnotu. Název serveru musí mít 1–40 znaků. Musí začínat písmenem nebo číslicí a smí obsahovat jen písmena, číslice, podtržítka a pomlčky. Názvy jsou v jednom rozsahu vlastnictví jedinečné.
Adresy HTTP musí používat HTTP nebo HTTPS. Nesmí obsahovat uživatelské jméno, heslo ani parametr dotazu, který vypadá jako tajemství, například token nebo klíč API. Názvy nástrojů ze serveru se normalizují na slova malými písmeny oddělená podtržítky, přičemž název serveru i nástroje je omezen na 40 znaků. Popis serveru je omezen na 2 048 znaků. Vrácené obrázky se zmenší tak, aby žádná hrana nepřesáhla 2 000 pixelů. Ostatní výsledky, které nejsou text, se nahradí krátkým zástupným textem. Ve spravovaném Projektu je binární zdroj omezen na 16 MiB.
Další: Session Helpers