# ការអនុវត្ត Model Context Protocol (MCP) ជា Python Repository នេះមានអនុវត្តន៍ Model Context Protocol (MCP) ជា Python ដែលបង្ហាញពីរបៀបបង្កើតកម្មវិធីទាំងម៉ាស៊ីនមួយ និងកម្មវិធីអតិថិជនមួយ ដែលទំនាក់ទំនងគ្នាតាមស្តង់ដារ MCP។ ## ទិដ្ឋភាពទូទៅ ការអនុវត្ត MCP សម្រុកពីជាផ្នែកសំខាន់ពីរដូចជា៖ 1. **ម៉ាស៊ីន MCP (`server.py`)** - ម៉ាស៊ីនមួយដែលបង្ហាញ៖ - **ឧបករណ៍**: មុខងារដែលអាចហៅពីចម្ងាយបាន - **ធនធាន**: ទិន្នន័យដែលអាចទាញយកបាន - **ការជំរុញ**: គំរូសម្រាប់បង្កើតការជំរុញសម្រាប់គំរូភាសា 2. **អតិថិជន MCP (`client.py`)** - កម្មវិធីអតិថិជនដែលភ្ជាប់ទៅម៉ាស៊ីន និងប្រើប្រាស់មុខងាររបស់វា ## មុខងារ ការអនុវត្តនេះបង្ហាញពីមុខងារ MCP សំខាន់ៗជាច្រើន៖ ### ឧបករណ៍ - `completion` - បង្កើតការបញ្ចប់អត្ថបទពីគំរូ AI (កំពុងស្ទាង) - `add` - ម៉ាស៊ីនគណនារងមានសាមញ្ញ ដែលបូកលេខពីរប្រមាណ ### ធនធាន - `models://` - ត្រឡប់ព័ត៌មានអំពីគំរូ AI មាននៅ - `greeting://{name}` - ត្រឡប់ការស្វាគមន៍ផ្ទាល់ខ្លួនសម្រាប់ឈ្មោះណាមួយ ### ការជំរុញ - `review_code` - បង្កើតការជំរុញសម្រាប់ពិនិត្យកូដ ## ការដំឡើង ដើម្បីប្រើប្រាស់ការអនុវត្ត MCP នេះ សូមដំឡើងកញ្ចប់ដែលត្រូវការ៖ ```powershell pip install mcp-server mcp-client ``` ## ការរត់ម៉ាស៊ីន និង អតិថិជន ### ការចាប់ផ្តើមម៉ាស៊ីន រត់ម៉ាស៊ីនក្នុងបង្អួច terminal មួយ៖ ```powershell python server.py ``` ម៉ាស៊ីនក៏អាចរត់ក្នុងរបៀបអភិវឌ្ឍន៍ដោយប្រើ MCP CLI៖ ```powershell mcp dev server.py ``` ឬដំឡើងនៅក្នុង Claude Desktop (បើមាន)៖ ```powershell mcp install server.py ``` ### ការរត់អតិថិជន រត់អតិថិជនមួយនៅក្នុងបង្អួច terminal ផ្សេងទៀត៖ ```powershell python client.py ``` នេះនឹងភ្ជាប់ទៅម៉ាស៊ីន និងបង្ហាញមុខងារ​ទាំងអស់ដែលមាន។ ### ការប្រើប្រាស់អតិថិជន អតិថិជន (`client.py`) បង្ហាញពីសមត្ថភាព MCP ទាំងអស់៖ ```powershell python client.py ``` នេះនឹងភ្ជាប់ទៅម៉ាស៊ីន និងប្រើប្រាស់មុខងារទាំងអស់ រួមទាំងឧបករណ៍, ធនធាន និងការជំរុញ។ លទ្ធផលនឹងបង្ហាញ៖ 1. លទ្ធផលឧបករណ៍គណនារង (5 + 7 = 12) 2. ចម្លើយឧបករណ៍បញ្ចប់ទៅ "What is the meaning of life?" 3. បញ្ជីគំរូ AI មាននៅ 4. ស្វាគមន៍ផ្ទាល់ខ្លួនសម្រាប់ "MCP Explorer" 5. គំរូការជំរុញពិនិត្យកូដ ## ព័ត៌មានលំអិតអំពីការអនុវត្ត ម៉ាស៊ីនត្រូវបានអនុវត្តដោយប្រើ API `FastMCP` ដែលផ្តល់ជូននូវការបង្ហាញកម្រិតខ្ពស់សម្រាប់កំណត់សេវាកម្ម MCP។ នេះគឺជាឧទាហរណ៍សាមញ្ញពីរបៀបកំណត់ឧបករណ៍៖ ```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 ``` អតិថិជនប្រើបណ្ណាល័យអតិថិជន MCP ដើម្បីភ្ជាប់ និងហៅម៉ាស៊ីន៖ ```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}) ``` ## រៀនបន្ថែម សម្រាប់ព័ត៌មានបន្ថែមអំពី MCP សូមទៅកាន់៖ https://modelcontextprotocol.io/ --- **ការបដិសេធ**៖ ឯកសារនេះត្រូវបានបកប្រែដោយប្រើសេវាកម្មបកប្រែ AI [Co-op Translator](https://github.com/Azure/co-op-translator)។ ទោះបីយើងព្យាយាមរក្សា​ភាពត្រឹមត្រូវក៏ដោយ សូមយល់ថា ការបកប្រែដោយស្វ័យប្រវត្តិអាចមានកំហុស ឬច្រឡំបាន។ ឯកសារដើមដែលមានជាភាសាមាតុភូមិគួរត្រូវបានគេយកជាឯកសារដែលមានអត្ថន័យត្រឹមត្រូវបំផុត។ សម្រាប់ព័ត៌មានសារៈសំខាន់ យើងណែនាំឱ្យប្រើការបកប្រែដោយមនុស្សជំនាញវិជ្ជាជីវៈ។ យើងមិនទទួលខុសត្រូវចំពោះការយល់ច្រឡំ ឬការបកស្រាយខុសពីការប្រើប្រាស់ការបកប្រែនេះទេ។