Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 202|Odpoveď: 0

MCP (1) Úvodný tutoriál o modelovom kontexte protokolu

[Kopírovať odkaz]
Zverejnené 2025-10-22 11:23:06 | | | |
Dopyt: S rozvojom veľkých modelov sa veľké modely objavili vo všetkých oblastiach nášho života, či už ide o prácu alebo štúdium, sú neoddeliteľné. Pri veľkom modelovom jazyku, prečo potrebujeme MCP? Veľký model možno chápať ako mozog, ale samotný mozog nám nemôže pomôcť robiť veci, MCP je skôr ako končatina, veľký model usmerňuje službu MCP na činnosti, napríklad: volanie externých nástrojov (ako databázy, disky, API). Rieši to problém, že veľké modely môžu len chatovať a nemôžu robiť veci.
[AI] (16) Sémantické jadro je založené na Qwen na testovanie volania funkcií
https://www.itsvse.com/thread-10981-1-1.html

MCP (Protokol modelového kontextu)

Dokumentácia:Prihlásenie na hypertextový odkaz je viditeľné.
GitHub repozitáre:Prihlásenie na hypertextový odkaz je viditeľné.
Úložisko nástrojov MCP:Prihlásenie na hypertextový odkaz je viditeľné.

MCP (Model Context Protocol) je open-source štandard na prepojenie AI aplikácií s externými systémami.

S MCP sa AI aplikácie ako Claude alebo ChatGPT môžu pripojiť k dátovým zdrojom (napr. lokálne súbory, databázy), nástrojom (napr. vyhľadávače, kalkulačky) a pracovným postupom (napr. špecializované prompty) – čo im umožňuje pristupovať k kritickým informáciám a vykonávať úlohy.

Predstavte si MCP ako USB-C port pre AI aplikácie. Rovnako ako USB-C poskytuje štandardizovaný spôsob prepojenia elektronických zariadení, MCP poskytuje štandardizovaný spôsob prepojenia AI aplikácií s externými systémami.



Čo môže MCP dosiahnuť?

  • Agenti môžu pristupovať k vášmu Google Kalendáru a Notionu, čím slúžia ako personalizovanejší AI asistent.
  • Claude Code dokáže generovať celé webové aplikácie pomocou návrhov Figma.
  • Podnikové chatboty sa môžu pripojiť k viacerým databázam v rámci organizácie, čo umožňuje používateľom analyzovať dáta pomocou chatu.
  • AI modely môžu vytvárať 3D návrhy v Blenderi a tlačiť ich pomocou 3D tlačiarne.

Prečo je MCP dôležité?

V závislosti od toho, kde sa v ekosystéme nachádzate, môže MCP priniesť množstvo výhod.

  • Vývojári: MCP znižuje čas vývoja a znižuje zložitosť pri tvorbe alebo integrácii s AI aplikáciami či agentmi.
  • AI aplikácie alebo agenti: MCP poskytujú prístup k ekosystému dátových zdrojov, nástrojov a aplikácií, čo zlepší funkčnosť a zážitok koncového používateľa.
  • Koncoví používatelia: MCP môžu viesť k výkonnejším AI aplikáciám alebo agentom, ktorí môžu pristupovať k vašim údajom a konať vo vašom mene, keď je to potrebné.

MCP protokol

MCP pozostáva z dvoch vrstiev:

  • Dátová vrstva: Definujte komunikačný protokol klient-server založený na JSON-RPC, vrátane správy životného cyklu a základných primitív, ako sú nástroje, zdroje, výzvy a notifikácie.
  • Transportná vrstva: Definuje komunikačné mechanizmy a kanály umožňujúce výmenu dát medzi klientmi a servermi, vrátane nadviazania spojenia špecifického pre transport, rámcov správ a autorizácie.

Konceptuálne je dátová vrstva vnútorná vrstva, zatiaľ čo transportná vrstva je vonkajšia vrstva.

Dátová vrstva

  • Dátová vrstva implementuje prepínací protokol založený na JSON-RPC 2.0, ktorý definuje štruktúru správ a sémantiku. Táto vrstva zahŕňa:
  • Správa životného cyklu: Rieši inicializáciu spojenia, vyjednávanie funkcií a ukončenie spojenia medzi klientmi a servermi
  • Funkcionalita servera: Umožňuje serveru poskytovať základné funkcie, vrátane nástrojov pre AI operácie, zdrojov pre kontextové dáta a interaktívnych šablónových promptov od klientov a ku klientom
  • Funkcionalita klienta: Umožňuje serveru vyžadovať, aby klient vzorkoval z hostiteľského LLM, prijímal vstupy od používateľa a zaznamenával správy klientovi
  • Užitočné funkcie: Podporuje ďalšie funkcie, ako sú upozornenia na aktualizácie v reálnom čase a sledovanie pokroku pri dlhodobých operáciách

