Перейти к основному контенту
Tech Path Finder
КурсыИнтервьюКод-ревьюБлог
Tech Path Finder

Персонализированный путеводитель в IT. Квизы, мок-интервью, код ревью и аналитика прогресса.

@potapov_me

Платформа

  • Курсы
  • Прогресс
  • Мок-интервью
  • Код ревью
  • Живое ревью с ИИ
  • Тренажёр переговоров
  • Закладки

Контент

  • Блог
  • Главная
  • Обратная связь

Компания

  • О проекте
  • Тарифы
  • Условия использования
  • Конфиденциальность
  • Согласие на обработку данных
  • Cookie
  • Реквизиты

Аккаунт

  • Войти
  • Зарегистрироваться
  • Профиль

© 2026 Tech Path Finder. Все права защищены.

·ИП Потапов К.С.·Политика конфиденциальности·
Сделано с ❤️ в России
  1. MCP серверы на Python с FastMCP
AI / ML·8 тем·42 вопроса·уровень Middle

MCP серверы на Python с FastMCP

Полный курс создания Model Context Protocol (MCP) серверов на Python с использованием библиотеки FastMCP. Курс охватывает архитектуру MCP, создание инструментов (tools), ресурсов (resources), промптов (prompts), обработку ошибок, тестирование и деплой. Подходит разработчикам с любым уровнем — от новичков до опытных инженеров.

Начать курс

MCP-серверы на Python с FastMCP

FastMCP убирает из MCP-сервера почти всю церемонию: инструмент — это функция с декоратором, схема параметров выводится из аннотаций типов, валидация приезжает из Pydantic. Рабочий сервер, который умеет что-то полезное, пишется за один присест, и дальше вопрос только в том, как его не сломать при росте.

Восемь тем. Что такое Model Context Protocol и зачем нужен слой между моделью и вашими системами; установка FastMCP и первый сервер с транспортами stdio и SSE. Затем основное: инструменты с параметрами и валидацией, ресурсы и шаблоны ресурсов, промпты с аргументами. Отдельная тема про управление ресурсами — динамические, текстовые и бинарные, аннотации, кэширование.

Дальше то, что отличает демонстрацию от рабочего сервера: обработка ошибок — свои исключения, плавная деградация, логи, и главное, чтобы ошибка была понятна вызывающей модели, а не только человеку в терминале. Затем тестирование: юнит-тесты инструментов и интеграционные через MCP-клиент. Заканчивается курс деплоем: Docker, SSE-транспорт, масштабирование, мониторинг.

Это короткий практический курс по одной библиотеке. Если нужен протокол вглубь — с транспортами, безопасностью, интеграцией в существующую инфраструктуру и Kubernetes — это отдельный курс «MCP: серверы и агенты на Python».

Подходит любому уровню: нужен Python, остальное объясняется по ходу.

  1. 1

    Введение в MCP

    Что такое Model Context Protocol, зачем он нужен и как работает архитектура клиент-сервер.

    5 вопросов
  2. 2

    Основы FastMCP

    Установка FastMCP, создание первого сервера, транспортные режимы stdio и SSE.

    6 вопросов
  3. 3

    Инструменты и ресурсы

    Создание tools с параметрами, валидацией через Pydantic, регистрация ресурсов и шаблонов ресурсов.

    5 вопросов
  4. 4

    Промпты и шаблоны

    Создание промптов с аргументами, управление контекстом, шаблоны промптов для AI-клиентов.

    5 вопросов
  5. 5

    Управление ресурсами

    Динамические ресурсы, текстовые и бинарные данные, аннотации, кэширование.

    6 вопросов
  6. 6

    Обработка ошибок

    ErrorTool, пользовательские исключения, graceful degradation и логирование.

    5 вопросов
  7. 7

    Тестирование и отладка

    Unit-тесты инструментов, интеграционное тестирование через MCP-клиент, отладка.

    5 вопросов
  8. 8

    Паттерны деплоя

    Деплой MCP-серверов, Docker, SSE-транспорт, масштабирование и мониторинг.

    5 вопросов
  9. Зачёт

    Доступен после всех тем (0 из 8)

  10. Экзамен

    Доступен после зачёта

15 / 15

MCP (Model Context Protocol)

Основные концепции

Открытый протокол для стандартизации взаимодействия между AI-моделями и внешними инструментами. Позволяет AI-клиентам обнаруживать и вызывать инструменты, читать ресурсы и использовать промпты через единый интерфейс.

Пример

Claude Desktop подключается к MCP-серверу погоды через stdio-транспорт и вызывает инструмент get_weather(city='Moscow').

Связанные термины

MCP-сервер

Основные концепции

Процесс, который регистрирует инструменты (tools), ресурсы (resources) и промпты (prompts), и делает их доступными для MCP-клиентов через стандартный протокол.

Пример

Сервер на FastMCP, предоставляющий инструменты для работы с базой данных: get_user, update_record, delete_entry.

Связанные термины

MCP-клиент

Основные концепции

Приложение или AI-модель, который подключается к MCP-серверу, обнаруживает доступные инструменты и ресурсы, и взаимодействует с ними через стандартные вызовы.

Пример

Claude Desktop — MCP-клиент, который подключается к локальному серверу и вызывает его инструменты через chat-интерфейс.

Связанные термины

Tool (Инструмент)

Основные концепции

Функция на MCP-сервере, которую AI-клиент может вызвать с аргументами. Инструмент принимает параметры, выполняет логику и возвращает результат в стандартизированном формате.

Пример

