Files
2026-07-13 13:31:35 +08:00

121 lines
3.6 KiB
Markdown

# Protokol modelnega konteksta (MCP) Python implementacija
Ta repozitorij vsebuje Python implementacijo protokola modelnega konteksta (MCP), ki prikazuje, kako ustvariti tako strežniško kot odjemalsko aplikacijo, ki komunicirata z uporabo standarda MCP.
## Pregled
Implementacija MCP je sestavljena iz dveh glavnih komponent:
1. **MCP strežnik (`server.py`)** - Strežnik, ki omogoča:
- **Orodja**: Funkcije, ki jih je mogoče klicati na daljavo
- **Viri**: Podatki, ki jih je mogoče pridobiti
- **Pozivi**: Predloge za ustvarjanje pozivov za jezikovne modele
2. **MCP odjemalec (`client.py`)** - Odjemalska aplikacija, ki se poveže s strežnikom in uporablja njegove funkcije
## Funkcionalnosti
Ta implementacija prikazuje več ključnih funkcij MCP:
### Orodja
- `completion` - Ustvarja besedilne zaključke iz AI modelov (simulirano)
- `add` - Preprost kalkulator, ki sešteje dve števili
### Viri
- `models://` - Vrne informacije o razpoložljivih AI modelih
- `greeting://{name}` - Vrne personaliziran pozdrav za dano ime
### Pozivi
- `review_code` - Ustvari poziv za pregled kode
## Namestitev
Za uporabo te MCP implementacije namestite zahtevane pakete:
```powershell
pip install mcp-server mcp-client
```
## Zagon strežnika in odjemalca
### Zagon strežnika
Strežnik zaženite v enem terminalskem oknu:
```powershell
python server.py
```
Strežnik lahko zaženete tudi v razvojni načinu z uporabo MCP CLI:
```powershell
mcp dev server.py
```
Ali pa ga namestite v Claude Desktop (če je na voljo):
```powershell
mcp install server.py
```
### Zagon odjemalca
Odjemalca zaženite v drugem terminalskem oknu:
```powershell
python client.py
```
S tem se povežete s strežnikom in preizkusite vse razpoložljive funkcije.
### Uporaba odjemalca
Odjemalec (`client.py`) prikazuje vse zmogljivosti MCP:
```powershell
python client.py
```
S tem se povežete s strežnikom in preizkusite vse funkcije, vključno z orodji, viri in pozivi. Izhod bo prikazal:
1. Rezultat orodja kalkulatorja (5 + 7 = 12)
2. Odgovor orodja za dokončanje na vprašanje "Kaj je smisel življenja?"
3. Seznam razpoložljivih AI modelov
4. Personaliziran pozdrav za "MCP Explorer"
5. Predlogo poziva za pregled kode
## Podrobnosti implementacije
Strežnik je implementiran z uporabo API-ja `FastMCP`, ki zagotavlja visokorazredne abstrakcije za definiranje MCP storitev. Tukaj je poenostavljen primer, kako so orodja definirana:
```python
@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
```
Odjemalec uporablja MCP odjemalsko knjižnico za povezavo in klic strežnika:
```python
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})
```
## Več informacij
Za več informacij o MCP obiščite: https://modelcontextprotocol.io/
**Omejitev odgovornosti**:
Ta dokument je bil preveden z uporabo AI prevajalske storitve [Co-op Translator](https://github.com/Azure/co-op-translator). Čeprav si prizadevamo za natančnost, vas opozarjamo, da avtomatizirani prevodi lahko vsebujejo napake ali netočnosti. Izvirni dokument v njegovem izvirnem jeziku velja za avtoritativni vir. Za ključne informacije priporočamo strokovni človeški prevod. Za morebitna nesporazume ali napačne interpretacije, ki izhajajo iz uporabe tega prevoda, ne odgovarjamo.