MCP для AI: конспект курса Anthropic
Как устроен Model Context Protocol: хост, клиент, сервер, tools, resources, prompts, транспорты и базовые правила безопасности.
Авторский конспект
07/08Я прохожу курс на английском и собираю главное на русском.
- Исходник
- на английский
- Конспект
- на русском
- В серии
- 7 из 8
MCP легко принять за тему только для разработчиков. Но протокол определяет, как AI-приложение получает внешние данные и инструменты, поэтому его полезно понимать всем, кто подключает к модели рабочие сервисы.
Собственно, об этом и статья. Курс Anthropic Academy объясняет, что такое MCP, как он устроен и зачем нужен. Я добавила практические примеры из своего опыта.
Курс: Introduction to Model Context Protocol (MCP) Платформа: Anthropic Academy Ссылка: anthropic.skilljar.com/introduction-to-model-context-protocol Длительность: ~45 минут Язык: English Бесплатно, с сертификатом Авторский конспект по материалам курса. Не является официальным переводом или публикацией Anthropic.

Это часть серии «Учусь вместо вас». Также в серии: Claude 101, AI Fluency for Educators, Advanced Prompt Engineering, Claude Code in Action и Agent Skills.
Что такое MCP и почему его называют «USB для AI»?
MCP (Model Context Protocol) — открытый стандарт, который позволяет AI-моделям подключаться к внешним сервисам и данным. Курс использует красивую метафору: MCP это «USB-C для искусственного интеллекта». До USB каждое устройство имело свой уникальный разъём. Принтер, сканер, камера, телефон. Куча несовместимых проводов. USB создал единый стандарт, и всё стало подключаться к одному порту.
С AI похожая задача: без общего протокола каждая интеграция требует собственной схемы подключения. MCP стандартизирует обмен, но для конкретного сервиса всё равно нужен совместимый сервер с нужными возможностями.
На практике MCP может убрать ручное копирование между таблицей и чатом. Хост вызывает инструмент чтения, передаёт результат модели и, при отдельном разрешении, выполняет запись. Это удобнее, но повышает требования к доступам и журналу действий.
| Без MCP | С MCP |
|---|---|
| Копировать данные из сервиса | Claude читает данные напрямую |
| Вставлять в чат | Claude анализирует в контексте |
| Копировать результат обратно | Клиент может предложить запись через инструмент |
| Каждый сервис — отдельная схема | Общий протокол для совместимых серверов |
MCP создан Anthropic как открытый стандарт и поддерживается разными приложениями. Но совместимость конкретного сервера и клиента всё равно нужно проверять отдельно.
Как устроена архитектура MCP: сервер, клиент, хост?
Архитектура MCP состоит из трёх компонентов: MCP Host, MCP Client и MCP Server. Курс объясняет это через аналогию с офисом.
MCP Host — это приложение, в котором работает пользователь. Claude Desktop, Claude Code, IDE с AI-плагином. Представьте офисное здание: это место, где вы физически находитесь и работаете.
MCP Client — протокольный слой внутри хоста. Он устанавливает и поддерживает соединение с серверами. Это как ресепшен в офисе: принимает запросы, направляет к нужному отделу.
MCP Server — лёгкая программа, которая предоставляет доступ к конкретному сервису. Один сервер для Google Sheets, другой для Slack, третий для базы данных. Как отдельные департаменты в компании: каждый отвечает за свою область.
┌─────────────────────────────────────────┐
│ MCP Host │
│ (Claude Desktop / Claude Code / IDE) │
│ │
│ ┌─────────────────────────────┐ │
│ │ MCP Client │ │
│ │ (протокольный слой) │ │
│ └──────────┬──────────────────┘ │
└───────────────┼─────────────────────────┘
│
┌───────────┼───────────┐
│ │ │
▼ ▼ ▼
┌───────┐ ┌───────┐ ┌───────┐
│Server │ │Server │ │Server │
│Sheets │ │ Slack │ │ CRM │
└───────┘ └───────┘ └───────┘
В моей конфигурации Claude Code выступает хостом и создаёт отдельное клиентское соединение для каждого подключённого сервера. Один хост может работать с несколькими серверами, не смешивая их соединения напрямую.
MCP-серверы могут быть локальными процессами или удалёнными сервисами. Локальный запуск не означает, что данные гарантированно остаются на устройстве: сервер может иметь сетевой доступ, а хост всё равно передаёт выбранный контекст модели. Безопасность зависит от кода сервера, разрешений и архитектуры подключения.
Три примитива MCP: инструменты, ресурсы, промпты
MCP определяет три типа возможностей, которые сервер может предоставить. Курс называет их «примитивами» (primitives). Это базовые строительные блоки протокола.
Tools (инструменты)
Tools — это действия, которые AI может выполнить. Отправить сообщение, создать запись в базе, сгенерировать изображение. Ключевое слово здесь: model-controlled. Модель сама решает, когда и какой инструмент использовать, на основе контекста разговора.
Например, сервер генерации изображений может предоставить инструмент generate_image. Модель способна выбрать его по описанию задачи, но интерфейс должен сохранять человеку возможность увидеть и отклонить вызов.
Resources (ресурсы)
Resources — это данные, которые сервер предоставляет. Файлы, записи из базы, содержимое документов. Ключевое слово: application-controlled. Приложение (хост) решает, какие ресурсы загрузить в контекст.
Курс разделяет ресурсы на два типа:
Static resources — данные с фиксированным URI. Конкретный файл, конкретная таблица. URI не меняется.
Templated resources — динамические данные с параметрами в URI. Например, sheets://spreadsheet/{sheet_id}. Параметр {sheet_id} подставляется в момент запроса. Это позволяет работать с разными таблицами через один шаблон.
Например, сервер таблиц может предоставить templated resource вида sheets://spreadsheet/{sheet_id}. Один шаблон работает с разными таблицами, а конкретный идентификатор подставляется в момент запроса.
Prompts (промпты)
Prompts — готовые сценарии взаимодействия, которые сервер предлагает пользователю. Ключевое слово: user-controlled. Пользователь явно выбирает, какой промпт активировать.
Это как меню в ресторане. Сервер говорит: «У меня есть такие сценарии работы». Пользователь выбирает: «Хочу вот этот». Claude получает структурированную инструкцию и выполняет.
В моей работе я использую это реже, чем Tools и Resources. Но курс приводит хороший пример: сервер для работы с базой данных может предоставить промпт «Проанализируй структуру таблицы и предложи оптимизации». Пользователь активирует его одним кликом вместо того, чтобы писать сложный запрос вручную.
| Примитив | Кто контролирует | Что делает | Пример |
|---|---|---|---|
| Tools | Модель | Выполняет действия | Отправить email, создать задачу |
| Resources | Приложение | Предоставляет данные | Содержимое файла, записи из CRM |
| Prompts | Пользователь | Активирует сценарии | «Проанализируй эту таблицу» |
Transport-agnostic: почему это важно?
MCP разделяет протокольные сообщения и транспорт. В актуальной спецификации основные варианты подключения: stdio для локального процесса и Streamable HTTP для удалённого сервера.
stdio — стандартный ввод/вывод. Сервер запускается как процесс на вашей машине, общается через stdin/stdout. Это самый простой вариант для локальных серверов.
Streamable HTTP — транспорт для удалённых серверов на основе HTTP POST и GET с необязательным SSE для потоковых сообщений. Он заменил прежний отдельный HTTP+SSE transport.
Почему это важно? Логика сервера может быть общей для разных способов развёртывания, но транспорт, авторизация и обработка нескольких клиентов требуют отдельной конфигурации и тестирования.
Для локального инструмента подходит stdio: клиент запускает сервер как дочерний процесс. Для общего сервиса обычно нужен Streamable HTTP с авторизацией, ограничением доступа и защищённым соединением.
Python SDK: как писать MCP-серверы без боли
Курс показывает, как создать MCP-сервер на Python. Главная идея: декораторы вместо JSON-схем. Раньше для описания инструмента нужно было писать громоздкую JSON Schema. Сейчас достаточно декоратора @mcp.tool.
from mcp.server.fastmcp import FastMCP
mcp = FastMCP("my-server")
@mcp.tool
def get_weather(city: str) -> str:
"""Получить погоду для города."""
# логика получения погоды
return f"Погода в {city}: солнечно, 22°C"
Декоратор @mcp.tool автоматически создаёт описание инструмента из docstring и типов аргументов. Не нужно дублировать информацию в JSON. Код становится чище, ошибок меньше.
Для ресурсов работает аналогично:
@mcp.resource("file://{path}")
def read_file(path: str) -> str:
"""Прочитать содержимое файла."""
with open(path) as f:
return f.read()
Python SDK снижает объём служебного кода, но собственный сервер всё равно остаётся программой с доступом к данным и действиям. Его нужно тестировать, ограничивать и поддерживать как обычную интеграцию.
MCP Inspector: как отлаживать серверы
Курс знакомит с MCP Inspector — инструментом для тестирования серверов. Это веб-интерфейс, который позволяет подключиться к серверу, посмотреть доступные инструменты, ресурсы и промпты, вызвать их вручную и увидеть результат.
Запуск простой:
npx @modelcontextprotocol/inspector
Inspector открывается в браузере. Вы видите список серверов, можете выбрать любой, посмотреть его возможности, отправить тестовые запросы. Это как Postman для API, только для MCP.
Inspector помогает отделить ошибку сервера от поведения модели: проверить соединение, список возможностей, входные параметры и фактический ответ инструмента.
Зачем маркетологу понимать MCP?
Три причины, почему я рекомендую пройти этот курс, даже если вы не собираетесь писать свои серверы.
1. Понимание возможностей. Зная архитектуру MCP, можно точнее оценить идею интеграции: существует ли подходящий сервер, какие данные он получает и какие действия должен выполнять.
2. Выбор инструментов. MCP-серверов становится всё больше. Когда вы понимаете разницу между Tools и Resources, между Static и Templated, вы можете оценить, какой сервер вам нужен. Не просто «подключить что-нибудь», а выбрать осознанно.
3. Коммуникация с разработчиками. Если вы работаете в команде или заказываете разработку, понимание MCP помогает ставить задачи. «Мне нужен MCP-сервер для нашей CRM с двумя инструментами: получить сделку и обновить статус». Это конкретное техническое задание, а не абстрактное «хочу интеграцию».
MCP не заменяет автоматически Zapier, Make или прямой API. Это другой слой интеграции: он полезен, когда AI-приложению нужно динамически выбирать доступные данные и инструменты в пределах заданных правил.
Что я внедрила после курса
Курс подтвердил то, что я уже использовала, и добавил понимания, как это работает под капотом. Вот что изменилось:
-
Templated resources для однотипных источников. Один шаблон URI с параметром проще поддерживать, чем отдельную конфигурацию для каждой таблицы.
-
Осознанный выбор между Tools и Resources. Я разделяю действие и данные, чтобы не дублировать возможности сервера.
-
MCP Inspector как часть рабочего процесса. Перед разбором ответа модели я отдельно проверяю соединение, схему инструмента и ответ сервера.
-
Понимание границ. MCP это про подключение к данным и действиям. Он не делает Claude умнее и не учит его новым навыкам. Зато даёт руки и глаза. Модель остаётся мозгом, MCP даёт ей тело.
Кому подойдёт этот курс?
Курс технический, но доступный. Anthropic нашли баланс между глубиной и понятностью.
Подойдёт:
- Маркетологам и предпринимателям, которые хотят понять, как AI может работать с их инструментами
- Тем, кто уже использует Claude и хочет расширить его возможности
- Разработчикам, которые планируют создавать MCP-серверы
Не подойдёт:
- Тем, кто ищет готовые решения «под ключ» (курс про понимание, не про конфигурацию)
- Тем, кто не готов разбираться в технических концепциях
Курс короткий и даёт базовую карту протокола. На момент моего прохождения он и сертификат были бесплатными; актуальные условия лучше проверить в Anthropic Academy.
Серия «Учусь вместо вас»:
- Claude 101
- AI Fluency for Educators
- Advanced Prompt Engineering
- Claude Code in Action, часть 1
- Claude Code in Action, часть 2
- Agent Skills, часть 1
- Agent Skills, часть 2
- Introduction to MCP ← вы здесь
Часто задаваемые вопросы
Нужно ли уметь программировать, чтобы использовать MCP?
Для подключения готового сервера программирование часто не требуется, но нужно уметь проверить источник, команду запуска, разрешения и конфигурацию. Для собственного сервера понадобятся навыки разработки и понимание безопасности интеграций.
Чем MCP отличается от обычных API-интеграций?
MCP стандартизирует обмен между AI-приложением и сервером, но не отменяет API конкретного сервиса. Обычно MCP-сервер сам использует этот API и адаптирует его возможности к общему протоколу.
Безопасно ли давать AI доступ к корпоративным данным через MCP?
Безопасность зависит от реализации. Локальный сервер может выполнять код с правами пользователя, а удалённый требует надёжной авторизации. Подключайте только доверенные серверы, проверяйте команду запуска, минимизируйте разрешения и не передавайте чувствительные данные без необходимости.
Где найти готовые MCP-серверы?
Начать лучше с официальной документации MCP и каталогов, на которые она ссылается. Перед установкой проверяйте автора, исходный код, разрешения и актуальность каждого сервера.
Если вы хотите разобраться, как MCP и другие AI-инструменты могут работать в вашем бизнесе, запишитесь на консультацию. Разберём ваш стек, покажу, какие интеграции дадут максимальный эффект.