io.github.vmoranv/jshookmcp
NPM · @JSHOOKMCP/JSHOOK
Search-first MCP server for JavaScript reverse engineering: 735 tools across 36 domains.
Available components
Last scanned (17 hours ago)
Scores higher than 48% of npm servers
Category Developer Tools
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security45
- Malware check failed: a supply-chain vendor flagged a high-severity malware risk. See how to fix → Fail
- CVE check failed: a known high-severity CVE affects @graphql-tools/utils 11.2.2, reached via mockttp > @graphql-tools/utils. A fixed version is available. View diagnostics → Fail
- No install/post-install scripts declared.Pass
- Dependency health was assessed across the 400 of 460 dependencies we could resolve, so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency100
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Cryptographically verified build provenance (signed, bound to vmoranv/jshookmcp). View diagnostics → Pass
- Clear OSI-approved license (AGPL-3.0-only).Pass
- Actively maintained (last published 5 days ago).Pass
- Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability55
- 23% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Partial
- AI-judged instruction clarity (good).Pass
- Tool/resource definitions use about 1518 tokens (~28/item across 53 items; 8 tools + 45 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
- No destabilizing schema changes in the last 30 days.Pass
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Tool Safety75
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- 0 of 2 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "deactivate_tools" implies "remove" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
- An AI judge read all 9 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 31 Oct 26 0
- CVE-2026-118764 affects this package: high ▼ security
- CVE-2026-118773 affects this package: high ▼ security
- 30 Oct 26 +1
- Stability: 0.97 → pass security
- 29 Oct 26 −1
- Stability: pass → 0.97 functional
- 24 Oct 26 0
- CVE-2023-54404 affects this package: high ▼ security
- 23 Oct 26 +1
- CVE-2026-114604 affects this package: high ▼ security
- Stability: 0.97 → pass security
- 22 Oct 26 −1
- Stability: pass → 0.97 functional
- 17 Oct 26 +40
- Injection markers: unverified → pass ▲ security
- Stability: unverified → pass ▲ security
- Schema quality: 65 → 28 ▲ functional
- Tool coverage: unverified → 100 ▲ functional
- Schema quality: unverified → 23 ▲ functional
- MCP protocol: unverified → pass ▲ functional
- Schema quality: excellent → good functional
- Package version: 0.3.0 → 0.4.2 functional
- 15 Oct 26 0
- Stability: Stability not yet verified: this package could not be installed in a clean environment, so we have no schema to compare. security
- Tool safety: Tool safety not yet verified: this package could not be installed in a clean environment, so we have no tool text to scan. security
- Schema quality: Schema quality not yet verified: this package could not be installed in a clean environment, so we have no schema to assess. functional
- Capabilities: Protocol version not yet verified: this package could not be installed in a clean environment, so we never saw its MCP handshake. functional
- Tool coverage: Tool coverage not yet verified: this package could not be installed in a clean environment, so we have no tool definitions to assess. functional
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 4 Nov 2026 · Analysed npm/@jshookmcp/jshook@0.4.2
Provenance Verified
A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.
| Result | Verified |
|---|---|
| Ecosystem | npm |
| Reason | Verified |
| Discovered via | Registry attestation endpoint |
| Source repo | vmoranv/jshookmcp |
| Certificate issuer | https://token.actions.githubusercontent.com |
| Certificate SAN | https://github.com/vmoranv/jshookmcp/.github/workflows/publish-packages.yml@refs/heads/master |
| Rekor log index | 3158591205 |
| Predicate type | SLSA build provenance https://slsa.dev/provenance/v1 |
| Subject digest | sha512:b4093b7353394ffd1edc5624a4f508ec4868b337e7c83bb82790977fe15c14883945da1391c9d1ee64b7c6d1019b65af7cb8564d433172bc0604fc3df |
Background: How many MCP packages publish verified provenance →
Vulnerabilities 8 findings
| ID | CVE | Severity | Vector | Fix available |
|---|---|---|---|---|
| GHSA-7mx3-vvmw-hjmv | CVE-2026-104852 | high | yes | |
| GHSA-c4qx-w738-7hr3 | CVE-2026-114604 | high | yes | |
| GHSA-c475-qrg2-pj4r | CVE-2026-102990 | high | yes | |
| GHSA-7pqw-9j4j-h8q3 | CVE-2026-19693 | high | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:H | no |
| GHSA-jmr9-qjv8-65gv | CVE-2026-56876 | high | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N | no |
| GHSA-3g3m-2fjr-6pw4 | CVE-2026-118773 | medium | yes | |
| GHSA-g3hv-75wg-m249 | CVE-2026-118764 | medium | yes | |
| GHSA-mrhx-c7xc-m3w5 | CVE-2023-54404 | high | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H | yes |
Background: What a vulnerability scan can and cannot prove →
Dependencies 400 packages
| Packages resolved | 400 |
|---|---|
| Deprecated | 1 |
| Stale | 87 |
| Tree resolution | Partial |
The dependency tree was only partially resolved, so these counts may be incomplete.
Background: SBOMs and build attestations, explained →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
activate_domain ~79
Activate all tools in a domain at once. Domains: . Use reload_extensions first to include external plugin/workflow domains.
| Name | Type | Req | Description |
|---|---|---|---|
| domain | string | yes | Domain name to activate (e.g. "debugger", "network") |
| ttlMinutes | number | – | Auto-deactivate after N minutes (default: 30, set 0 for no expiry) |
No output schema declared.
No examples provided.
activate_tools ~111
Dynamically register specific tools by name, regardless of current base tier. Use after search_tools to enable exactly the tools you need. In search-tier sessions this is usually enough; use activate_domain when you need every tool in a domain. Activated tools appear in the tool list immediately. If tools do not appear after activation, use call_tool to invoke them directly.
| Name | Type | Req | Description |
|---|---|---|---|
| names | – | yes | Array of tool names to activate (from search_tools results). Also accepts a JSON stringified array for clients that serialize arrays as strings. |
No output schema declared.
No examples provided.
call_tool ~145
Execute an already-active tool by name. Use this when activate_tools/activate_domain registered a tool but your client did not refresh its tool list. Does not auto-activate inactive tools.
| Name | Type | Req | Description |
|---|---|---|---|
| args | object | – | Arguments object to pass to the tool |
| arguments | string | – | Another alternative: MCP clients that stringify the entire arguments wrapper. Carries the same nested {name, args/parameters} payload as a JSON string. |
| name | string | yes | The tool name to execute (from search_tools or describe_tool results) |
| parameters | string | – | Alternative: JSON-serialized arguments string. Some MCP clients serialize the nested arguments as a single stringified-JSON field. |
No output schema declared.
No examples provided.
coverage_report ~47
Report which tools have been called in the current runtime and which known tools remain uncalled. Loads all domains first so the uncalled list reflects the full tool catalog, not just currently active tools.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
deactivate_tools ~50
Remove previously activated tools to free context. Only affects dynamically activated tools (added via activate_tools, activate_domain, or extension activation), not base profile tools.
| Name | Type | Req | Description |
|---|---|---|---|
| names | – | yes | Array of tool names to deactivate |
No output schema declared.
No examples provided.
describe_tool ~46
Get detailed information about a specific tool, including its input schema. Use this to see the exact parameters a tool expects before calling it.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Tool name to describe |
No output schema declared.
No examples provided.
route_tool ~87
One-stop tool router: accepts a natural language task description, returns recommended tools and next actions. Automatically detects workflow patterns, recommends activation order, and provides example arguments. Use this instead of search_tools when you want guided tool discovery with actionable next steps.
| Name | Type | Req | Description |
|---|---|---|---|
| context | object | – | Optional context hints for routing |
| task | string | yes | Natural language description of the task you want to accomplish |
No output schema declared.
No examples provided.
search_tools ~404
Search 735 tools across 36 capability domains. This includes built-in tools plus any loaded plugin/workflow tools (0 currently loaded). In search-tier sessions, call this before assuming a capability is unavailable. Use activate_tools for exact matches, activate_domain for an entire domain. Domains: browser (85) | memory (75) | native-emulator (57) | binary-instrument (46) | network (38) | tls-inspector (29) | process (28) | adb-bridge (26) | core (25) | debugger (21) | exploit-dev (21) | v8-inspector (21) | protocol-analysis (20) | platform (18) | maintenance (17) | streaming (17) | wasm (17) | dart-inspector (16) | syscall-hook (15) | instrumentation (13) | workflow (13) | coordination (12) | canvas (11) | proxy (11) | trace (10) | webgpu (10) | cross-domain (8) | mojo-ipc (8) | transform (8) | extension-registry (7) | graphql (7) | sourcemap (7) | native-bridge (6) | encoding (5) | tasks (4) | session (3). Query tip: before searching, distill your intent into key concepts (action verb + target + domain). The engine combines token matching, fuzzy names, profile context, and optional static embeddings.
| Name | Type | Req | Description |
|---|---|---|---|
| auto_activate | boolean | – | Auto-activate found tools so they are immediately callable. Set false to only search without activating (default: true) |
| query | string | yes | Before calling, distill your intent into 2-5 key concepts: what action, on what target, in which domain. Pass only those distilled keywords — not the original user request. |
| top_k | number | – | Max results to return (default: 10, max: 30) |
No output schema declared.
No examples provided.
How do I install the io.github.vmoranv/jshookmcp MCP server?
io.github.vmoranv/jshookmcp runs locally as an npm package, launched with npx -y @jshookmcp/jshook. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
npm · @jshookmcp/jshook
claude mcp add vmoranv-jshookmcp -- npx -y @jshookmcp/jshook
What is the io.github.vmoranv/jshookmcp MCP server?
io.github.vmoranv/jshookmcp is an MCP server listed in the public MCP registry as io.github.vmoranv/jshookmcp. Search-first MCP server for JavaScript reverse engineering: 735 tools across 36 domains. This page covers its npm package (@jshookmcp/jshook).
Is the io.github.vmoranv/jshookmcp MCP server safe to use?
io.github.vmoranv/jshookmcp scores 74 out of 100 on VerifyMCP. A supply-chain scanner flagged a possible malware risk on one channel of this server. We recorded 8 known advisories against it as of 4 November 2026. It declares no install or post-install scripts. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the io.github.vmoranv/jshookmcp MCP server expose?
io.github.vmoranv/jshookmcp exposes 8 tools: search_tools, route_tool, describe_tool, activate_tools, deactivate_tools, and 3 more. Their descriptions and schemas cost roughly 969 tokens of context every time the server is loaded.
Is the io.github.vmoranv/jshookmcp MCP server still maintained?
io.github.vmoranv/jshookmcp is still listed as active in the MCP registry. We last reached this channel on 4 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the io.github.vmoranv/jshookmcp MCP server under?
io.github.vmoranv/jshookmcp declares the AGPL-3.0-only licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.