Back to Browse

Jshook MCP Server

by Vmoranv
Developer ToolsLow Risk10.0MCP RegistryLocal
Free

Server data from the Official MCP Registry

MCP server for JavaScript analysis, security auditing, browser automation and hooks

About

MCP server for JavaScript analysis, security auditing, browser automation and hooks

Security Report

10.0
Low Risk10.0Low Risk

Valid MCP server (1 strong, 1 medium validity signals). No known CVEs in dependencies. Package registry verified. Imported from the Official MCP Registry.

5 files analyzed Β· 1 issue found

Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.

How to Install

Add this to your MCP configuration file:

{
  "mcpServers": {
    "io-github-vmoranv-jshookmcp": {
      "args": [
        "-y",
        "@jshookmcp/jshook"
      ],
      "command": "npx"
    }
  }
}

Documentation

View on GitHub

From the project's GitHub README.

@jshookmcp/jshook

License: AGPLv3 Node.js 22.12+ TypeScript MCP pnpm

English | δΈ­ζ–‡

An MCP server that gives AI agents 600+ tools across 34 domains for JavaScript analysis and security research β€” browser automation, CDP debugging, network interception, JS hooks, LLM-powered code analysis, process/memory forensics, WASM reverse engineering, source-map reconstruction, AST transforms, and composite workflows in a single server.

Quick Links

πŸš€ Quick Start

No global install needed β€” add to your MCP client config and you're ready:

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 npx.cmd absolute path if npx is not found)

This lightweight configuration skips optional ONNX, Z3, Binaryen, Camoufox, and Playwright packages. Remove npm_config_omit when those full-profile runtimes are required.

Share one daemon across multiple agents

The default stdio configuration starts one full jshook process per MCP host. To share the embedding model, browser runtime, and caches, start one local Streamable HTTP daemon:

pnpm build
pnpm daemon

Vector search defaults to off for per-client stdio processes and on (lazy-loaded) for the shared HTTP daemon. Set SEARCH_VECTOR_ENABLED=false when lexical search is sufficient.

Then point every MCP client at http://127.0.0.1:3000/mcp using its HTTP/URL server configuration. Each client receives its own MCP session and response route while heavyweight runtime resources remain in one process. Keep the default loopback bind; set MCP_AUTH_TOKEN before exposing the endpoint beyond localhost.

🌟 Highlights

  • πŸ€– AI-Driven Analysis β€” LLM-powered deobfuscation, crypto detection, AST comprehension
  • ⚑ Search-First Context Efficiency β€” search profile β‰ˆ 3K tokens vs full β‰ˆ 40K+ tokens
  • 🎯 Progressive Tiers β€” search β†’ workflow β†’ full, activate on demand
  • 🌐 Full-Stack Browser Automation β€” Chromium/Camoufox + CDP + anti-detection + CAPTCHA handling
  • πŸ” Runtime Recovery and Session Isolation β€” HTTP sessions restore activated domains, browser attach state, coverage state, and isolate browser-side session state per client
  • 🧭 Schema-First Meta Tools β€” describe_tool, validated call_tool, and coverage_report reduce parameter errors and make tool coverage visible
  • πŸ“‘ Network Interception β€” HTTP/2 frame building, MiTM capture, GraphQL, Burp Suite bridge
  • πŸ› οΈ Reverse Engineering Toolchain β€” WASM disassembly, binary analysis, Frida, Ghidra/IDA bridges
  • 🧰 Process & Memory Forensics β€” Native FFI scanning, hardware breakpoints, PE introspection
  • 🧩 Dynamic Extensibility β€” Hot-reload plugins, declarative workflows, auto-discovered domains

Recent Runtime Notes

  • HTTP transport now multiplexes independent MCP sessions and restores runtime state after reconnects.
  • proxy_start auto-generates a local HTTPS interception CA when needed.
  • Browser CAPTCHA solving is now explicit-input driven: pass taskKind, siteKey, imageBase64, callbackName, and responseSelector as needed. Built-in widget/page signature probing is intentionally not used.

Architecture

  • Runtime Registry β€” Domains auto-discovered via manifest.ts; add a domain by creating one file
  • Lazy Initialization β€” Handlers instantiated on first call, not at startup
  • BM25 + Vector Search β€” search_tools meta-tool with hybrid ranking and adaptive weights
  • MCP ToolAnnotations β€” Every tool carries readOnlyHint / destructiveHint / idempotentHint / openWorldHint

Registry Snapshot

The built-in surface below is generated from the runtime registry and checked in CI.

  • Package version: 0.3.4
  • Built-in Tools: 636
  • Domains: 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
  • Note: this snapshot is generated from the runtime registry; do not edit the counts by hand.

View the complete Tool Reference β†—

Project Stats

Activity

Reviews

No reviews yet

Be the first to review this server!

Jshook MCP Server - MCP server for JavaScript analysis, security auditing, | MCP Marketplace