Чему вы научитесь
- Объяснять назначение MCP и различать роли приложения, клиента, сервера и инструмента
- Подготавливать Python-проект с MCP SDK и запускать собственные локальные серверы инструментов
- Регистрировать Python-функции как MCP-инструменты и определять их аргументы и возвращаемые результаты
- Создавать сервер заказов с инструментами поиска заказа по идентификатору и расчёта его стоимости
- Самостоятельно разрабатывать отдельный сервер доставки с поиском тарифа и расчётом стоимости по зоне и весу
- Читать учебные данные из JSON-файлов и использовать их в предметной логике MCP-инструментов
- Описывать обязательные аргументы и типы данных инструментов и проверять входные параметры
- Подключать Python-клиента к MCP-серверу через stdio с запуском сервера отдельным процессом
- Получать список доступных инструментов через MCP-клиент и проверять их обнаружение
- Вызывать инструменты заказов и доставки из Python-клиента и разбирать возвращаемые результаты
- Проверять правильность расчётов стоимости заказа и доставки на конкретных входных данных
- Обрабатывать неизвестные идентификаторы заказов, несуществующие зоны доставки и недопустимый вес
- Отличать ошибки проверки аргументов от ошибок исполнения инструмента и анализировать неудачные вызовы
- Писать позитивные и негативные тесты MCP-инструментов с помощью pytest
- Проверять взаимодействие клиента и сервера через реальный stdio-процесс, а не только прямой вызов Python-функции
- Самостоятельно диагностировать неверную стоимость доставки по аргументам вызова и фактическим результатам инструментов
- Подтверждать исправление повторными расчётами, тестами pytest и проверкой stdio-взаимодействия
О курсе
Практический курс по MCP на Python: вы создадите два собственных сервера инструментов, подключите к ним клиентов, научитесь проверять вызовы, находить ошибки и писать тесты с pytest. Пять модулей, видеолекции и самостоятельный проект — бесплатно, без платных моделей и API-ключей.
Для кого этот курс
— Python-разработчики, которые хотят разобраться в MCP и научиться предоставлять собственные функции и данные через сервер инструментов, а затем вызывать их из Python-клиента.
— QA/AQA-инженеры, которые уже работают с Python и хотят проверять контракты MCP-инструментов, корректность аргументов, результаты вызовов и обработку ошибок автоматическими тестами.
— Backend-разработчики, которым нужно понять взаимодействие MCP-клиента и сервера на уровне реального процесса и транспорта stdio и научиться разрабатывать инструменты с проверяемой предметной логикой.
Начальные требования
📚 Что нужно знать
- Основы Python: функции, типы данных, словари, импорты и обработка ошибок.
- Базовая работа с Git и терминалом: создавать файлы, запускать Python-скрипты и выполнять простые команды.
- JSON: понимать, как устроены небольшие файлы с данными.
Знать MCP заранее не требуется. С устройством протокола, созданием инструментов и подключением клиента познакомимся в самом курсе.
🧰 Что понадобится
- Python 3.12 и возможность устанавливать библиотеки.
- Git и аккаунт GitHub для своего учебного проекта.
- Windows, macOS или Ubuntu Linux — настройка окружения описана в первых уроках.
Курс бесплатный. Все практические задания выполняются локально; платные модели, API-ключи, Docker и облачные сервисы не нужны.
Преподаватели курса
Как проходит обучение
🧩 От первого инструмента до двух работающих MCP-серверов. В пяти модулях и 21 уроке видеолекции и текстовые разборы чередуются с вопросами и практикой.
- 🛠️ Собираете по шагам: создаёте сервер заказов, подключаете собственного клиента и проверяете вызовы инструментов.
- 🚀 Пробуете самостоятельно: разрабатываете сервер доставки по требованиям задания и разбираетесь с ошибками вызовов.
- ✅ Подтверждаете результат: запускаете тесты pytest и изучаете решения самостоятельных упражнений после своей попытки.
Что вы получите
- Собственный GitHub-проект с двумя отдельными MCP-серверами на Python для заказов и доставки
- Сервер заказов с инструментами get_order и calculate_order_total и чтением учебных данных из JSON
- Самостоятельно реализованный сервер доставки с инструментами get_tariff и calculate_delivery_cost
- Python-клиенты для получения списка инструментов и выполнения вызовов обоих серверов через MCP
- Проверки аргументов и обработка ошибок для неизвестных заказов, тарифов, зон доставки и некорректного веса
- Набор автоматических тестов pytest для обнаружения инструментов, успешных расчётов и ошибочных вызовов
- Проверенный запуск MCP-серверов отдельными процессами с обменом через stdio
- Исправленный итоговый сценарий расчёта доставки с подтверждением двух контрольных результатов и повторным запуском тестов
Нагрузка
4–5 часов в неделю