Skip to content

Latest commit

 

History

History
121 lines (81 loc) · 8.01 KB

File metadata and controls

121 lines (81 loc) · 8.01 KB

Model Context Protocol (MCP) Python အကောင်အထည်ဖော်ခြင်း

ဤ repository တွင် Model Context Protocol (MCP) ကို Python ဖြင့် အကောင်အထည်ဖော်ထားပြီး MCP စံသတ်မှတ်ချက်ကို အသုံးပြုကာ ဆာဗာနှင့် ကလိုင်ယင့် အပလီကေးရှင်းများကို ဖန်တီးပုံကို ပြသထားသည်။

အနှစ်ချုပ်

MCP အကောင်အထည်ဖော်မှုတွင် အဓိက အစိတ်အပိုင်း ၂ ခု ပါဝင်သည်-

  1. MCP Server (server.py) - ဆာဗာတစ်ခုဖြစ်ပြီး အောက်ပါအရာများကို ပေးဆောင်သည်-

    • Tools: ဝေးလံမှ ခေါ်ယူနိုင်သော function များ
    • Resources: ရယူနိုင်သော ဒေတာများ
    • Prompts: ဘာသာစကားမော်ဒယ်များအတွက် prompt များ ဖန်တီးရန် template များ
  2. MCP Client (client.py) - ဆာဗာနှင့် ချိတ်ဆက်ပြီး ၎င်း၏ လုပ်ဆောင်ချက်များကို အသုံးပြုသော client application

လုပ်ဆောင်ချက်များ

ဤအကောင်အထည်ဖော်မှုတွင် MCP ၏ အဓိက လုပ်ဆောင်ချက်များကို ပြသထားသည်-

Tools

  • completion - AI မော်ဒယ်များမှ စာသားဖြည့်စွက်မှုများ ဖန်တီးပေးသည် (အတု)
  • add - နံပါတ် ၂ ခုကို ပေါင်းတွက်ပေးသော ရိုးရှင်းသော ကိန်းဂဏန်းကိရိယာ

Resources

  • models:// - ရရှိနိုင်သော AI မော်ဒယ်များအကြောင်း အချက်အလက် ပြန်ပေးသည်
  • greeting://{name} - ပေးထားသော နာမည်အတွက် ကိုယ်ပိုင် မင်္ဂလာပါ စကားပြန်ပေးသည်

Prompts

  • review_code - ကုဒ်စစ်ဆေးရန် prompt ဖန်တီးပုံ template

တပ်ဆင်ခြင်း

ဤ MCP အကောင်အထည်ဖော်မှုကို အသုံးပြုရန် လိုအပ်သော package များကို တပ်ဆင်ပါ-

pip install mcp-server mcp-client

ဆာဗာနှင့် ကလိုင်ယင့် စတင်ပြေးဆွဲခြင်း

ဆာဗာ စတင်ခြင်း

တစ်ခုသော terminal ပြတင်းပေါ်တွင် ဆာဗာကို ပြေးဆွဲပါ-

python server.py

MCP CLI ကို အသုံးပြု၍ ဖွံ့ဖြိုးရေး mode ဖြင့်လည်း ဆာဗာကို ပြေးဆွဲနိုင်သည်-

mcp dev server.py

သို့မဟုတ် Claude Desktop တွင် တပ်ဆင်ထားပါက အသုံးပြုနိုင်သည်-

mcp install server.py

ကလိုင်ယင့် ပြေးဆွဲခြင်း

အခြား terminal ပြတင်းပေါ်တွင် ကလိုင်ယင့်ကို ပြေးဆွဲပါ-

python client.py

ဤကလိုင်ယင့်သည် ဆာဗာနှင့် ချိတ်ဆက်ကာ ရရှိနိုင်သည့် လုပ်ဆောင်ချက်များအားလုံးကို ပြသပေးမည်ဖြစ်သည်။

ကလိုင်ယင့် အသုံးပြုမှု

ကလိုင်ယင့် (client.py) သည် MCP ၏ လုပ်ဆောင်ချက်များအားလုံးကို ပြသထားသည်-

python client.py

ဤကလိုင်ယင့်သည် ဆာဗာနှင့် ချိတ်ဆက်ကာ tools, resources, prompts အပါအဝင် လုပ်ဆောင်ချက်များအားလုံးကို အသုံးပြုမည်ဖြစ်ပြီး အောက်ပါအရာများကို ပြသမည်-

  1. ကိန်းဂဏန်းကိရိယာရလဒ် (5 + 7 = 12)
  2. "What is the meaning of life?" ဆိုသော စာသားအတွက် completion tool ၏ တုံ့ပြန်ချက်
  3. ရရှိနိုင်သော AI မော်ဒယ်များစာရင်း
  4. "MCP Explorer" အတွက် ကိုယ်ပိုင် မင်္ဂလာပါ စကား
  5. ကုဒ်စစ်ဆေးရန် prompt template

အကောင်အထည်ဖော်မှု အသေးစိတ်

ဆာဗာကို FastMCP API ဖြင့် အကောင်အထည်ဖော်ထားပြီး MCP ဝန်ဆောင်မှုများ သတ်မှတ်ရာတွင် အဆင့်မြင့် abstraction များ ပေးသည်။ tools များ သတ်မှတ်ပုံကို ရိုးရှင်းစွာ ဖော်ပြထားသည်-

@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 client library ကို အသုံးပြုကာ ဆာဗာနှင့် ချိတ်ဆက်ပြီး ခေါ်ယူသည်-

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 ဖြင့် ဘာသာပြန်ထားပါသည်။ ကျွန်ုပ်တို့သည် တိကျမှန်ကန်မှုအတွက် ကြိုးစားသော်လည်း အလိုအလျောက် ဘာသာပြန်ခြင်းတွင် အမှားများ သို့မဟုတ် မှားယွင်းချက်များ ပါဝင်နိုင်ကြောင်း သတိပြုပါရန် မေတ္တာရပ်ခံအပ်ပါသည်။ မူရင်းစာတမ်းကို မိမိဘာသာစကားဖြင့်သာ တရားဝင်အချက်အလက်အဖြစ် ယူဆသင့်ပါသည်။ အရေးကြီးသော အချက်အလက်များအတွက် လူ့ဘာသာပြန်ပညာရှင်မှ ဘာသာပြန်ခြင်းကို အကြံပြုပါသည်။ ဤဘာသာပြန်ချက်ကို အသုံးပြုရာမှ ဖြစ်ပေါ်လာနိုင်သည့် နားလည်မှုမှားယွင်းမှုများအတွက် ကျွန်ုပ်တို့သည် တာဝန်မယူပါ။