Эти паттерны выросли из опыта первых пользователей и внутренних команд Anthropic.
Это не догмы, а проверенные подходы.
Берите то, что подходит.
>[!tip] > **Два угла зрения.**
>- От задачи: «Мне нужно развернуть воркспейс», и skill сам выстраивает цепочку MCP-вызовов.
>- От инструмента: «У меня подключён Notion MCP», и skill подсказывает Claude, как работать с ним оптимально.
---
#### **1. Последовательный процесс:**
**Подходит, когда:** нужно пройти несколько шагов строго по порядку, где каждый зависит от предыдущего.
```markdown
## Процесс: онбординг нового клиента
### Шаг 1: Создать аккаунт
MCP-вызов: `create_customer`
Параметры: name, email, company
### Шаг 2: Подключить оплату
MCP-вызов: `setup_payment_method`
Ждём: подтверждения платёжного метода
### Шаг 3: Оформить подписку
MCP-вызов: `create_subscription`
Параметры: plan_id, customer_id (из шага 1)
### Шаг 4: Отправить приветственное письмо
MCP-вызов: `send_email`
Шаблон: welcome_email_template
```
**На что обратить внимание:** чёткий порядок шагов, явные зависимости между ними, проверка на каждом этапе, инструкция по откату при сбое.
---
#### **2. Координация нескольких MCP:**
**Подходит, когда:** процесс затрагивает несколько разных сервисов.
```markdown
## Передача дизайна в разработку
### Фаза 1: Экспорт дизайна (Figma MCP)
1. Выгрузить ассеты из Figma
2. Собрать спецификации
3. Сформировать манифест ассетов
### Фаза 2: Сохранение (Drive MCP)
1. Создать проектную папку в Drive
2. Залить все ассеты
3. Получить ссылки для расшаривания
### Фаза 3: Постановка задач (Linear MCP)
1. Завести задачи на разработку
2. Прикрепить ссылки на ассеты
3. Назначить на инженерную команду
### Фаза 4: Оповещение (Slack MCP)
1. Кинуть сводку в #engineering
2. Приложить ссылки и номера задач
```
**На что обратить внимание:** чёткое разделение по фазам, передача данных между MCP-серверами, проверка перед переходом на следующую фазу, единая обработка ошибок.
---
#### **3. Итеративная доработка:**
**Подходит, когда:** результат становится лучше с каждым проходом.
```markdown
## Подготовка отчёта в несколько проходов
### Черновик
1. Забрать данные через MCP
2. Сгенерировать первую версию
3. Сохранить во временный файл
### Проверка
1. Прогнать скрипт валидации: `scripts/check_report.py`
2. Собрать список проблем: пропущенные разделы,
«поехавшее» форматирование, ошибки в данных
### Цикл доработки
1. Исправить каждую найденную проблему
2. Перегенерировать затронутые разделы
3. Снова прогнать валидацию
4. Повторять, пока качество не дотянет до порога
### Финализация
1. Наложить итоговое форматирование
2. Добавить краткую выжимку
3. Сохранить финальную версию
```
**На что обратить внимание:** чёткие критерии «хорошо/плохо», скрипты для автоматической проверки, понимание момента, когда пора остановиться.
---
#### **4. Выбор инструмента по ситуации:**
**Подходит, когда:** цель одна, но способ её достижения зависит от контекста.
```markdown
## Умное сохранение файлов
### Дерево решений
1. Определить тип и размер файла
2. Выбрать хранилище:
- Большие файлы (>10 МБ) → облачное хранилище MCP
- Совместные документы → Notion/Docs MCP
- Исходный код → GitHub MCP
- Временные файлы → локальная файловая система
### Действие
По результатам:
- Вызвать нужный MCP-инструмент
- Проставить метаданные по правилам сервиса
- Вернуть ссылку доступа
### Пояснение
Рассказать пользователю, почему выбрано именно это хранилище
```
**На что обратить внимание:** однозначные критерии выбора, запасной вариант на каждый случай, прозрачность: пользователь понимает, что произошло и почему.
---
#### **5. Встроенная предметная экспертиза:**
**Подходит, когда:** skill несёт в себе знания, которых нет ни в инструментах, ни у пользователя.
```markdown
## Обработка платежей с проверкой комплаенса
### До обработки: проверка
1. Забрать детали транзакции через MCP
2. Прогнать через правила комплаенса:
- Санкционные списки
- Допустимые юрисдикции
- Уровень риска
3. Зафиксировать решение
### Обработка
ЕСЛИ проверка пройдена:
- Провести платёж через MCP
- Выполнить антифрод-проверки
- Завершить транзакцию
ИНАЧЕ:
- Пометить для ручного ревью
- Создать кейс в системе комплаенса
### Аудиторский след
- Записать все проверки
- Сохранить принятые решения
- Сформировать отчёт для аудита
```
**На что обратить внимание:** экспертиза зашита прямо в логику, проверка всегда идёт до действия, каждый шаг документируется, ответственность прозрачна.
---
### **Типичные проблемы и решения:**
#### **Skill не загружается:**
**Ошибка:** `Could not find SKILL.md in uploaded folder`
**Почему:** файл назван не `SKILL.md`, а как-то иначе
**Что делать:** переименуйте ровно в `SKILL.md`. Регистр важен! Проверьте через `ls -la`.
**Ошибка:** `Invalid frontmatter`
**Почему:** косяк в YAML-разметке
```yaml
# Нет разделителей, не сработает
name: my-skill
description: Does things
# Незакрытые кавычки, не сработает
name: my-skill
description: "Does things
# Вот так правильно
---
name: my-skill
description: Does things
---
```
**Ошибка:** `Invalid skill name`
**Почему:** в имени пробелы или заглавные буквы
```yaml
# Неправильно
name: My Cool Skill
# Правильно
name: my-cool-skill
```
#### **Skill не подключается:**
**Пройдитесь по списку:**
- Описание не слишком ли абстрактное? «Помогает с проектами». Claude такое не зацепит
- Есть ли фразы, которые люди реально произносят?
- Упомянуты ли типы файлов, если это важно?
**Лайфхак:** спросите Claude напрямую: «Когда бы ты подключил skill [имя]?» Он процитирует описание, и сразу станет видно, чего не хватает.
#### **Skill подключается к чему попало:**
**Три способа починить:**
1. **Антитриггеры:** «НЕ подключать для простого просмотра данных (для этого есть data-viz)»
2. **Уточнение:** вместо «Обрабатывает документы», напишите «Разбирает юридические PDF для ревью контрактов»
3. **Границы:** «Платежи PayFlow для e-commerce. Только для онлайн-платежей, не для общих финансовых вопросов.»
#### **MCP-вызовы падают:**
**Симптом:** skill загружается, но вызовы MCP не проходят
**Пройдитесь по списку:**
1. **MCP-сервер подключён?**
Claude.ai: Settings > Extensions > [Ваш сервис] — должно быть «Connected»
2. **Аутентификация в порядке?**
API-ключи не протухли, нужные scopes выданы, OAuth-токены обновлены
3. **MCP работает без skill?**
Спросите Claude напрямую: «Используй [Сервис] MCP, покажи мои проекты». Если и так не работает — проблема в MCP, а не в skill
4. **Имена инструментов совпадают?**
Проверьте, что skill ссылается на те же имена, что в документации MCP-сервера. Имена инструментов регистрозависимы.
#### **Claude игнорирует инструкции:**
**Обычные причины:**
1. **Простыня текста:** пишите кратко, используйте списки, выносите подробности в `references/`
2. **Главное закопано в середине:** критическое всегда наверх, заголовки «Important» или «Critical» помогают
3. **Размытые формулировки:** не «проверьте корректность», а `CRITICAL: до вызова create_project убедитесь: имя не пустое, назначен хотя бы один участник, дата начала не в прошлом`
4. **Модель «ленится»:** помогает фраза: «Не торопись, пройди каждый шаг тщательно. Качество важнее скорости.» Работает лучше в промпте пользователя, чем в SKILL.md
**Продвинутый приём:** если валидация критична, напишите скрипт, а не текстовую инструкцию. Код работает детерминированно, человеческий язык нет.
#### **Skill тормозит или деградирует:**
**Что делать:**
1. Ужмите `SKILL.md` до 5 000 слов максимум, всё остальное в `references/`
2. Проверьте, не включено ли у вас 20-50 skills одновременно, это перегружает контекст
3. Группируйте связанные skills в «пакеты» и включайте по ситуации