Чеклист для проверки существующей или планируемой системы на соответствие принципам MCP-first.
Product
- Описана ли каждая функция как Capability — не только как экран или кнопка?
- Есть ли у каждой Capability чёткий пользовательский Intent?
- Есть ли у каждой Capability как человекориентированная, так и агентопригодная форма использования?
- Чётко ли определено, какие Capabilities могут выполняться автономно?
- Чётко ли определено, какие Capabilities требуют явного подтверждения пользователя?
Engineering
- Есть ли центральный Action Layer, совместно используемый всеми интерфейсами?
- Типизированы ли все Actions с чётко определёнными схемами?
- Есть ли схемы входных и выходных данных для каждого Tool?
- Есть ли чёткие машиночитаемые коды ошибок для каждого Tool?
- Есть ли центральный Policy Engine, совместно используемый всеми интерфейсами?
- Есть ли Audit Logs для каждого выполненного действия?
- Есть ли тесты для каждого Tool, покрывающие входные данные, выходные данные и случаи ошибок?
- Есть ли режим Dry Run для рискованных действий?
Security
- Классифицированы ли все Tools по уровню риска (low / medium / high / critical / forbidden)?
- Фильтруются ли Tools уже при Tool Discovery по правам пользователя, роли и Scopes — а не только при вызове?
- Есть ли Step-up Authentication для особо чувствительных действий?
- Есть ли Human Confirmation Gates для критических действий?
- Есть ли Redaction и Context Filtering, чтобы агенты получали только контекст, необходимый для их задачи?
- Есть ли Tenant Isolation, исключающий кросс-тенантный доступ?
- Есть ли Rate Limits для каждого агента, клиента и Tool?
- Есть ли защита от атак Prompt Injection?
- Валидируются ли метаданные Tool на стороне сервера, а не принимаются вслепую от клиента?
- Есть ли мониторинг и оповещения для необычных или аномальных действий агентов?
UX
- Может ли пользователь в любой момент отследить, какие действия агент выполнил или собирается выполнить?
- Видит ли пользователь чётко и понятно, что именно произойдёт при запросе подтверждения?
- Может ли пользователь отклонить или отменить предложенное действие агента?
- Есть ли режим черновика, при котором агент подготавливает, а человек принимает окончательное решение?
- Есть ли функции отмены или отката для обратимых действий?
- Объясняются ли рискованные действия понятным языком — получатели, объём, внешние эффекты, уровень риска?
Build capabilities once. Expose them everywhere.