Skip to main content
Glama
kkk1259

code-audit-mcp

by kkk1259

Code Audit MCP Server

Автоматизированный инструмент аудита кода на основе больших языковых моделей (LLM) и протокола контекста моделей (MCP).

Возможности

  • Семантический анализ кода: разбор AST, вывод типов, taint-разметка

  • Трассировка цепочек вызовов: отслеживание потоков данных между файлами/модулями

  • Верификация уязвимостей: автоматическая генерация PoC и выполнение проверки

  • Поддержка множества языков: PHP, Python, Java, JavaScript/TypeScript

Related MCP server: Code Audit MCP Server

Быстрый старт

Требования к окружению

  • Node.js >= 18.0

  • TypeScript >= 5.0

  • Cursor / Windsurf (IDE с поддержкой MCP)

Установка

git clone https://github.com/kkk1259/code-audit-mcp.git
cd code-audit-mcp
npm install
npm run build

Настройка

Настройка MCP Server в Cursor:

// .cursor/mcp.json
{
  "mcpServers": {
    "code-audit": {
      "command": "node",
      "args": ["./dist/server.js"],
      "env": {
        "PROJECT_ROOT": "/path/to/your/project"
      }
    }
  }
}

Примеры использования

Аудит SQL-инъекций

用户: 请审计这个项目的SQL注入漏洞

AI: 我将使用MCP工具进行系统性审计。
    首先,识别所有用户输入源和SQL执行点...

Поиск уязвимостей десериализации

用户: 检查是否存在反序列化漏洞

AI: 我将分析项目中的unserialize调用,并追踪POP链...

Список инструментов

Инструмент

Функция

Параметры

parse_ast

разбор AST исходного кода

file: путь к файлу

find_callers

поиск вызывающих функций

funcName: имя функции, maxDepth: максимальная глубина

trace_dataflow

отслеживание потоков данных

source: источник, sink: приёмник

generate_poc

генерация PoC уязвимости

vulnType: тип уязвимости, params: параметры

Структура проекта

code-audit-mcp/
├── src/
│   ├── server.ts          # MCP Server入口
│   ├── tools/
│   │   ├── parser.ts      # AST解析
│   │   ├── callgraph.ts   # 调用链追踪
│   │   ├── verifier.ts    # 漏洞验证
│   │   └── poc.ts         # PoC生成
│   ├── rules/
│   │   ├── php.json       # PHP安全规则
│   │   ├── python.json    # Python安全规则
│   │   └── java.json      # Java安全规则
│   └── utils/
│       ├── taint.ts       # 污点分析
│       └── sanitizer.ts   # 过滤函数识别
├── prompts/
│   ├── audit-system.md    # 系统Prompt
│   └── vuln-types/        # 各漏洞类型Prompt
├── tests/
├── package.json
└── README.md

Лучшие практики

✅ Что делать

  • Проводите аудит по модулям, не загружайте сразу весь проект

  • Сначала запустите статические инструменты для поиска подозрительных мест, затем используйте AI для углублённого анализа

  • Подготовьте отдельный Prompt для каждого типа уязвимостей

  • Перед аудитом дайте AI понять структуру проекта (точки входа, маршруты, база данных)

  • Проверяйте отчёты AI вручную, особенно «высокоопасные» находки

  • Сохраняйте историю аудита для итеративной оптимизации Prompt

❌ Чего не делать

  • Не доверяйте слепо отчётам AI, ложные срабатывания неизбежны

  • Не описывайте в Prompt слишком сложную логику аудита

  • Не пропускайте этап верификации уязвимостей

  • Не используйте облачные API для чувствительных проектов (используйте локальные модели)

  • Не игнорируйте уязвимости бизнес-логики (AI с ними справляется хуже)

Ожидаемые результаты

Тип уязвимости

Полнота

Точность

Инъекционные уязвимости

80%+

75%+

Десериализация

Обнаружение POP-цепочек превосходит ручной анализ

-

Логические уязвимости

По-прежнему требует преимущественно ручного аудита

-

Общая эффективность: повышение в 3-5 раз (с учётом времени ручной проверки)

Лицензия

MIT License

Связанные статьи

Вклад

Приветствуются ваши Issue и PR!

Контакты

A
license - permissive license
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/kkk1259/code-audit-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server