Agent Canary MCP
Набор защиты агентов: MCP-сервер и SDK с ловушками, метками-канарейками и шлюзом, который блокирует лишние действия.
- 103 ★ репозитория
- Последний коммит
- MIT
Расширенный доступ
Почему такой уровень
- Шлюз пропускает чтение и вызовы, прошедшие политику, а токен GitHub с правом чтения пакетов нужен для установки.
Установка
- Работает в
Ручная установка
npm config set @dorianchn:registry https://npm.pkg.github.comЗатем npm login --scope=@dorianchn с токеном read:packages и npm install --global @dorianchn/agent-canary@3.0.0. Образ Docker: ghcr.io/dorianchn/shanchuanzhi-agent-canary:3.0.0.
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Шлюз пропускает чтение и вызовы, прошедшие политику, а токен GitHub с правом чтения пакетов нужен для установки.
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Agent Canary 3.0 — открытый набор защиты для агентов в виде MCP-сервера и SDK. В него входят инструменты-ловушки, метки-канарейки, шлюз защищенного выполнения, локальные самопроверки и необязательная консоль политик. Сервер запускается командой `agent-canary serve --stdio`, а в коде шлюз создается функцией `createTrustedExecutionGateway`. Хозяин регистрирует обратные вызовы, которые нужно защитить, и шлюз решает, разрешить ли каждый из них: чтение проходит, а запись вне политики отклоняется. В проверке с локальной моделью Qwen из 48 попыток прямые запрещенные действия случились в 12 из 12 случаев без защиты и в 0 из 12 при защите. Есть плагин для Cline SDK и закрытый по умолчанию адаптер для сервера Filesystem MCP. Защита действует только на обратные вызовы, проведенные через этот сервер.
Для кого. Разработчикам агентов, которые хотят ограничить побочные действия вызовов инструментов и поймать срабатывание ловушек.
Подходит, если
- Агент получает доступ к файлам, и запись вне разрешенной зоны должен отклонять шлюз.
- Нужны приманки среди инструментов и метки, чтобы заметить попытку подмены или кражи.
- Встраиваемому агенту на Cline SDK нужен слой проверки перед каждым вызовом инструмента.
- Перед запуском хочется прогнать локальные самопроверки на тестовых файлах.
Не подходит, если
- Нужна изоляция на уровне ОС: защита работает как маршрутизация внутри приложения.
- Остаются доступны прямые инструменты клиента: шлюз их не перехватывает.
- Требуется независимое подтверждение защиты: повторная проверка третьей стороной пока не выполнена.
Пример запроса к агенту
Прочитай файл через защищенный инструмент, затем попробуй записать вне разрешенной папки и покажи решение шлюза.MCP
- Транспорт
- stdio
- Авторизация
- не нужна
Ограничения
Защищены только обратные вызовы, которые хозяин зарегистрировал и провел через сервер: собственные инструменты клиента и посторонние процессы шлюз не контролирует. Это маршрутизация на уровне приложения, а не ограничение на уровне ОС. Автор не заявляет нулевых ложных срабатываний и полного отсутствия гонок проверки и использования, а повторная проверка сторонним оператором помечена заблокированной. Нужен Node.js 20. Пакет npm лежит в GitHub Packages, где нужен токен с правом `read:packages`, а Docker-образ можно получить из GitHub Container Registry. Интеграция с Cline проверена только на закрепленном плагине SDK.
Как отключить. Удалите запись `agent-canary` из конфигурации клиента и пакет командой `npm uninstall --global @dorianchn/agent-canary`. Токен GitHub для чтения пакетов можно отозвать.
Частые вопросы
Как установить Agent Canary?
Настройте реестр `@dorianchn` на GitHub Packages, войдите токеном с `read:packages` и выполните `npm install --global @dorianchn/agent-canary@3.0.0`. Затем проверьте `agent-canary --help`.
Как запустить MCP-сервер?
Командой `agent-canary serve --stdio` или через контейнер с флагом `-i` и теми же аргументами.
Как шлюз решает, что разрешить?
Хозяин регистрирует защищаемые обратные вызовы, а шлюз пропускает чтение и отклоняет записи вне политики.
Можно ли собрать без входа в GitHub Packages?
Да, из закрепленного снимка исходников. Порядок описан в `GETTING_STARTED.md`.
Какие интеграции есть?
Плагин для Cline SDK и закрытый по умолчанию адаптер для сервера Filesystem MCP. Проверен путь через Cline Agent Runtime.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
MCP-серверыCLI проверяет на вашей машине скиллы и конфиги MCP, ищет отравленные описания инструментов и прогоняет системный промпт через 225 атак
Шлюз для MCP-серверов: плагины маскировки известных секретов в текстовых ответах, проверки репутации и записи вызовов
AgentShield проверяет папку .claude на ключи в открытом виде, широкие разрешения, опасные хуки и небезопасные MCP-серверы и ставит оценку от A до F
MCP-сервер памяти для агентов и бесплатный шлюз, который останавливает опасные команды до запуска
Шлюз политик для ИИ-агентов: проверяет вызовы инструментов до выполнения, опасные ставит на согласование и пишет аудит
CLI аудита MCP-серверов: инвентаризация, доказательства по каждому серверу и политика для CI, где неизмеренное не бывает чистым
Коротко о README
Рассказано об установке из GitHub Packages и Docker, использовании SDK, интеграции с Cline и результатах проверок. Явно перечислены границы: что защищено и чего проверка не доказывает.