F6 ASM MCP Server
OfficialThis server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
F6 ASM MCP Server
MCP-сервер для клиентского API F6 ASM (Attack Surface Management). Через него ИИ-ассистент получает доступ к внешнему периметру компании: активам (домены, IP, диапазоны, сертификаты, ПО) и найденным на них проблемам. Можно получать сами записи с фильтрами или сводные цифры.
Тулы
Тул | Назначение |
| Компании, доступные токену. Заодно проверяет адрес, токен и доступ |
| Активы компании с фильтрами, постранично по |
| Проблемы компании с фильтрами, постранично по |
| Доказательства по одной проблеме |
| Сводка по всем активам: тип, статус, уровень проблем |
| Сводка по проблемам: severity, статус, категория, тест, топ хостов и CVE |
| Справочник: типы, статусы, severity, поля, лимиты, особенности API. Работает без запроса к API |
| Остальные эндпоинты, только из фиксированного списка read-only: отчёты, логи, карточка компании, скоринг, утечки |
Все тулы только читают данные. Эндпоинты, которые что-то создают, меняют,
удаляют или переводят статус, asm_request отклоняет ещё до отправки запроса.
Related MCP server: watchTowr Platform MCP Server
Быстрый старт
Понадобятся Python 3.10+, адрес вашей инсталляции ASM и API-токен.
{
"mcpServers": {
"asm": {
"command": "uvx",
"args": ["--from", "/path/to/asm-mcp", "asm-mcp"],
"env": {
"ASM_BASE_URL": "https://asm.example.com",
"ASM_API_TOKEN": "<token>"
}
}
}
}Этот блок подходит для Claude Desktop и Cursor. Для VS Code используется файл
.vscode/mcp.json: ключ servers и "type": "stdio", остальное так же.
Для Claude Code:
claude mcp add asm \
-e ASM_BASE_URL=https://asm.example.com -e ASM_API_TOKEN=<token> \
-- uvx --from /path/to/asm-mcp asm-mcpУстановка из исходников в отдельное окружение:
cd asm-mcp
python3 -m venv venv
./venv/bin/pip install --require-hashes -r requirements.lock
./venv/bin/pip install --no-deps -e .После этого укажите клиенту "command": "/path/to/asm-mcp/venv/bin/asm-mcp" без args.
На Windows путь будет venv\Scripts\asm-mcp.exe.
Можно запускать в контейнере:
docker build -t asm-mcp .
docker run -i --rm -e ASM_BASE_URL -e ASM_API_TOKEN asm-mcpПервым вызовом сделайте asm_list_companies. Он показывает, что адрес, токен
и доступ к компаниям в порядке.
Переменные окружения
Переменная | По умолчанию | Назначение |
| — | Адрес инсталляции ASM, только |
| — | API-токен, передаётся как |
| — | PEM-бандл УЦ для внутреннего сертификата. Заменяет системные УЦ, поэтому в нём должны быть все нужные |
| — | Прокси |
|
| Таймаут одного запроса, секунд |
|
| Число повторов при 429/500/502/503/504 с учётом |
|
| Пауза между запросами, секунд. Сервер пропускает 1 запрос/с на токен, для платных клиентов 0.1 с |
|
| Сколько секунд может длиться один вызов тула. Должно быть меньше таймаута MCP-клиента |
|
| Сколько секунд переиспользуется готовая фоновая сводка |
Выключить проверку TLS нельзя: такой настройки нет намеренно. Для внутреннего
УЦ используйте ASM_CA_BUNDLE.
Примеры
asm_list_companies
asm_issues_summary company_id="…"
asm_get_issues company_id="…" severity=["crit"] status=["detected"] fields=["alertBody.asset","testName","alertBody.reason"]
asm_get_assets company_id="…" type=["domain","ip"] status=["confirmed","new"]
asm_get_assets company_id="…" seq_update="1700000000000_0a1b…"
asm_request path="reports/<company_id>/last"
asm_request method="POST" path="dashboard/scores" params={"companyId":"…","dateFrom":"2026-10-01"}Периметр компании — это активы со статусом confirmed или new. Статус
false означает, что актив исключён. Открытые проблемы — это статусы
detected и under review.
Пагинация
asm_get_assets и asm_get_issues идут от старых записей к новым и сами
перелистывают страницы. Один вызов останавливается в одном из трёх случаев:
набрано max_items записей, истёк ASM_TOOL_BUDGET или ответ дошёл до 1 МБ.
Тогда в ответе будет complete: false, причина в reason и курсор в
seqUpdate. Курсор — это seqUpdate последней отданной записи, поэтому при
продолжении записи не пропускаются. Если сохранить seqUpdate после полного
обхода, следующий вызов с ним вернёт только изменения.
Сводки по большим компаниям
Компанию на 10 000+ активов при лимите 1 запрос/с за один вызов не обойти.
Сводка считает, пока хватает ASM_TOOL_BUDGET, а затем передаёт посчитанное
и курсор фоновой задаче в процессе сервера. Ответ приходит с complete: false
и job_id. Повторный вызов с теми же аргументами возвращает прогресс, а после
завершения полный результат. Задачи хранятся только в памяти, файлы не
пишутся. Одновременно идут не больше двух задач.
Обход особенностей API
Фильтр
statusв/issues/updatedпропускает записи с другими статусами. Статус и severity перепроверяются на клиенте, а число отброшенных записей возвращается вdroppedByFilter.Если задан фильтр и
countмаленький, API отвечает пустой страницей. Поэтому при фильтрахcountне бывает меньше 100, а лишнее обрезается на клиенте.Тяжёлые страницы доменов не успевают загрузиться. В этом случае страница запрашивается заново в половину размера, но не меньше 50.
Соответствие severity:
crit/high/medium/low=alertSeverityCrit/Error/Warning/Low=alertBody.statusCritical/High/Medium/Low severity.Тест CVE называется
CVE vulnurability(именно так, с опечаткой).
Безопасность
Всё, что возвращают тулы, попадает в контекст языковой модели: периметр
компании, уязвимости, а через issues/leaks ещё и утёкшие учётные данные.
Выбирайте провайдера модели с учётом этого. Выдавайте серверу токен с доступом
только к нужным компаниям.
Токен отправляется только на адрес из ASM_BASE_URL и только по https://.
Редиректы не выполняются. Ответ больше 1 МБ не передаётся модели.
Модель угроз описана в SECURITY.md.
Участие в разработке
См. CONTRIBUTING.md.
Лицензия
Related MCP Connectors
Discover exposed assets, leaked secrets, APIs & client-side vulns across your attack surface
Query your team's drift, vulnerability, and upgrade data from any AI assistant. OAuth 2.1, 51 tools.
Read-only CVE intelligence, remediation playbooks, and agent setup guides. Not a scanner.
Real-time CVE, exploit, and vulnerability intelligence for AI assistants (350K+ CVEs, 115K+ PoCs)
Related MCP Servers
- AlicenseAqualityBmaintenanceGives AI assistants access to the Exploit Intelligence Platform for vulnerability and exploit intelligence. Supports searching CVEs, exploits, and generating pentest findings.1753 PyPI1MIT
- FlicenseNot gradedqualityCmaintenanceConnects AI assistants to the watchTowr Platform for real-time access to external attack surface data, findings, and threat intelligence. Provides 113 tools for querying and managing assets, findings, hunts, and more.1-
- FlicenseNot gradedqualityAmaintenanceEnables AI agents to search internet-connected devices, perform IP and host reconnaissance with port, banner and TLS data, run DNS lookups, and retrieve CVE/CPE vulnerability intelligence including CVSS, EPSS and KEV status. It supports credit-aware queries with both stdio and HTTP streaming transports for clients like Claude Code, Codex, Gemini CLI and Claude Desktop.-
- AlicenseNot gradedqualityAmaintenanceEnables AI agents to perform internet-facing reconnaissance and vulnerability research by looking up open ports, banners and TLS details for IPs, searching devices with Shodan query syntax, resolving DNS records in batch, and retrieving CVE/CPE intelligence with CVSS, EPSS and KEV status. Tools are read-only, credit-aware, and exposed over stdio or HTTP streaming.MIT