Integrations
Provides a Python implementation of both MCP client and server components, allowing Python applications to expose and access MCP capabilities.
Employs WebSocket connections for real-time bidirectional communication between MCP clients and servers, supporting the complete MCP handshake and capability negotiation process.
Реализация Python Model Context Protocol (MCP)
Этот проект реализует функционирующий сервер и клиент Model Context Protocol (MCP) на Python, следуя спецификации Anthropic MCP. Он демонстрирует ключевые шаблоны протокола MCP на простом интерактивном примере.
Что такое МКП?
Model Context Protocol (MCP) — это открытый стандарт, созданный на основе JSON-RPC 2.0 для подключения моделей ИИ к внешним источникам данных и инструментам. Он определяет архитектуру клиент-сервер, в которой приложение ИИ взаимодействует с одним или несколькими серверами MCP, каждый из которых предоставляет такие возможности, как:
- Инструменты : исполняемые функции, которые выполняют действия.
- Ресурсы : источники данных, предоставляющие информацию
- Подсказки : Предопределенные шаблоны или рабочие процессы
MCP стандартизирует способ обнаружения и вызова этих возможностей, выступая в качестве «USB-C для ИИ», позволяющего моделям структурированно взаимодействовать с внешними системами.
Структура проекта
server/
: Реализация сервера MCPserver.py
: сервер WebSocket, который обрабатывает запросы MCP и предоставляет примеры инструментов/ресурсов
client/
: Реализация клиента MCPclient.py
: Демонстрационный клиент, который подключается к серверу и использует все возможности MCP
Демонстрируемые возможности
Эта реализация демонстрирует основной поток протокола MCP:
- Согласование возможностей : клиент-серверное рукопожатие через
initialize
- Обнаружение возможностей : список доступных инструментов и ресурсов
- Вызов инструмента : вызов инструмента
add_numbers
с параметрами - Доступ к ресурсам : Чтение текстового содержимого ресурса
Настраивать
- Создайте виртуальную среду:Copy
- Установить зависимости:Copy
Использование
- Запустите MCP-сервер (в одном терминале):Copy
- Запустите клиент MCP (в другом терминале):Copy
Клиент подключится к серверу, выполнит рукопожатие MCP, обнаружит возможности и продемонстрирует вызов инструментов и доступ к ресурсам с помощью форматированного вывода.
Как это работает
MCP-сервер
Сервер:
- Принимает соединения WebSocket
- Отвечает на запросы JSON-RPC в соответствии со спецификацией MCP
- Предоставляет пример инструмента (
add_numbers
) - Предоставляет пример ресурса (
example.txt
) - Поддерживает MCP-рукопожатие и обнаружение возможностей
Клиент МСР
Клиент:
- Подключается к серверу через WebSocket
- Выполняет рукопожатие MCP
- Обнаруживает доступные инструменты и ресурсы
- Демонстрирует вызов инструмента и чтение ресурса.
- Представляет результаты в отформатированном виде
Подробности протокола
MCP реализует следующие ключевые методы:
Метод | Описание |
---|---|
initialize | Рукопожатие для установления полномочий |
tools/list | Список доступных инструментов |
tools/call | Вызов инструмента с аргументами |
resources/list | Список доступных ресурсов |
resources/read | Прочитать содержание ресурса |
prompts/list | Список доступных подсказок |
Расширение проекта
Эту реализацию можно расширить следующим образом:
- Добавление большего количества инструментов с различными возможностями
- Добавление динамических ресурсов, которые изменяются при каждом чтении
- Внедрение шаблонов подсказок для управляемого взаимодействия
- Создание более интерактивных клиентских приложений
Ссылки
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Реализация сервера MCP на Python, которая позволяет моделям ИИ подключаться к внешним инструментам и источникам данных через стандартизированный протокол, поддерживая вызов инструментов и доступ к ресурсам через JSON-RPC.
Related MCP Servers
- -securityAlicense-qualityA simple MCP server implementation that provides AI models with basic Solana RPC methods and helpful development prompts.Last updated -21TypeScriptMIT License
- -securityFlicense-qualityImplements the Model Context Protocol (MCP) to provide AI models with a standardized interface for connecting to external data sources and tools like file systems, databases, or APIs.Last updated -90Python
- -securityAlicense-qualityA streamlined foundation for building Model Context Protocol servers in Python, designed to make AI-assisted development of MCP tools easier and more efficient.Last updated -13PythonMIT License
- -securityFlicense-qualityA simple demonstration project for the Model Control Protocol (MCP) server that provides tools for AI assistants to fetch news articles, perform calculations, retrieve weather data, and generate personalized greetings.Last updated -Python