JsHookMcp

O kit de ferramentas js hook que você precisa

Documentação

@jshookmcp/jshook

License: AGPLv3 Node.js 22.12+ TypeScript MCP pnpm

English | 中文

Um servidor MCP que oferece a agentes de IA mais de 600 ferramentas em 34 domínios para análise de JavaScript e pesquisa de segurança — automação de navegador, depuração CDP, interceptação de rede, hooks JS, análise de código com LLM, forense de processo/memória, engenharia reversa de WASM, reconstrução de source-map, transformações AST e fluxos de trabalho compostos em um único servidor.

Links Rápidos

🚀 Início Rápido

Não é necessária instalação global — adicione à configuração do seu cliente MCP e pronto:

Claude Desktop / Cursor (claude_desktop_config.json):

{
  "mcpServers": {
    "jshook": {
      "command": "npx",
      "args": ["-y", "@jshookmcp/jshook@latest"],
      "env": {
        "MCP_TOOL_PROFILE": "search",
        "npm_config_omit": "optional"
      }
    }
  }
}

(Windows: use o caminho absoluto npx.cmd se npx não for encontrado)

Esta configuração leve omite os pacotes opcionais ONNX, Z3, Binaryen, Camoufox e Playwright. Remova npm_config_omit quando esses runtimes de perfil completo forem necessários.

Compartilhe um daemon entre vários agentes

A configuração padrão stdio inicia um processo jshook completo por host MCP. Para compartilhar o modelo de embeddings, o runtime do navegador e os caches, inicie um daemon HTTP Streamable local:

pnpm build
pnpm daemon

A busca vetorial fica desativada por padrão para processos stdio por cliente e ativada (carregamento preguiçoso) para o daemon HTTP compartilhado. Defina SEARCH_VECTOR_ENABLED=false quando a busca lexical for suficiente.

Em seguida, aponte cada cliente MCP para http://127.0.0.1:3000/mcp usando a configuração de servidor HTTP/URL. Cada cliente recebe sua própria sessão MCP e rota de resposta enquanto os recursos de runtime pesados permanecem em um único processo. Mantenha o bind padrão de loopback; defina MCP_AUTH_TOKEN antes de expor o endpoint além do localhost.

🌟 Destaques

  • 🤖 Análise Orientada por IA — Desofuscação com LLM, detecção de criptografia, compreensão de AST
  • Eficiência de Contexto com Busca em Primeiro Lugar — perfil search ≈ 3K tokens vs full ≈ 40K+ tokens
  • 🎯 Níveis Progressivossearchworkflowfull, ative sob demanda
  • 🌐 Automação de Navegador Full-Stack — Chromium/Camoufox + CDP + anti-detecção + tratamento de CAPTCHA
  • 🔁 Recuperação de Runtime e Isolamento de Sessão — Sessões HTTP restauram domínios ativados, estado de anexação do navegador, estado de cobertura e isolam o estado de sessão do navegador por cliente
  • 🧭 Meta-Ferramentas Schema-Firstdescribe_tool, call_tool validado e coverage_report reduzem erros de parâmetros e tornam a cobertura de ferramentas visível
  • 📡 Interceptação de Rede — Construção de quadros HTTP/2, captura MiTM, GraphQL, ponte Burp Suite
  • 🛠️ Conjunto de Ferramentas de Engenharia Reversa — Desmontagem WASM, análise binária, Frida, pontes Ghidra/IDA
  • 🧰 Forense de Processo e Memória — Varredura FFI nativa, breakpoints de hardware, introspecção PE
  • 🧩 Extensibilidade Dinâmica — Plugins com recarga a quente, fluxos de trabalho declarativos, domínios auto-descobertos

Notas Recentes do Runtime

  • O transporte HTTP agora multiplexa sessões MCP independentes e restaura o estado do runtime após reconexões.
  • proxy_start gera automaticamente uma CA local de interceptação HTTPS quando necessário.
  • A resolução de CAPTCHA no navegador agora é orientada por entrada explícita: passe taskKind, siteKey, imageBase64, callbackName e responseSelector conforme necessário. A sondagem integrada de assinatura de widget/página não é usada intencionalmente.

Arquitetura

  • Registro de Runtime — Domínios auto-descobertos via manifest.ts; adicione um domínio criando um arquivo
  • Inicialização Preguiçosa — Handlers instanciados na primeira chamada, não na inicialização
  • Busca BM25 + Vetorial — Meta-ferramenta search_tools com classificação híbrida e pesos adaptativos
  • MCP ToolAnnotations — Cada ferramenta carrega readOnlyHint / destructiveHint / idempotentHint / openWorldHint

Snapshot do Registro

A superfície integrada abaixo é gerada a partir do registro de runtime e verificada no CI.

  • Versão do pacote: 0.3.5
  • Ferramentas integradas: 712
  • Domínios: adb-bridge, binary-instrument, boringssl-inspector, browser, canvas, coordination, core, cross-domain, dart-inspector, debugger, encoding, exploit-dev, extension-registry, graphql, instrumentation, maintenance, memory, mojo-ipc, native-bridge, native-emulator, network, platform, process, protocol-analysis, proxy, sourcemap, streaming, syscall-hook, trace, transform, v8-inspector, wasm, webgpu, workflow
  • Nota: este snapshot é gerado a partir do registro de runtime; não edite as contagens manualmente.

Veja a Referência Completa de Ferramentas ↗

Estatísticas do Projeto