# Fathom

Провайдер-нейтральный MCP-сервер на Rust для реверс-инжиниринга бинарников, Electron-приложений, .NET-сборок, EVM-байткода и поведения процессов. Каждый результат — конверт с доказательствами.

- MCP-сервер · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed
- Автор: qompassai
- Лицензия: Apache-2.0 · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/qompassai/fathom
- Обновлён: 2026-10-21
- HTML: https://affpapa.org/nevibecode/mcp/qompassai-fathom

## Что делает

Fathom — порт REA (Reverse Engineer Anything) на Rust. Один MCP-сервер закрывает сразу несколько целей: нативные бинарники, JavaScript и Electron, .NET-сборки, веб-захваты, EVM-байткод и поведение процессов. Отличие от обычных анализаторов в том, что каждый ответ приходит в виде evidence envelope: что наблюдалось, что выведено логически, что вообще не проверялось и чего провайдер установить не может. Для агента это важно, потому что он не принимает догадку за факт.

Внутри воркспейс из нескольких крейтов. `fathom-core` держит конфиг, модель доказательств, политику, реестр инструментов и ограничение процессов. `fathom-mcp` даёт транспорты stdio и streamable HTTP, `fathom-a2a` — подписанную карточку агента на JCS и Ed25519. Провайдеры разложены по целям: `fathom-native` работает через Ghidra headless, `fathom-js` разбирает JavaScript и Electron статически, `fathom-managed` читает метаданные .NET PE/CLI, `fathom-observe` занимается захватом процессов, чтением HAR и селекторами EVM. Сборка идёт через `nix build` либо `nix develop` и `cargo build --workspace`, тесты — `cargo test --workspace`.

Политика здесь fail-closed и детерминированная: без настроенной политики инструменты не отработают так, как вы ждёте. Ghidra нужна отдельно — `fathom-native` вызывает её headless, и без установленной Ghidra этот провайдер не запустится. Лицензия Apache-2.0, дизайн описан в `SPEC.md`, исходный TypeScript-проект morluto/rea (MIT) указан в `NOTICE`, его код не используется.

## Требования
- Нужно: готовый бинарник из релизов репозитория

## Установка

### Claude Code (родная платформа)

**Установка**
- Команды запуска нет в реестре MCP — смотрите README репозитория

## Когда брать
- разобрать нативный бинарник и получить структуру без ручного дизассемблирования
- посмотреть, что внутри Electron-приложения и его ASAR-архива
- вытащить метаданные из .NET-сборки
- прочитать HAR-файл и разложить сетевые запросы
- снять поведение процесса и отделить наблюдения от выводов

## Примеры запросов агенту
- Разбери этот бинарник через Fathom и покажи, что реально наблюдалось, а что выведено
- Проанализируй Electron-приложение из этой папки и перечисли, что осталось непроверенным
- Прочитай HAR-файл и собери список эндпоинтов с доказательствами по каждому

## Похожие
- [Corvus](https://affpapa.org/nevibecode/mcp/corvus.md) — MCP-сервер · ★ 9
- [ghidra](https://affpapa.org/nevibecode/skills/ghidra.md) — скилл · 652 установки
- [deep-analysis](https://affpapa.org/nevibecode/skills/deep-analysis.md) — скилл · 516 установок
- [ghidra-headless](https://affpapa.org/nevibecode/skills/ghidra-headless.md) — скилл · 509 установок
- [reverse-engineering](https://affpapa.org/nevibecode/skills/mohitmishra786-reverse-engineering.md) — скилл · 350 установок
- [REA](https://affpapa.org/nevibecode/mcp/rea.md) — MCP-сервер · ★ 392262

## Другие версии с тем же именем
- [Fathom · mindstone](https://affpapa.org/nevibecode/mcp/fathom.md) — ★ 13

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