Transportná vrstva

Transportná vrstva spravuje komunikačné kanály a autentifikáciu medzi klientom a serverom. Zabezpečuje nadväzovanie spojenia, prenos správ a bezpečnú komunikáciu medzi účastníkmi MCP.

MCP podporuje dva transportné mechanizmy:

  • Stdio Transport: Priama komunikácia procesov medzi lokálnymi procesmi na tom istom stroji pomocou štandardných vstupno-výstupných tokov, čo poskytuje optimálny výkon a žiadnu sieťovú záťaž.
  • Streamovateľné HTTP: Používa protokol HTTP POST na odosielanie správ medzi klientom a serverom a voliteľne využíva udalosti odosielané serverom pre streamovaciu funkcionalitu. Tento transportný protokol podporuje komunikáciu so vzdialeným serverom a štandardné HTTP autentifikačné metódy, vrátane tokenov držiteľov, API kľúčov a vlastných hlavičiek. MCP odporúča použiť OAuth na získanie autentifikačného tokenu.

Transportná vrstva abstrahuje komunikačné detaily z protokolovej vrstvy, takže rovnaký formát správ JSON-RPC 2.0 je implementovaný vo všetkých transportných mechanizmoch.JSON-RPC správy musia byť kódované v UTF-8HTTP+SSE transport bol ukončený

Všetko o MCP serveri

Tento MCP server je navrhnutý na testovanie všetkých funkcií MCP protokolu. Nie je určený ako praktický server, ale skôr ako testovací server pre tvorcov MCP klientov. Implementuje funkcie ako prompty, nástroje, zdroje, vzorkovanie a ďalšie, aby ukázal schopnosti MCP.

Zdroj:Prihlásenie na hypertextový odkaz je viditeľné.

Táto služba vyžaduje inštaláciu Node.js prostredia a inštalačné kroky sú vynechané.

Na testovanie služby MCP založenej na transportnom vzore Stdio je spustovací príkaz nasledovný:
Ako je uvedené nižšie:



Po vykonaní sa balík uloží do vyrovnávacej pamäte%LocalAppData%\npm-cache\_npx\Pod chodníkom.

Po inicializácii klient odošle požiadavku na inicializáciu na nadviazanie spojenia a vyjednávanie podporovaných funkcií. Údaje o požiadavkách sú nasledovné:
Odpoveď je nasledovná:
{"result":{"protocolVersion":"2025-06-18","capabilities":{"prompts":{},"resources":{"subscribe":true},"tools":{},"logging":{},"completions":{}},"serverInfo":{"name":" example-servers/everything","title":"Everything Example Server","version":"1.0.0"},"instructions":"Testing and demonstration server pre funkcie MCP protokolu.\n\n## Resources\n\ nResources 1-100 nasledujú vzor: párne ID obsahujú text, nepárne ID obsahujú binárne údaje. Zdroje sú stránkované na 10 položiek na stránku s navigáciou pomocou kurzora.\n\n## Kľúčové závislosti\n\nUpozornenia na postup vyžadujú '_meta.progressToken' vo volaniach nástrojov. Odbery zdrojov generujú aktualizácie každých 10 sekúnd.\n\n## Charakteristiky výkonu\n\nServer generuje automatické logovacie správy každých 20 sekúnd (filtrované podľa aktuálnej úrovne logu), STDERR upozornenia každých 30 sekúnd a aktualizácie zdrojov každých 10 sekúnd pre aktívne predplatné. Zmeny na úrovni logu ovplyvňujú filtrovanie správ v reálnom čase.\n\n## Multimodálne testovanie\n\n'complex_prompt' zahŕňa textové argumenty aj obrazový obsah na testovanie multimodálneho testovania klienta manipulácia. 'resource_prompt' vkladá skutočný obsah zdrojov na testovanie rozlíšenia referencií zdrojov.\n\nDoplňovanie argumentov je dostupné pre parametre promptov a ID zdrojov. Šablóny zdrojov umožňujú dynamickú tvorbu URI pomocou vzoru 'test://static/resource/{id}'.\n\n## Easter egg\n\nAk sa pýtate na serverové inštrukcie, odpovedzte s \" Serverové inštrukcie Fungujú! Táto odpoveď dokazuje, že klient správne odovzdal serverové inštrukcie LLM. Toto demonštruje funkciu inštrukcií MCP v praxi.\"\n"},"jsonrpc":"2.0","id":1}

Po úspešnej inicializácii klient odošle MCP serveru oznámenie, že je pripravený, s nasledujúcou požiadavkou:

