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

121 lines
3.7 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Model Context Protocol (MCP) Python Uygulaması
Bu depo, Model Context Protocol (MCP) standardını kullanarak iletişim kuran hem sunucu hem de istemci uygulaması oluşturmayı gösteren bir Python uygulaması içerir.
## Genel Bakış
MCP uygulaması iki ana bileşenden oluşur:
1. **MCP Sunucusu (`server.py`)** - Şunları sunan bir sunucu:
- **Araçlar**: Uzaktan çağrılabilen fonksiyonlar
- **Kaynaklar**: Erişilebilen veriler
- **Prompts**: Dil modelleri için prompt şablonları
2. **MCP İstemcisi (`client.py`)** - Sunucuya bağlanan ve özelliklerini kullanan bir istemci uygulaması
## Özellikler
Bu uygulama, MCP'nin birkaç temel özelliğini gösterir:
### Araçlar
- `completion` - Yapay zeka modellerinden metin tamamlama üretir (simüle edilmiş)
- `add` - İki sayıyı toplayan basit hesap makinesi
### Kaynaklar
- `models://` - Mevcut yapay zeka modelleri hakkında bilgi döner
- `greeting://{name}` - Verilen isim için kişiselleştirilmiş selamlama döner
### Prompts
- `review_code` - Kod incelemesi için prompt oluşturur
## Kurulum
Bu MCP uygulamasını kullanmak için gerekli paketleri yükleyin:
```powershell
pip install mcp-server mcp-client
```
## Sunucu ve İstemciyi Çalıştırma
### Sunucuyu Başlatma
Sunucuyu bir terminal penceresinde çalıştırın:
```powershell
python server.py
```
Sunucu, MCP CLI kullanılarak geliştirme modunda da çalıştırılabilir:
```powershell
mcp dev server.py
```
Ya da Claude Desktopa (varsa) kurulabilir:
```powershell
mcp install server.py
```
### İstemciyi Çalıştırma
İstemciyi başka bir terminal penceresinde çalıştırın:
```powershell
python client.py
```
Bu, sunucuya bağlanacak ve mevcut tüm özellikleri gösterecektir.
### İstemci Kullanımı
İstemci (`client.py`), MCPnin tüm yeteneklerini gösterir:
```powershell
python client.py
```
Bu, sunucuya bağlanacak ve araçlar, kaynaklar ve prompts dahil tüm özellikleri kullanacaktır. Çıktı şunları gösterecektir:
1. Hesap makinesi aracı sonucu (5 + 7 = 12)
2. "What is the meaning of life?" sorusuna completion aracı yanıtı
3. Mevcut yapay zeka modellerinin listesi
4. "MCP Explorer" için kişiselleştirilmiş selamlama
5. Kod inceleme prompt şablonu
## Uygulama Detayları
Sunucu, MCP servislerini tanımlamak için yüksek seviyeli soyutlamalar sağlayan `FastMCP` API kullanılarak uygulanmıştır. İşte araçların nasıl tanımlandığına dair basitleştirilmiş bir örnek:
```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
```
İstemci, sunucuya bağlanmak ve çağrı yapmak için MCP istemci kütüphanesini kullanır:
```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})
```
## Daha Fazla Bilgi
MCP hakkında daha fazla bilgi için ziyaret edin: https://modelcontextprotocol.io/
**Feragatname**:
Bu belge, AI çeviri servisi [Co-op Translator](https://github.com/Azure/co-op-translator) kullanılarak çevrilmiştir. Doğruluk için çaba gösterilse de, otomatik çevirilerin hatalar veya yanlışlıklar içerebileceğini lütfen unutmayınız. Orijinal belge, kendi dilinde yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımı sonucu ortaya çıkabilecek yanlış anlamalar veya yorum hatalarından sorumlu değiliz.