Aderyn MCP
Статический анализатор Solidity от Cyfrin с режимом MCP: агент получает карту проекта, контракты, графы вызовов и узлы AST по stdio или HTTP
- 801 ★ репозитория
- Последний коммит
- GPL-3.0
Расширенный доступ
Почему такой уровень
- Читает исходники всего проекта на Solidity и отдает их фрагменты клиенту MCP
- Режим http-stream слушает порт на 127.0.0.1, и к нему может обратиться любой локальный процесс
Установка
- Работает в
Ручная установка
npm install @cyfrin/aderyn -gЕсть и другие способы: brew install cyfrin/tap/aderyn, установщик через curl и cyfrinup. В Windows нужен WSL.
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Читает исходники всего проекта на Solidity и отдает их фрагменты клиенту MCP
- Режим http-stream слушает порт на 127.0.0.1, и к нему может обратиться любой локальный процесс
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Aderyn — статический анализатор смарт-контрактов на Solidity, написанный на Rust, а его MCP-режим отдает агенту навигацию по проекту. Команда `aderyn mcp stdio` запускается в корне проекта Foundry или Hardhat, собирает контекст из исходников и держит сервер на стандартном вводе и выводе. Команда `aderyn mcp http-stream` делает то же по адресу `http://127.0.0.1:6277/mcp`, порт меняется ключом `--port`. Сервер дает семь инструментов. `aderyn_get_tool_guide` агент вызывает один раз в начале: он отдает словарь терминов и приемы работы с остальными. `aderyn_get_project_overview` возвращает корень проекта, каталог исходников, сторонние библиотеки, переназначения путей и список файлов. `aderyn_list_contracts` перечисляет развертываемые контракты единицы компиляции с именами файлов и идентификаторами узлов. `aderyn_contract_surface_inspector` показывает переменные состояния контракта и его входные функции, включая унаследованные. Остальные три инструмента идут вглубь: `aderyn_explore_callgraph_from_entrypoint` прослеживает внутренние вызовы и модификаторы от входной функции с учетом наследования и библиотек, `aderyn_node_summarizer` выдает краткое описание узла с фрагментом кода, а `aderyn_node_finder` ищет узлы по точным именам функций, модификаторов и контрактов или по регулярному выражению.
Для кого. Аудиторам смарт-контрактов и разработчикам на Solidity, которые разбирают чужой или большой проект с помощью агента и хотят дать ему точную карту кода.
Подходит, если
- Нужно быстро разобраться в незнакомом проекте на Foundry или Hardhat: какие контракты развертываются и какие у них входные функции
- Перед аудитом надо проследить, какие внутренние функции и модификаторы срабатывают от конкретной входной функции
- Агент должен находить функции и события по имени или регулярному выражению, а не читать файлы целиком
- Нужен краткий разбор одного узла, например функции или модификатора, вместе с кодом
Не подходит, если
- Нужен поиск уязвимостей: инструменты MCP только описывают структуру кода, а отчеты с находками строит обычная команда `aderyn` в Markdown, JSON и SARIF
- Проект не на Solidity: анализ строится по AST, который собирает собственная сборка для Solidity
- Вы работаете в Windows без WSL: установка описана для систем с WSL
- Исходники часто меняются во время сессии: сервер не обновляет данные сам, их нужно перезапустить
Пример запроса к агенту
Подключись к Aderyn, покажи развертываемые контракты проекта и построй граф вызовов от функции withdrawMCP
- Транспорт
- stdio, http
- Авторизация
- не нужна
Ограничения
Лицензия GPL-3.0. Windows требует WSL.
Режим MCP не описан в README репозитория: о нем говорят исходники и справка команды, а подробная документация лежит на отдельном сайте проекта.
Сервер собирает контекст при запуске, и если файлы Solidity не компилируются, он завершается сообщением, что не удалось создать контекст рабочей области. Запускать его нужно из корня проекта.
Инструменты MCP описывают устройство проекта и не запускают детекторы уязвимостей. Список детекторов и отчеты доступны отдельно через обычную команду `aderyn`.
Как отключить. Уберите запись aderyn из конфигурации MCP вашего клиента и остановите процесс `aderyn mcp`. Сам анализатор удаляют тем же способом, каким ставили: `npm uninstall -g @cyfrin/aderyn` или `brew uninstall aderyn`.
Частые вопросы
Как запустить Aderyn как MCP-сервер?
Перейдите в корень проекта на Solidity и выполните `aderyn mcp stdio` для работы по стандартному вводу и выводу либо `aderyn mcp http-stream` для HTTP на порту 6277. Клиент подключается к процессу или к адресу `http://127.0.0.1:6277/mcp`.
Какие инструменты видит агент?
Семь: руководство по инструментам, обзор проекта, список контрактов, поверхность контракта, граф вызовов от входной функции, описание узла и поиск узлов. Все они читают устройство кода и ничего не меняют в проекте.
Нужна ли настройка для Foundry и Hardhat?
Нет, анализатор работает без конфигурации для проектов Foundry и Hardhat. Параметры можно задать в файле `aderyn.toml`, шаблон которого есть в репозитории.
Что означает номер единицы компиляции?
Индекс единицы компиляции, начиная с 1, показывает, к какому набору собираемых вместе файлов относится узел. Его вместе с идентификатором узла принимают инструменты списка контрактов, поверхности и описания узла. Идентификаторы агент берет из ответа списка контрактов или поиска узлов.
Умеет ли сервер искать уязвимости?
Нет, это делает обычный запуск `aderyn`: он строит отчет в Markdown, JSON или SARIF по списку детекторов. Сервер MCP работает с тем же разобранным деревом кода, но выдает структуру, а не находки.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
MCP-серверыСканер репозитория с MCP-сервером: граф зависимостей, секреты, уязвимости и карта API со ссылками на строки кода
MCP-сервер и CLI для реверс-инжиниринга: агент разбирает бинарные файлы, JavaScript-приложения, APK и сайты на вашей машине и приводит доказательства
19 скиллов Google для поиска, воспроизведения и исправления уязвимостей: от модели угроз до патча и отчета, плюс эталонная обвязка на ADK
Статический анализ кода по правилам, похожим на сам код, со встроенным MCP-сервером для AI-агентов
ИИ-фреймворк для пентеста на своем сервере: граф поверхности атаки, Kali в контейнере, ручное одобрение шагов и MCP-сервер для Claude Code
MCP-сервер платформы ARL-Next: по домену, IP или адресу сайта возвращает порты, отпечатки, сертификаты, уязвимости и утечки из вашей базы активов
Коротко о README
В репозитории лежит описание анализатора с возможностями, четырьмя способами установки, быстрым стартом и ссылками на документацию, расширение для VS Code и действие для CI. Код разделен на командную часть, ядро с детекторами и каталог MCP, рядом идут шаблон конфигурации, правила для контрибьюторов и лицензия.