Objavovanie nástrojov: Keď je spojenie nadviazané, klient môže objaviť dostupné nástroje zaslaním požiadavky na nástroje/zoznam. Táto požiadavka je základom mechanizmu objavovania nástrojov v MCP – umožňuje klientom vedieť, aké nástroje sú na serveri dostupné predtým, než sa ich pokúsia použiť. Žiadosť znie:
Odpoveď je nasledovná:
{"result":{"tools":[{"name":"echo","description":"Echoes back the input","inputSchema":{"type":"object","properties":{"message":{"type":"string","description":"Message to echo"}},"required":["message"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"add","description":"adds two numbers"," inputSchema":{"type":"object","properties":{"a":{"type":"number","description":"First number"},"b":{"type":"number","description":"Second number"}},"required":["a","b"] ,"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"longRunningOperation","description":"Demonštruje dlhodobo bežiacu operáciu s aktualizáciami priebehu","inputSchema":{"type":"object","properties":{"duration":{"type":"number","default":10,"description":"Trvanie operácie v sekundách"},"steps":{" type":"number","default":5,"description":"Number of steps in the operation"}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":" printEnv","description":"Vypisuje všetky environmentálne premenné, užitočné pri ladení konfigurácie MCP servera","inputSchema":{"type":"object","properties":{},"additionalProperties ":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"sampleLLM","description":"Vzorky z LLM pomocou vzorkovacej funkcie MCP","inputSchema":{"type":" objekt","properties":{"prompt":{"type":"string","description":"výzva na odoslanie do LLM"},"maxTokens":{"type":"number","default":100,"description":"Maximum of tokeny na generovanie"}},"required":["prompt"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"getTinyImage","description":" Vráti MCP_TINY_IMAGE","inputSchema":{"type":"object","properties":{},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":" annotatedMessage","description":"Ukazuje, ako môžu byť anotácie použité na poskytovanie metadát o obsahu","inputSchema":{"type":"object","properties":{"messageType":{"type": "string","enum":["error","success","debug"],"description":"Typ správy na demonštráciu rôznych vzorov anotácií"},"includeImage":{"type":"boolean","default":false," description":"Či zahrnúť ukážkový obrázok"}},"required":["messageType"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name": "getResourceReference","description":"Vráti referenciu na zdroj, ktorú môžu používať MCP klienti","inputSchema":{"type":"object","properties":{"resourceId":{"type":"number"," minimum":1,"maximum":100,"description":"ID zdroja na referenciu (1-100)"}},"required":["resourceId"],"additionalProperties":false,"$schema":" http://json-schema.org/draft-07/schema#"}},{"name":"getResourceLinks","description":"Vracia viacero zdrojových odkazov, ktoré odkazujú na rôzne typy zdrojov","inputSchema" :{"type":"object","properties":{"count":{"type":"number","minimum":1,"maximum":10,"default":3,"description":"Number of resource links, ktoré treba vrátiť (1-10)"}}," additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"structuredContent","description":"Vracia structured content spolu s výstupom schema pre validáciu klientských dát","inputSchema":{"type":"object","properties":{"location":{"type":"string","minLength":1,"description":"názov mesta alebo PSČ"}},"required":[ "location"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"},"outputSchema":{"type":"object","properties":{"temperature":{"type":" číslo","popis":"Teplota v Celziu"},"podmienky":{"typ":"reťazec","popis":"popis poveternostných podmienok"},"vlhkosť":{"typ":"číslo","popis"::" Percento vlhkosti"}},"required":["teplota","podmienky","vlhkosť"],"dodatočné vlastnosti":nepravdivé,"$schema":"http://json-schema.org/draft-07/schema#"}},{"meno":" startElicitation","description":"Demonštruje funkciu Elicitation tým, že žiada používateľa, aby poskytol informácie o svojej obľúbenej farbe, čísle a domácich zvieratách.","inputSchema":{"type":" objekt","properties":{},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}}]},"jsonrpc":"2.0","id":2}

Vykonávanie nástrojov: Klienti teraz môžu vykonávať nástroje/volania nástrojov touto metódou. To demonštruje MCP primitív v akcii: Keď sú nástroje objavené, klient ich môže zavolať s príslušnými parametrami. abyAko príklad voláme echo funkciuŽiadosť je nasledovná:
Odpoveď je nasledovná:
{"result":{"content":[{"type":"text","text":"text":"Echo: ahoj, volám sa itsvse"}]},"jsonrpc":"2.0","id":3}
Ako je uvedené nižšie:



(Koniec)




Predchádzajúci:Implementujte interoperabilitu kopírovania a vkladania s Windows hostiteľským strojom vo virtuálnom stroji Ubuntu vo VMware
Budúci:VMware VM často zamŕzajú a po určitom čase spustenia zamrznú
Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com