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

5.8 KiB
Raw Permalink Blame History

Model Context Protocol (MCP) Python Имплементация

Това хранилище съдържа Python имплементация на Model Context Protocol (MCP), показваща как да се създадат както сървърно, така и клиентско приложение, които комуникират чрез стандарта MCP.

Преглед

Имплементацията на MCP се състои от два основни компонента:

  1. MCP Сървър (server.py) - Сървър, който предоставя:

    • Инструменти: Функции, които могат да се извикват дистанционно
    • Ресурси: Данни, които могат да се извличат
    • Подсказки: Шаблони за генериране на подсказки за езикови модели
  2. MCP Клиент (client.py) - Клиентско приложение, което се свързва със сървъра и използва неговите функции

Функционалности

Тази имплементация демонстрира няколко ключови функции на MCP:

Инструменти

  • completion - Генерира текстови допълнения от AI модели (симулирано)
  • add - Прост калкулатор, който събира две числа

Ресурси

  • models:// - Връща информация за наличните AI модели
  • greeting://{name} - Връща персонализирано поздравление за дадено име

Подсказки

  • review_code - Генерира подсказка за преглед на код

Инсталация

За да използвате тази MCP имплементация, инсталирайте необходимите пакети:

pip install mcp-server mcp-client

Стартиране на Сървъра и Клиента

Стартиране на Сървъра

Стартирайте сървъра в един терминален прозорец:

python server.py

Сървърът може да се стартира и в режим на разработка чрез MCP CLI:

mcp dev server.py

Или да се инсталира в Claude Desktop (ако е наличен):

mcp install server.py

Стартиране на Клиента

Стартирайте клиента в друг терминален прозорец:

python client.py

Това ще се свърже със сървъра и ще демонстрира всички налични функции.

Използване на Клиента

Клиентът (client.py) демонстрира всички възможности на MCP:

python client.py

Това ще се свърже със сървъра и ще използва всички функции, включително инструменти, ресурси и подсказки. Резултатът ще покаже:

  1. Резултат от калкулаторния инструмент (5 + 7 = 12)
  2. Отговор от инструмента за допълване на текста на въпроса "Какъв е смисълът на живота?"
  3. Списък с наличните AI модели
  4. Персонализирано поздравление за "MCP Explorer"
  5. Шаблон за подсказка за преглед на код

Детайли за Имплементацията

Сървърът е реализиран с помощта на FastMCP API, който предоставя високо ниво на абстракции за дефиниране на MCP услуги. Ето един опростен пример за това как се дефинират инструментите:

@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 клиентската библиотека за свързване и извикване на сървъра:

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. Въпреки че се стремим към точност, моля, имайте предвид, че автоматизираните преводи могат да съдържат грешки или неточности. Оригиналният документ на неговия роден език трябва да се счита за авторитетен източник. За критична информация се препоръчва професионален човешки превод. Ние не носим отговорност за каквито и да е недоразумения или неправилни тълкувания, произтичащи от използването на този превод.