Позволяет ИИ-агенту запрашивать локальный граф зависимостей, чтобы определить, как изменения в коде влияют на маршруты, вызовы, таблицы и конфигурации.
Также известен как cyberchronos00/code-graph, cg-code-graph
- Звёзды
- 4
- Инструменты
- —
- Загрузки, 30 дней
- 354
- Последняя версия
- 0.23.14
- Последний коммит
- 12 нояб. 2026 г.
- Лицензия
- MIT
Что такое code-graph MCP?
code-graph — это MCP server. Позволяет ИИ-агенту запрашивать локальный граф зависимостей, чтобы определить, как изменения в коде влияют на маршруты, вызовы, таблицы и конфигурации.
Сводка сгенерирована из README проекта
О code-graph MCP server
code-graph предоставляет локальный детерминированный граф зависимостей, разработанный для разработчиков и ИИ-агентов для анализа влияния изменений в коде. Путем индексации репозитория инструмент сопоставляет связи между маршрутами, вызовами функций, таблицами баз данных и ключами конфигурации. Этот инструмент позволяет пользователям точно увидеть, как конкретное изменение может повлиять на различные части системы, предоставляя доказательства в виде имен файлов и номеров строк для каждого соединения, найденного в графе.
Пользователи могут взаимодействовать с системой через интерфейс командной строки (CLI) или подключив ИИ-агента через MCP server. Сервер можно зарегистрировать в таких клиентах, как Cursor, Claude или VS Code. Он поддерживает широкий спектр языков, включая Python, TypeScript, PHP, Dart, Kotlin, Java, Swift и Rust. В отличие от многих инструментов, полагающихся на LLM для интерпретации кода, этот сервер использует точный или эвристический анализ, чтобы гарантировать точность и воспроизводимость данных о зависимостях.
Что вы можете с ним делать
- 1Аудит уязвимостей безопасностиПеречислите входящие и исходящие поверхности атаки, чтобы найти такие проблемы, как захардкоженные учетные данные или незащищенные обработчики.
- 2Проверка безопасности маршрутовИдентифицируйте маршруты, которые выполняют операции записи, но не имеют защиты аутентификации.
Взято из README проекта. Каждый вариант использования проверен на соответствие цитате из него.
Как установить code-graph MCP
Форматы проверены 10 ноя 2026Установка code-graph MCP в Claude Code
$ claude mcp add code-graph -- uvx cg-code-graphУстановка code-graph MCP в Cursor
~/.cursor/mcp.json
{
"mcpServers": {
"code-graph": {
"command": "uvx",
"args": [
"cg-code-graph"
]
}
}
}Установка code-graph MCP в VS Code
.vscode/mcp.json
{
"servers": {
"code-graph": {
"type": "stdio",
"command": "uvx",
"args": [
"cg-code-graph"
]
}
}
}Установка code-graph MCP в Claude Desktop
claude_desktop_config.json
{
"mcpServers": {
"code-graph": {
"command": "uvx",
"args": [
"cg-code-graph"
]
}
}
}Установка code-graph MCP в Codex
~/.codex/config.toml
[mcp_servers.code-graph] command = "uvx" args = ["cg-code-graph"]
Установка code-graph MCP в Gemini CLI
~/.gemini/settings.json
{
"mcpServers": {
"code-graph": {
"command": "uvx",
"args": [
"cg-code-graph"
]
}
}
}Автоматические проверки
Запущено 12 нояб. 2026 г.Полный отчёт →Прошло наши автоматизированные проверки. Это не аудит безопасности: изучите код и предоставьте серверу минимально необходимый доступ. Как работают проверки
- Связанный и доступный исходный репозиторийПройдено
- Open source лицензия (OSI)Пройдено
- Коммит или релиз за последний годПройдено
- Имя пакета не похоже на популярный пакетПройдено
- Удаленная конечная точка использует HTTPSНе проверялось
- Деструктивные инструменты помеченыНе проверялось
- Нет скрытых инструкций для моделиПройдено
- Нет критических уязвимостей в пакете и зависимостяхПройдено
README
Открыть на GitHubcode-graph
See everything a change affects before you make it: a local, deterministic dependency graph of routes, calls, tables and config, with file:line evidence for every hop.
For you and your AI agent (CLI + MCP). No LLM in the graph.
Docs · Quick start · CLI · MCP · Changelog
Quick start
pipx install cg-code-graph # or: uv tool install cg-code-graph
cg index . --db out/graph.db # prints starter queries for your repo
cg install --host cursor # or claude, codex, vscode, …: registers the MCP server and a "use cg first" agent rule
cg reaches table:orders --db out/graph.db # any table, connection or config key
Try it on a bundled sample, link a frontend to a backend, or connect an agent over MCP: Quick start guide. Other install options (install.sh, Windows, exact-mode toolchains): Install.
cg reaches table:store_books on the bundled Django sample:
dependents: 18 nodes (code: 6, entry points: 9, other: 3)
== RUNTIME (reached from http_route / ... / queue_job / listener): 5 functions/methods
catalog.api.create_book depth=1 conf=resolved http_route(1)
path: function:catalog.api.create_book
-WRITES_TABLE[resolved @ catalog/api.py:27]-> table:store_books
catalog.signals.review_saved depth=3 conf=resolved listener(1)
path: function:catalog.signals.review_saved
-DISPATCHES[exact @ catalog/signals.py:12]-> job:catalog.tasks.recompute_rating
-HANDLED_BY[exact @ catalog/tasks.py:13]-> function:catalog.tasks.recompute_rating
-READS_TABLE[resolved @ catalog/tasks.py:14]-> table:store_books
Supported languages
| Language | Frameworks and facts | Calls | Docs |
|---|---|---|---|
| Django (+ DRF, django-ninja), FastAPI / Starlette, Flask, Celery | exact (stdlib ast) |
Python | |
| Nuxt / Vue, NestJS, Next.js, Astro, Express, Fastify, Koa, Hono, Elysia, React Router / Remix | exact (TypeScript compiler API) | TS frameworks | |
| Laravel (routes, route attributes, middleware, queues, broadcasting, outbound HTTP) | exact (nikic/php-parser; needs PHP 8.2+) | PHP | |
| Flutter | exact (Dart analyzer; needs the Dart SDK) | Platforms | |
| Android, Kotlin Multiplatform, Spring | heuristic; exact with scip-java (opt-in) | Kotlin | |
| Spring (routes, guards, beans, tables, clients) | heuristic; exact with scip-java (opt-in) | Java | |
| iOS / SwiftPM | heuristic; exact with the Swift index store (opt-in) | Swift | |
crates / modules, entry points, FFI, #[cfg] / #if gates |
heuristic; exact with rust-analyzer / scip-clang | Rust, C and C++ |
Go and others: import a SCIP index with cg index --scip FILE. Run cg doctor to see exact / heuristic per language on your machine.
What you get
reaches,impact,path: every caller, route, job and page that reaches a table, config key or method.cg affected --base main: the tests and entry points a change reaches (--quietfeeds your test runner).- Across repos:
cg linkmatches client HTTP calls (frontends and Laravel / Guzzle backends) to server routes, and checks request keys (Laravel FormRequest, Elysia schemas, Nuxt / TypeScript bodies). - Route guards:
cg routes --writes --unguardedlists routes that write with no auth guard. Laravel checks inside the action count as inline guards unless--strict. - Security views:
cg surfacelists the inbound / outbound attack surface and findings (hardcoded credentials, plaintext protocols, unverified webhooks, unguarded handlers, listeners on all interfaces, disabled TLS / SSH verification, plaintext gRPC, exposed IPC, outbound URLs built from request input) as text, JSON or SARIF, with--fail-onfor CI. - MCP server (
cg-mcp) so agents query the graph instead of grepping. One server can serve many graphs (graphsplus an optionalgraphargument); a single--dbstays one graph. See MCP. - Visual view (
cg serve) and plan checks (cg plan check) for planned changes.
Docs
Install · Quick start · CLI · MCP · Configuration · Architecture · Limitations
Changelog · Contributing · Security · MIT License
More recordings: docs/media.
Вопросы о code-graph MCP
Как добавить code-graph MCP в Claude Code?
Выполните claude mcp add code-graph -- uvx cg-code-graph в терминале. Добавьте --scope user, чтобы сервер был доступен во всех проектах.
Как добавить code-graph MCP в Cursor?
Откройте ~/.cursor/mcp.json и добавьте сервер в mcpServers, используя конфигурацию Cursor из раздела установки выше.
Использует ли этот инструмент LLM для построения графа?
Нет, граф зависимостей является локальным и детерминированным и строится без использования LLM.
Может ли он помочь в аудите безопасности?
Да, он может перечислить входящие и исходящие поверхности атаки, а также выявить такие проблемы, как захардкоженные учетные данные или незащищенные обработчики.

