API ВЕГА
English

Trustabl Probe MCP-сервер

Предоставляет вашему агенту для программирования Trustabl Probe:

Probe формирует предварительный список разрешённых сетевых подключений для инструмента агента и запускает этот инструмент в изолированной среде с заблокированной сетью, чтобы выявить проблемы, которые проявляются только во время выполнения. Для каждого обнаруженного недостатка предлагается способ исправления, а исправления применяет ваш агент. Модель и API key не требуются.

Инструменты

ИнструментНазначениеВносит изменения?
probe_check_setupПроверяет, готовы ли бинарный файл Probe, Docker и образы для изолированной среды, какие языки поддерживаются в этой среде, а также показывает точную команду для установки каждого отсутствующего компонента.Нет
probe_installЗагружает бинарный файл Probe с проверкой контрольной суммы и получает образы для изолированной среды. Для Docker, OpenShell и Python инструмент только выводит команду для запуска и предупреждения о возможных последствиях.Да, см. ниже
probe_scanСканирует каталог инструмента и возвращает оценку готовности, предварительный список разрешённых сетевых подключений и список обнаруженных недостатков, отсортированный от самых серьёзных, с рекомендациями по исправлению.Записывает в сканируемый каталог четыре файла отчётов

Статический анализ и изолированная среда

  • Статический анализ проверяет код и выявляет такие проблемы, как отсутствие тайм-аутов, жёстко заданные учётные данные и отсутствие фильтрации вывода инструмента. На основе кода он также формирует предварительный список разрешённых сетевых подключений — сетевую политику OpenShell. Статический анализ выполняется всегда и не требует дополнительной настройки.

  • Изолированная среда дополнительно запускает инструмент с заблокированной сетью, чтобы обнаружить сбои, отсутствующие зависимости и попытки подключиться к сети. Для этого требуется Docker или NVIDIA OpenShell. При значении sandbox: "auto" (по умолчанию) запуск выполняется, если доступна подходящая среда. Инструменты, которые могут выполнять разрушительные действия (например, платежи, удаление данных или запись в сеть), не запускаются, если не указать allow_write_tools: true.

Docker поддерживает Python, JavaScript/TypeScript, Go и Ruby; образ OpenShell поддерживает Python и Node. Shell-скрипты анализируются только статически.

Установка

Требуется Node.js версии 18 или новее. Docker не обязателен, но позволяет использовать изолированную среду.

Сервер распространяется как npm-пакет @trustabl/agent-network-access-probe. К каждому релизу Probe также прилагаются файлы trustabl-agent-network-access-probe-.tgz и .mcpb.

Cursor (.cursor/mcp.json):

{
  "mcpServers": {
    "agent-network-access-probe": {
      "command": "npx",
      "args": ["-y", "@trustabl/agent-network-access-probe"]
    }
  }
}

Claude Code:

claude mcp add agent-network-access-probe -- npx -y @trustabl/agent-network-access-probe

Claude Desktop: скачайте файл trustabl-agent-network-access-probe-.mcpb

из релиза и откройте его, чтобы установить сервер. Либо добавьте те же значения command и args, что и в примере для Cursor, в раздел mcpServers файла claude_desktop_config.json.

Чтобы закрепить конкретный релиз, а не использовать последнюю версию, замените имя пакета в args на URL файла .tgz этого релиза.

Затем попросите агента выполнить probe_check_setup.

Что сервер меняет на вашем компьютере

  • Загружает бинарный файл Probe из того же релиза, что и сервер, в каталог

~/.trustabl-probe//, предварительно сверив его с файлом checksums.txt из релиза. При несовпадении проверка завершается ошибкой.

  • Загружает образы для изолированной среды (python:3-slim, node:20-slim, golang:1.25-alpine,

ruby:3-slim) при запуске probe_install или во время первого запуска в изолированной среде.

  • Записывает в сканируемый каталог файлы network_policies.draft.yaml, probe.findings.json, probe.profile.json

и autofix-attestation.json.

  • Не устанавливает Docker, OpenShell или Python. Сервер выводит команду, а агент должен запросить ваше разрешение перед её запуском. Для Docker Desktop требуются права администратора; в Windows может понадобиться перезагрузка. Для крупных компаний также может потребоваться платная подписка.

Политика конфиденциальности

Политика конфиденциальности Trustabl: https://trustabl.ai/privacy/

Как сервер работает с вашими данными:

  • Сбор данных: не ведётся. Сервер не отправляет телеметрию и не обращается к моделям.

  • Ваш код: считывается и анализируется на вашем компьютере и никогда не загружается на сервер. Подписание аттестаций отключено, поэтому данные не передаются в журнал прозрачности.

  • Доступ к сети: используется только для обращения к GitHub (загрузка релиза Probe), Docker Hub (получение образов для изолированной среды) и, если в инструменте на Python указаны зависимости, PyPI (их установка перед запуском в изолированной среде). У проверяемого инструмента доступ к сети заблокирован.

  • Хранение: бинарный файл Probe кэшируется в ~/.trustabl-probe/, результаты работы в изолированной среде — в пользовательском каталоге кэша trustabl-probe/results, а четыре файла отчётов записываются в сканируемый каталог. Вы можете удалить их в любое время.

  • Передача третьим сторонам: данные не передаются Trustabl или кому-либо ещё.

  • Контакты: https://github.com/trustabl/agent-network-access-probe/issues

Настройки

ПеременнаяЗначение по умолчаниюНазначение
PROBE_VERSIONрелиз, с которым поставляется серверВерсия Probe, которую нужно использовать вместо него, например v0.2.3 или latest. Требуется версия v0.2.3 или новее.
PROBE_BINПуть к локальной сборке Probe; загрузка пропускается
GITHUB_TOKENИспользуется только для обхода анонимного ограничения частоты запросов GitHub, если для PROBE_VERSION задано значение latest

Разработка

Из каталога mcp/:

cd server && npm ci && npm run build   # bundles to dist/index.js, which is committed
node test/smoke.mjs                    # handshake, tools/list, setup check
SMOKE_SCAN=1 node test/smoke.mjs       # also a static scan of test/fixture with the released Probe
PROBE_BIN=/path/to/autofix node test/smoke.mjs   # the same scan with a local Probe build

В клоне репозитория указана версия 0.0.0, поэтому используется последний релиз Probe. При упаковке сервера процесс выпуска устанавливает фактическую версию.

Лицензия

Apache-2.0, как и Probe.