@mcp.tool()\ndef calculate(a: int, b: int) -> int:\n return a + b

Связанные термины

Resource (Ресурс)

Основные концепции

Данные, доступные для чтения через MCP-протокол. Ресурсы идентифцируются по URI и могут быть статическими или динамическими. В отличие от инструментов, ресурсы не принимают аргументы — они читаются по адресу.

Пример

@mcp.resource('config://app')\ndef get_config() -> str:\n return json.dumps(APP_CONFIG)

Связанные термины

Prompt (Промпт)

FastMCP API

Шаблон сообщения с аргументами, который MCP-сервер предоставляет клиенту. Промпт генерирует готовое сообщение (или набор сообщений) для AI-модели на основе переданных параметров.

Пример

@mcp.prompt()\ndef analyze_data(dataset: str) -> str:\n return f'Проанализируй данные из {dataset} и выдели тренды.'

Связанные термины

FastMCP

FastMCP API

Библиотека Python для быстрого создания MCP-серверов. Предоставляет декораторы @tool, @resource, @prompt, автоматическую валидацию параметров через Pydantic и поддержку нескольких транспортных режимов.

Пример

from fastmcp import FastMCP\n\nmcp = FastMCP('MyServer')\n\n@mcp.tool()\ndef hello(name: str) -> str:\n return f'Hello, {name}!'

Связанные термины

Pydantic-модель

FastMCP API

Класс данных из библиотеки Pydantic, используемый для валидации и типизации параметров инструментов MCP. Обеспечивает автоматическую проверку типов, значения по умолчанию и генерацию JSON Schema.

Пример

from pydantic import BaseModel, Field\n\nclass SearchParams(BaseModel):\n query: str = Field(..., min_length=1)\n limit: int = Field(10, ge=1, le=100)

Связанные термины

Resource Template

FastMCP API

Шаблон ресурсов с параметрами в URI. Позволяет создавать динамические ресурсы, адрес которых содержит переменные — например, user://{user_id}/profile.

Пример

@mcp.resource('user://{user_id}/profile')\ndef get_profile(user_id: str) -> str:\n return db.get_user(user_id).to_json()

Связанные термины

stdio-транспорт

Транспорт и коммуникации

Режим транспорта MCP, где коммуникация происходит через стандартные потоки ввода-вывода (stdin/stdout). Используется для локального запуска, когда сервер — дочерний процесс клиента.

Пример

Claude Desktop запускает MCP-сервер как subprocess и общается через JSON-RPC сообщения в stdin/stdout.

Связанные термины

SSE-транспорт (Server-Sent Events)

Транспорт и коммуникации

Режим транспорта MCP через HTTP с Server-Sent Events. Позволяет серверу работать как веб-сервис, доступный по сети, а не только локально.

Пример

mcp.run(transport='sse', host='0.0.0.0', port=8000) — сервер доступен через HTTP для удалённых клиентов.

Связанные термины

JSON-RPC

Транспорт и коммуникации

Протокол удалённого вызова процедур с использованием JSON. MCP построен поверх JSON-RPC 2.0 — все запросы, ответы и ошибки сериализуются в JSON-объекты с полями jsonrpc, id, method, params, result.

Пример

{'jsonrpc': '2.0', 'id': 1, 'method': 'tools/call', 'params': {'name': 'get_weather', 'arguments': {'city': 'Moscow'}}}

Связанные термины

ErrorTool

Продвинутые концепции

Специальный тип возврата из инструмента FastMCP, который сигнализирует клиенту об ошибке выполнения. Содержит сообщение об ошибке и необязательный код.

Пример

from fastmcp import ErrorTool\n\n@mcp.tool()\ndef divide(a: int, b: int):\n if b == 0:\n return ErrorTool('Деление на ноль')\n return a / b

Связанные термины

MCP Inspector

Продвинутые концепции

Официальный инструмент Anthropic для отладки MCP-серверов. Позволяет визуально просматривать доступные инструменты, ресурсы и промпты, вызывать их и смотреть raw JSON-RPC-сообщения.

Пример

npx @modelcontextprotocol/inspector python my_server.py — запускает веб-интерфейс для тестирования сервера.

Связанные термины

Sampling (Сэмплинг)

Продвинутые концепции

Механизм MCP, позволяющий серверу запрашивать генерацию текста от AI-модели через клиента. Сервер может отправить запрос на созданиеcompletion, и клиент вернёт ответ модели.

Пример

Сервер использует sampling для создания уточняющего вопроса к пользователю через AI-модель клиента, не имея собственной LLM.

Связанные термины

Частые вопросы о курсе «MCP серверы на Python с FastMCP»

Состав курса, уровни, практика и способы проверки знаний.

Что входит в курс «MCP серверы на Python с FastMCP»?

Курс включает 8 тем и 42 вопроса с разбором ответа. Начать можно с первой темы курса.

Для какого уровня рассчитан курс «MCP серверы на Python с FastMCP»?

Маршрут охватывает уровни Middle. Темы расположены от основы к более сложным инженерным задачам, поэтому можно начать с подходящего места и не пропускать важные зависимости.

Как проверить, что материал усвоен?

После прохождения тем доступен зачёт по курсу «MCP серверы на Python с FastMCP» — 20 случайных вопросов с порогом 80%. После зачёта открывается экзамен с развёрнутыми ответами и автоматической оценкой, приближённый к техническому собеседованию.

Курс «MCP серверы на Python с FastMCP» бесплатный?

Да, курс полностью бесплатный: все 8 тем доступны без оплаты.