subgraph-registry@0.13.3
VERIFIED· startup onlyPublisher claims: "Use to discover The Graph subgraphs by chain, protocol, entity or contract and turn a goal into a bounded GraphQL query. Bring-your-own Studio key (set up by a human operator) for execution; discovery never executes queries or signs payments, and x402 is an explicitly paid external option." Observed in sandbox: no network, touches nothing outside the project, writes no memory.
Coverage
Startup only; authenticated tool behavior not tested.- Tested
- server startup over stdio (initialize sent) · every file read, file written and host contacted by what ran
- Not tested
- the tool list (the server exited before answering) · what the tools do when called with real credentials
Is [email protected] safe to install?
KillerSkills ran it in the KillerSkills honeypot sandbox (2 scenarios; startup only; authenticated tool behavior not tested) on 2026-11-11 and scored it 86/100 (Verified). In what ran, nothing we could detect went wrong: no undeclared network egress, no credential reads, no persistent instruction writes. What it does with a real credential was not observed; the static findings and the publisher carry the rest of the score. Summary: no network, touches nothing outside the project, writes no memory.
Behavior trace
Honeypot run · 31 s · 2 scenarios · 0 deviationsStatic findings
]) assert.throws(() => assertContext({ ...env, ...change }, version, sha));Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.…and x402 is an explicitly paid external option. compatibility: "Node.js 20+ via npx -y [email protected] (stdio, no listener). Network: discovery tools mak…Fix: Pin versions and sources; vendor anything fetched at install time.assert.doesNotMatch(src, /subgraph-registry-mcp@\$\{/, "no variable-built npx spec");Fix: Pin versions and sources; vendor anything fetched at install time.test("npx references are literal and pinned to this release", () => {Fix: Pin versions and sources; vendor anything fetched at install time.… as the token. - **Tool scope:** this skill uses only this server's MCP tools, `npx -y [email protected]` to start it, and, if the operator chooses, a `cur…Fix: Pin versions and sources; vendor anything fetched at install time.// Literal, exact-version npx spec used in generated config examples. BumpedFix: Pin versions and sources; vendor anything fetched at install time.const used = new Set([...src.matchAll(/process\.env\.([A-Z][A-Z0-9_]+)/g)].map((m) => m[1]));Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.npx -y [email protected]Fix: Pin versions and sources; vendor anything fetched at install time.allowed-tools: "Bash(npx -y [email protected]) Bash(curl -sS -X POST https://gateway.thegraph.com/api/subgraphs/id/*) mcp__subgraph-registry__*"Fix: Pin versions and sources; vendor anything fetched at install time.`claude mcp add --env THE_GRAPH_STUDIO_API_KEY="$THE_GRAPH_STUDIO_API_KEY" --transport stdio subgraph-registry -- npx -y [email protected]`,Fix: Pin versions and sources; vendor anything fetched at install time.fix: "Reinstall the exact published package (npx -y " + PINNED_NPX_PACKAGE + "), which bundles the model. No download is attempted.",Fix: Pin versions and sources; vendor anything fetched at install time.res.status(401).json({ error: "unauthorized", hint: "Send Authorization: Bearer <token>." });Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.// pins, literal pinned npx references, bundled-model-only semantic searchFix: Pin versions and sources; vendor anything fetched at install time.put("SKILL.md", `npx ${PACKAGE}@${version}\nThe npm package version \`${version}\` ships\nSHA-256(registry.db) = ${dbHash}`);Fix: Pin versions and sources; vendor anything fetched at install time.// Keep the OR (dropping to AND would kill recall on descriptions thatFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.assert.doesNotMatch(text, /npx(?:\s+-y)?\s+subgraph-registry-mcp(?![@\w-])/, `${f} has an unpinned npx reference`);Fix: Pin versions and sources; vendor anything fetched at install time.Cost to the agent
Tokens estimated at four characters each. The tool list is re-read by the agent on every turn, so it is the number to compare between servers that do the same job: ranked across the index.
Known vulnerabilities
Vulnerability advisories (OSV) cover npm and PyPI packages; this registry has no advisory database.