3.6 KiB
Model Context Protocol (MCP) Pelaksanaan Python
Repositori ini mengandungi pelaksanaan Python bagi Model Context Protocol (MCP), yang menunjukkan cara untuk mencipta aplikasi server dan klien yang berkomunikasi menggunakan piawaian MCP.
Gambaran Keseluruhan
Pelaksanaan MCP terdiri daripada dua komponen utama:
-
MCP Server (
server.py) - Server yang menyediakan:- Tools: Fungsi yang boleh dipanggil dari jauh
- Resources: Data yang boleh diambil
- Prompts: Templat untuk menghasilkan arahan bagi model bahasa
-
MCP Client (
client.py) - Aplikasi klien yang menyambung ke server dan menggunakan ciri-cirinya
Ciri-ciri
Pelaksanaan ini menunjukkan beberapa ciri utama MCP:
Tools
completion- Menjana teks lengkap dari model AI (disimulasikan)add- Kalkulator ringkas yang menambah dua nombor
Resources
models://- Mengembalikan maklumat tentang model AI yang tersediagreeting://{name}- Mengembalikan ucapan peribadi untuk nama yang diberikan
Prompts
review_code- Menjana arahan untuk menyemak kod
Pemasangan
Untuk menggunakan pelaksanaan MCP ini, pasang pakej yang diperlukan:
pip install mcp-server mcp-client
Menjalankan Server dan Klien
Memulakan Server
Jalankan server dalam satu tetingkap terminal:
python server.py
Server juga boleh dijalankan dalam mod pembangunan menggunakan MCP CLI:
mcp dev server.py
Atau dipasang dalam Claude Desktop (jika tersedia):
mcp install server.py
Menjalankan Klien
Jalankan klien dalam tetingkap terminal yang lain:
python client.py
Ini akan menyambung ke server dan menunjukkan semua ciri yang tersedia.
Penggunaan Klien
Klien (client.py) menunjukkan semua keupayaan MCP:
python client.py
Ini akan menyambung ke server dan menggunakan semua ciri termasuk tools, resources, dan prompts. Output akan menunjukkan:
- Keputusan alat kalkulator (5 + 7 = 12)
- Respons alat completion untuk "What is the meaning of life?"
- Senarai model AI yang tersedia
- Ucapan peribadi untuk "MCP Explorer"
- Templat arahan semakan kod
Butiran Pelaksanaan
Server dilaksanakan menggunakan API FastMCP, yang menyediakan abstraksi tahap tinggi untuk mentakrifkan perkhidmatan MCP. Berikut adalah contoh ringkas bagaimana tools ditakrifkan:
@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
Klien menggunakan perpustakaan klien MCP untuk menyambung dan memanggil server:
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})
Ketahui Lebih Lanjut
Untuk maklumat lanjut tentang MCP, lawati: https://modelcontextprotocol.io/
Penafian:
Dokumen ini telah diterjemahkan menggunakan perkhidmatan terjemahan AI Co-op Translator. Walaupun kami berusaha untuk ketepatan, sila ambil perhatian bahawa terjemahan automatik mungkin mengandungi kesilapan atau ketidaktepatan. Dokumen asal dalam bahasa asalnya harus dianggap sebagai sumber yang sahih. Untuk maklumat penting, terjemahan profesional oleh manusia adalah disyorkan. Kami tidak bertanggungjawab atas sebarang salah faham atau salah tafsir yang timbul daripada penggunaan terjemahan ini.