3.6 KiB
Mudeli Konteksti Protokolli (MCP) Pythoni Implementatsioon
See repositoorium sisaldab Mudeli Konteksti Protokolli (MCP) Pythoni implementatsiooni, mis näitab, kuidas luua nii serveri kui ka kliendirakendust, mis suhtlevad MCP standardi abil.
Ülevaade
MCP implementatsioon koosneb kahest peamisest komponendist:
-
MCP Server (
server.py) - Server, mis pakub:- Tööriistu: Funktsioonid, mida saab kaugelt kutsuda
- Ressursse: Andmed, mida saab hankida
- Küsimusi: Mallid keelemudelitele küsimuste genereerimiseks
-
MCP Klient (
client.py) - Kliendirakendus, mis ühendub serveriga ja kasutab selle funktsioone
Funktsioonid
See implementatsioon demonstreerib mitmeid olulisi MCP funktsioone:
Tööriistad
completion- Genereerib tekstilisi lõpetusi AI mudelitelt (simuleeritud)add- Lihtne kalkulaator, mis liidab kaks arvu
Ressursid
models://- Tagastab teavet saadaolevate AI mudelite kohtagreeting://{name}- Tagastab isikupärastatud tervituse antud nimele
Küsimused
review_code- Genereerib küsimuse koodi ülevaatamiseks
Paigaldamine
MCP implementatsiooni kasutamiseks paigalda vajalikud paketid:
pip install mcp-server mcp-client
Serveri ja Kliendi Käivitamine
Serveri Käivitamine
Käivita server ühes terminaliaknas:
python server.py
Serverit saab käivitada ka arendusrežiimis MCP CLI abil:
mcp dev server.py
Või paigaldada Claude Desktopi (kui saadaval):
mcp install server.py
Kliendi Käivitamine
Käivita klient teises terminaliaknas:
python client.py
See ühendub serveriga ja demonstreerib kõiki saadaolevaid funktsioone.
Kliendi Kasutamine
Klient (client.py) demonstreerib kõiki MCP võimekusi:
python client.py
See ühendub serveriga ja kasutab kõiki funktsioone, sealhulgas tööriistu, ressursse ja küsimusi. Väljund näitab:
- Kalkulaatori tööriista tulemust (5 + 7 = 12)
- Lõpetustööriista vastust küsimusele "Mis on elu mõte?"
- Saadaolevate AI mudelite loetelu
- Isikupärastatud tervitust "MCP Explorerile"
- Koodi ülevaatamise küsimuse malli
Implementatsiooni Üksikasjad
Server on implementeeritud kasutades FastMCP API-d, mis pakub kõrgetasemelisi abstraktsioone MCP teenuste määratlemiseks. Siin on lihtsustatud näide, kuidas tööriistu määratleda:
@mcp.tool()
def add(a: int, b: int) -> int:
"""Add two numbers together
Args:
a: First number
b: Second number
Returns:
The sum of the two numbers
"""
logger.info(f"Adding {a} and {b}")
return a + b
Klient kasutab MCP kliendiraamatukogu serveriga ühenduse loomiseks ja selle kutsumiseks:
async with stdio_client(server_params) as (reader, writer):
async with ClientSession(reader, writer) as session:
await session.initialize()
result = await session.call_tool("add", arguments={"a": 5, "b": 7})
Lisateave
Lisateabe saamiseks MCP kohta külastage: https://modelcontextprotocol.io/
Lahtiütlus:
See dokument on tõlgitud AI tõlketeenuse Co-op Translator abil. Kuigi püüame tagada täpsust, palume arvestada, et automaatsed tõlked võivad sisaldada vigu või ebatäpsusi. Algne dokument selle algses keeles tuleks pidada autoriteetseks allikaks. Olulise teabe puhul soovitame kasutada professionaalset inimtõlget. Me ei vastuta selle tõlke kasutamisest tulenevate arusaamatuste või valesti tõlgenduste eest.