rpg-encoder — MCP-сервер для Claude Code: граф кода
Строит семантический граф репозитория через Tree-sitter и отдаёт агенту карту всего проекта одним вызовом. Пригодится, когда поиск по коду тонет в grep и чтении файлов.
claude mcp add rpg-encoder -- npx -y rpg-encoderЧто делает rpg-encoder
rpg-encoder разбирает репозиторий парсером Tree-sitter: вытаскивает функции, классы, методы и связи между ними — импорты, вызовы, наследование. Дальше LLM читает каждую сущность и пишет к ней признаки вида «валидирует JWT-токены», «сериализует конфиг на диск». Из этих признаков собирается иерархия в три уровня (область → категория → подкатегория), и она отражает поведение кода, а не структуру папок.
Готовый граф сжимается в снимок примерно на 25K токенов: иерархия, сущности с признаками, скелет зависимостей и десять самых связанных узлов. Агент читает его один раз и дальше отвечает на вопросы вроде «что отвечает за аутентификацию», даже если слова auth в коде нет. Сервер сам следит за изменениями рабочего дерева и пересинхронизирует граф перед следующим запросом, так что вручную ничего обновлять не нужно.
Подъём признаков идёт двумя путями. Агентный режим тратит токены вашей подписки Claude или Cursor. Автономный auto_lift дёргает внешнюю модель напрямую и требует ключ API в переменной окружения — например ANTHROPIC_API_KEY. Для больших репозиториев сервер через lifting_status советует отдать цикл субагенту или дешёвой модели: извлечение признаков — это сопоставление по шаблону, а не рассуждение. Если субагентов в вашей среде нет, запустите rpg-encoder lift --provider anthropic|openai из терминала и после завершения вызовите reload_rpg. Учтите: CLI поднимает только сущности без признаков, устаревшие он не переподнимает — это делает сессионный поток MCP.
Какие задачи решает
- найти код по смыслу, когда имена функций ничего не говорят
- получить карту всего репозитория одним вызовом вместо серии grep
- оценить, что сломается при правке конкретной сущности
- спланировать безопасный рефакторинг участка кода
- сэкономить токены на чтении файлов ради контекста
Примеры запросов агенту
- Построй и подними RPG для этого репозитория
- Что в проекте отвечает за аутентификацию?
- Покажи всё, что зависит от подключения к базе данных
Как установить rpg-encoder
Командой платформы
claude mcp add rpg-encoder -- npx -y rpg-encoderКомандой платформы
codex mcp add rpg-encoder -- npx -y rpg-encoderФайл настроек
{
"mcpServers": {
"rpg-encoder": {
"command": "npx",
"args": [
"-y",
"rpg-encoder"
]
}
}
}Файл настроек
{
"servers": {
"rpg-encoder": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"rpg-encoder"
]
}
}
}Командой платформы
gemini mcp add rpg-encoder npx -y rpg-encoderПо шагам, с командами для каждой платформы: Как подключить MCP-сервер: Claude Code, Codex, Cursor, VS Code, Gemini CLI и другие
Вопросы о rpg-encoder
Как установить rpg-encoder в Claude Code?
Одной командой: claude mcp add rpg-encoder -- npx -y rpg-encoder. Rust-тулчейн и сборка не нужны, npx скачает готовый бинарник под вашу платформу.
Что делает rpg-encoder?
Разбирает код через Tree-sitter, добавляет к каждой сущности признаки того, что она делает, и складывает всё в семантический граф. Агент получает по MCP снимок репозитория и отвечает на вопросы о структуре и поведении кода.
Чем отличаются агентный подъём и auto_lift?
Агентный режим работает на токенах вашей подписки Claude или Cursor. auto_lift обращается к внешней модели напрямую и требует ключ API в переменной окружения.