Easy Code Reader MCP

MCP-сервер читает исходники Java-зависимостей из локального Maven: sources JAR или декомпиляция CFR и Fernflower.

  • 154 ★ репозитория
  • Последний коммит
  • Apache-2.0
MCP-сервер

Минимальный доступ

Почему такой уровень

  • Сервер читает файлы локального Maven и пишет кэш рядом с артефактами.
Все причины и проверки

fangyuan33/easy-code-reader

Установка

В терминале, через SkillFoxx CLI

npx skillfoxx add mcp/easy-code-reader

Определит агенты на машине, покажет уровень доступа и зафиксирует версию.

Другие способы установки

Доступ и проверки

Как мы проверяем

Минимальный доступИнструмент ничего не запускает и не ходит в сеть.

  • Сервер читает файлы локального Maven и пишет кэш рядом с артефактами.

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

Easy Code Reader дает агенту два инструмента. `search_group_id` находит groupId и доступные версии артефакта в локальном репозитории Maven, а `read_jar_source` возвращает исходный код класса из JAR. Сервер сначала берет sources JAR, затем кэш на диске, и только потом декомпилирует исходный JAR. Декомпилятор CFR или Fernflower выбирается по версии Java, а при неудаче пробуется запасной. Кэш лежит в каталоге версии артефакта, а для SNAPSHOT-сборок сервер следит за размером и временем изменения входного пакета. Сообщения об ошибках подсказывают агенту, как поправить запрос, чтобы он не повторял одну и ту же неудачную попытку.

Для кого. Java-разработчики, которые просят агента писать код против сторонней библиотеки по ее реальной реализации.

Подходит, если

  • Агент пишет интеграцию с Nacos и сначала читает реальный `NamingService` вместо догадок.
  • Исключение пришло из чужого JAR, и стек нужно привязать к конкретной строке.
  • Перед обновлением зависимости сравнивают реализацию старой и новой версии.
  • Версия SNAPSHOT собирается в Maven, и агенту нужен ее код.

Не подходит, если

  • Зависимости нет в локальном репозитории Maven: сначала ее скачивают или устанавливают.
  • Проект не на Java и не использует JAR.
  • Исходники закрыты лицензией: декомпиляция чужого кода может нарушать условия.

Пример запроса к агенту

Найди groupId для spring-core, прочитай `org.springframework.core.SpringVersion` и покажи, откуда берется версия.

MCP

Транспорт
stdio
Авторизация
не нужна

Переменные окружения

`MAVEN_REPO`
Путь к локальному репозиторию Maven, если не задан флаг `--maven-repo`.

Ограничения

Зависимость должна уже лежать в локальном репозитории Maven: сервер ничего не скачивает. Для декомпиляции в PATH нужен `java`, README советует JDK 11 или 21, а чтение sources JAR и готового кэша Java не требует. Требуются Python 3.10 или новее и uv. Версия сервера привязана к `mcp>=1.30,<2`. Декомпилированный код несовершенен: имена переменных и структура могут отличаться от оригинала. Путь к репозиторию задают флагом `--maven-repo`, переменной `MAVEN_REPO` или через настройки Maven. Последний коммит сделан 17 сентября 2026 года.

Как отключить. Уберите запись `easy-code-reader` из MCP-конфигурации клиента. Кэш декомпиляции можно удалить из каталогов версий в локальном Maven.

Частые вопросы

Как указать путь к Maven-репозиторию?

Флагом `--maven-repo`. Без него сервер читает переменную `MAVEN_REPO`, затем настройки Maven пользователя.

Что делать, если версии артефакта нет?

Вызовите `search_group_id` и выберите версию, которая есть локально. Недостающую зависимость скачайте или установите через Maven.

Можно ли читать часть файла?

Да. `read_jar_source` отдает файл целиком, а параметры `start_line` и `end_line` ограничивают диапазон строк.

Какой декомпилятор выбирается?

CFR или Fernflower: выбор зависит от версии Java в среде. При сбое сервер пробует запасной.

Что с версиями SNAPSHOT?

Основной SNAPSHOT-пакет читается первым, а кэш управляется по имени пакета с последней меткой времени.

Обсуждение

Вопросов и отзывов пока нет.

MCP-серверы

MCP-сервер, который индексирует код через tree-sitter и отдает агенту отдельные функции и классы вместо целых файлов

MCP-серверРасширенный доступ2,8 тыс.Звезды репозитория
Официальный

MCP-сервер и CLI для исследования кода: поиск и разбор по вашему проекту и по всему GitHub с экономией токенов

MCP-серверРасширенный доступ961Звезды репозитория

Поиск по исходникам ранжирует совпадения с учетом структуры кода и дает агенту нужные фрагменты без отдельного индекса.

CLIРасширенный доступ1,1 тыс.Звезды репозитория

MCP-сервер, который дает агенту читать файлы, искать по коду и запускать команды в рабочей папке

MCP-серверШирокий доступ1,2 тыс.Звезды репозитория

Разбирает репозиторий в дерево UniAST и дает агенту MCP-инструменты для поиска функций, зависимостей и ссылок в коде

MCP-серверШирокий доступ390Звезды репозитория
Официальный

MCP-сервер ищет определения и смысловые фрагменты кода по локальному индексу, объединяя векторы и полнотекстовый поиск.

MCP-серверРасширенный доступ349Звезды репозитория

Коротко о README

В README перечислены возможности, сценарии вроде разбора исключений и сравнения версий, два способа подключения и проверку в MCP Inspector. Документ на китайском, у раздела возможностей есть английская аннотация.

Бейдж для README

Сообщить о проблеме