Обработка ошибок в MCP: проектирование устойчивых рабочих процессов
Создавайте надёжные MCP-процессы, которые изящно обрабатывают ошибки. Это руководство объясняет распространённые категории ошибок (аутентификация, валидация, сеть, лимиты запросов) и показывает, как проектировать промпты, восстанавливающиеся после сбоев, с помощью переиспользуемых шаблонов восстановления.
Категории ошибок
Ошибки аутентификации (401, 403)
Восстановление после ошибки аутентификации
Частые причины:
- Недействительный или просроченный API-ключ
- Отсутствует заголовок Authorization
- Недостаточно прав
Ошибки валидации (400)
Восстановление после ошибки валидации
Частые причины:
- Отсутствуют обязательные поля
- Неверный формат поля (даты, ID)
- Недопустимые значения полей
Сетевые ошибки
Восстановление после сетевой ошибки
Частые причины:
- Проблемы с сетевым подключением
- Тайм-аут сервера
- Проблемы с разрешением DNS
Ограничение частоты запросов (429)
Восстановление после ограничения запросов
Частые причины:
- Слишком много запросов за короткое время
- Крупные пакетные операции
- Циклы вызовов инструментов
Шаблоны промптов восстановления
Шаблон 1: изящный отказ
Паттерн обработки ошибок
Этот паттерн: изящно обрабатывает ошибки, даёт указания, спрашивает направление
Шаблон 2: повтор с задержкой
Паттерн повтора
Этот паттерн: обрабатывает временные ошибки, предотвращает бесконечные повторы
Шаблон 3: запасная стратегия
Паттерн запасного варианта
Этот паттерн: пробует альтернативные подходы, когда основной не срабатывает
Полные примеры
Пример 1: устойчивый список задач
Устойчивый к ошибкам промпт
Этот паттерн: обрабатывает все типы ошибок с подходящим восстановлением
Пример 2: безопасная пакетная операция
Устойчивое к ошибкам пакетное обновление
Этот паттерн: обработка частичного успеха, повторы под контролем пользователя
Лучшие практики
Лучшие практики обработки ошибок
- Показывайте ошибки чётко: всегда отображайте сообщения об ошибках пользователю
- Объясняйте простым языком: переводите технические ошибки в понятные термины
- Предлагайте решения: давайте конкретные шаги для устранения ошибок
- Ограничивайте повторы: не повторяйте бесконечно — задайте разумные лимиты
- Обрабатывайте частичный успех: для пакетных операций показывайте, что удалось/не удалось
- Спрашивайте перед повтором: для критичных операций спрашивайте разрешение перед повтором
Связанные материалы
Указатель по устранению неполадок
Полное руководство по устранению неполадок
Сбои вызова инструментов
Отладка проблем с вызовами инструментов
Ограничение частоты запросов
Обработка лимитов запросов
Руководство по пакетной обработке
Сокращение числа вызовов инструментов
Создавайте устойчивые MCP-процессы
Используйте паттерны обработки ошибок, чтобы создавать надёжные промпты, изящно восстанавливающиеся после сбоев