{"_id":"@addybook/mcp-server","_rev":"4-27138e6ab71d21e4c0f286bf576cf957","name":"@addybook/mcp-server","dist-tags":{"latest":"0.2.2"},"versions":{"0.1.0":{"name":"@addybook/mcp-server","version":"0.1.0","keywords":["mcp","defi","blockchain","contracts","registry","x402"],"license":"MIT","_id":"@addybook/mcp-server@0.1.0","maintainers":[{"name":"karelxfi","email":"balogh.karel@gmail.com"}],"bin":{"addybook-mcp":"dist/index.js"},"dist":{"shasum":"6a31a174b02cd39cb22beb473db2935897f50390","tarball":"https://registry.npmjs.org/@addybook/mcp-server/-/mcp-server-0.1.0.tgz","fileCount":4,"integrity":"sha512-04WhjXIcGSn3jRBxOJy8fR46jXEW9hGOfjAn+70YEHRKjplVNO1TmH+PfgbB3MS4uxJ48PgxgQNQmhKYktPMsA==","signatures":[{"sig":"MEQCIFKv54HubLBVliW4ryRtgrI6JLgKef5WMiU4ru7w1Dp8AiA5fdC2k8g+odxVKW10Fp31tB80PH4qLz1k8Zz1lXxe5w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7274},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"858dba5ee14318e69e02597ff5002dac7d5badb2","scripts":{"build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"karelxfi","email":"balogh.karel@gmail.com"},"_npmVersion":"11.11.0","description":"MCP server for the Addybook DeFi contracts registry","directories":{},"_nodeVersion":"25.8.1","dependencies":{"@addybook/sdk":"*","@modelcontextprotocol/sdk":"^1.12.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@types/node":"^25.5.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server_0.1.0_1773920451287_0.3241821733329677","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@addybook/mcp-server","version":"0.1.1","keywords":["mcp","defi","blockchain","contracts","registry","x402"],"license":"MIT","_id":"@addybook/mcp-server@0.1.1","maintainers":[{"name":"karelxfi","email":"balogh.karel@gmail.com"}],"bin":{"addybook-mcp":"dist/index.js"},"dist":{"shasum":"537c78eabb17c1548de4f665fafc08588771a95b","tarball":"https://registry.npmjs.org/@addybook/mcp-server/-/mcp-server-0.1.1.tgz","fileCount":4,"integrity":"sha512-txURRuZsYLILkPzEIAjs1c7STJcz9cu9K9NqKixIU5IJ3ixEgUl+4TRcyc2xb6GCqdNOTCv9ahV+ataxoyeG3g==","signatures":[{"sig":"MEYCIQDeRCTYr54zl7ijw+tzeqMES5UHIAqTKaWonnVQcjNM8AIhAIX97XbS/FmG5vCI4wjcIciHqGeo/OfzFKgm24SnweaY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7272},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"858dba5ee14318e69e02597ff5002dac7d5badb2","scripts":{"build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"karelxfi","email":"balogh.karel@gmail.com"},"_npmVersion":"11.11.0","description":"MCP server for the Addybook DeFi contracts registry","directories":{},"_nodeVersion":"25.8.1","dependencies":{"@addybook/sdk":"*","@modelcontextprotocol/sdk":"^1.12.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@types/node":"^25.5.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server_0.1.1_1773920483506_0.7114367287431957","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@addybook/mcp-server","version":"0.2.0","keywords":["mcp","defi","blockchain","contracts","registry","provenance"],"license":"MIT","_id":"@addybook/mcp-server@0.2.0","maintainers":[{"name":"karelxfi","email":"balogh.karel@gmail.com"}],"bin":{"addybook-mcp":"dist/index.js"},"dist":{"shasum":"a7482ff432c1c0b4db540fc153bc44caef3e4125","tarball":"https://registry.npmjs.org/@addybook/mcp-server/-/mcp-server-0.2.0.tgz","fileCount":10,"integrity":"sha512-nA/pZW6ygqy/GFnSbZ0jlw51Qkr5QKQXzBJBN/qNtAUOrVKy8iZKDm3F4k+ub+SO26BMaz6oV1tdYMMsEid7ig==","signatures":[{"sig":"MEYCIQCNIWuwJzEChukGFP4hVlyc5MiN0AWwCrmBnYUvZUi6fQIhANQr09kZpMYDtj3BvIuyPHIEUBt+BfoLCKXay4I/Gb/V","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":35268},"main":"./dist/index.js","type":"module","_from":"file:.build/releases/addybook-mcp-server-0.2.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=22.0.0"},"scripts":{"build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"karelxfi","email":"balogh.karel@gmail.com"},"_resolved":"/Users/kb/Documents/Codex/addybook/app/.build/releases/addybook-mcp-server-0.2.0.tgz","_integrity":"sha512-nA/pZW6ygqy/GFnSbZ0jlw51Qkr5QKQXzBJBN/qNtAUOrVKy8iZKDm3F4k+ub+SO26BMaz6oV1tdYMMsEid7ig==","_npmVersion":"11.13.0","description":"MCP server for the Addybook DeFi contracts registry","directories":{},"_nodeVersion":"24.16.0","dependencies":{"zod":"^4.3.6","@addybook/sdk":"^0.2.0","@modelcontextprotocol/sdk":"^1.12.0","@modelcontextprotocol/server":"2.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@types/node":"^25.5.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server_0.2.0_1789111632825_0.8865891306372788","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@addybook/mcp-server","version":"0.2.2","description":"MCP server for the Addybook DeFi contracts registry","type":"module","main":"./dist/index.js","bin":{"addybook-mcp":"dist/index.js"},"scripts":{"build":"tsc","clean":"rm -rf dist"},"keywords":["mcp","defi","blockchain","contracts","registry","provenance"],"license":"MIT","engines":{"node":">=22.0.0"},"dependencies":{"@addybook/sdk":"^0.2.2","@modelcontextprotocol/sdk":"^1.12.0","@modelcontextprotocol/server":"2.0.0","zod":"^4.3.6"},"devDependencies":{"@types/node":"^25.5.0","typescript":"^5.8.0"},"_id":"@addybook/mcp-server@0.2.2","types":"./dist/index.d.ts","_integrity":"sha512-cWjgBuUQMbzYAqKI5CTadZt/ovPl6gcOtBLAKiBAxMGVVDlV1F0E0sIXe45LXM3AGPieH47Vz7eBQ5LMyipH9A==","_resolved":"/Users/kb/Documents/Codex/addybook/indexing-api/.build/mcp022-aligned-release/addybook-mcp-server-0.2.2.tgz","_from":"file:.build/mcp022-aligned-release/addybook-mcp-server-0.2.2.tgz","_nodeVersion":"22.23.1","_npmVersion":"10.9.8","dist":{"integrity":"sha512-cWjgBuUQMbzYAqKI5CTadZt/ovPl6gcOtBLAKiBAxMGVVDlV1F0E0sIXe45LXM3AGPieH47Vz7eBQ5LMyipH9A==","shasum":"6a3bcac5e8c05b855b9e665051559680995d4a69","tarball":"https://registry.npmjs.org/@addybook/mcp-server/-/mcp-server-0.2.2.tgz","fileCount":12,"unpackedSize":53448,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIH8Yo8BENDoAn3qBruUs+mX+teEQAjSF9Ab5NxwAKWMyAiAUsqu2NJNiAj8yBC1UTY8vRK+E0MeCSF9IFvOA2ES91A=="}]},"_npmUser":{"name":"karelxfi","email":"balogh.karel@gmail.com"},"directories":{},"maintainers":[{"name":"karelxfi","email":"balogh.karel@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/mcp-server_0.2.2_1789219018228_0.9908985713400609"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-19T11:40:51.128Z","modified":"2026-09-12T13:16:58.570Z","0.1.0":"2026-03-19T11:40:51.441Z","0.1.1":"2026-03-19T11:41:23.643Z","0.2.0":"2026-09-11T07:27:12.962Z","0.2.2":"2026-09-12T13:16:58.376Z"},"license":"MIT","keywords":["mcp","defi","blockchain","contracts","registry","provenance"],"description":"MCP server for the Addybook DeFi contracts registry","maintainers":[{"name":"karelxfi","email":"balogh.karel@gmail.com"}],"readme":"# `@addybook/mcp-server`\n\nMCP server for Addybook's public contract-evidence catalog and controlled full registry.\n\nRequires Node.js 22 or newer. Version 0.2.2 requires `@addybook/sdk` 0.3.x;\npublish the SDK before publishing this package.\n\n```json\n{\n  \"mcpServers\": {\n    \"addybook\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@addybook/mcp-server\"],\n      \"env\": {\n        \"ADDYBOOK_ACCESS_KEY\": \"${ADDYBOOK_ACCESS_KEY}\"\n      }\n    }\n  }\n}\n```\n\nPublic tools:\n\n- `search_protocols`\n- `get_protocol` (addresses omitted; pass `summary: true` or `chains: [...]` to keep large multi-chain records out of context)\n- `list_chains` (supports `query` and `platform` filters)\n- `get_quality_report`\n- `get_verified_contracts` (addresses omitted)\n\nTools requiring `ADDYBOOK_ACCESS_KEY`:\n\n- `get_capabilities`\n- `list_stablecoins`\n- `get_stablecoin_indexing`\n\n- `get_private_protocol`\n- `get_protocol_knowledge_graph`\n- `get_private_protocol_knowledge_graph` (compatibility alias)\n- `select_factory_child_candidates` (explicitly unverified discovery/review data)\n- `select_protocol_candidates` (all source-bound claims for one protocol,\n  explicitly unverified)\n- `select_verified_factory_children`\n- `get_indexing_bootstrap`\n- `get_contract_intelligence`\n- `resolve_address`\n- `get_registry_changes`\n\nThe server needs network access to `https://addybook.xyz`. Request controlled access at [addybook.xyz/access](https://addybook.xyz/access). Agents should treat `evidence-verified`, `legacy-source-reference`, `observed`, `unverified`, `conflict`, and `quarantined` as distinct quality levels.\n\nProtocol graphs inline ordinary factory inventories. When\n`factoryChildExpansion.childrenOmitted` is true, use\n`select_verified_factory_children` with the returned protocol, chain, and role\nguidance; the selector remains exact and paginated.\n\nUse `select_factory_child_candidates` when coverage matters more than verified\nidentity. Every returned row remains candidate-only; do not use it as a\ntransaction allowlist or completeness claim.\n\nUse `select_protocol_candidates` to inspect every collected claim attributed to\none protocol, including exact source context and deterministic review priority.\nThese rows remain candidate-only even when the source is official.\n\n## Context and reliability\n\nThe local transport uses MCP SDK v2 with legacy-client compatibility. Tools are\nannotated read-only; requests have a 15-second network deadline. Errors are\nsanitized and give recovery guidance. Vault pages shrink to fit the 48 KB context ceiling while keeping complete records and a snapshot-pinned `nextCall`; `pageSizeAdjusted` identifies this adjustment. A single oversized record still returns an explicit error.\n\n`get_protocol` defaults to a compact overview with up to 20 role descriptions;\n`chains` (or singular `chain`) selects deployment context. With `summary:false`, detailed role/deployment records are paginated using `cursor`, `limit` (default 5), and `nextCall`. The response explicitly lists omitted aggregate sections; it is a role projection, not the full protocol JSON. `list_chains` defaults to 10 entries and\naccepts `limit` up to 20. `get_verified_contracts` now returns a bounded `records`\npage with `hasMore` and `nextCursor`; use protocol/chain filters and opt into legacy\nreferences explicitly. These bounded defaults intentionally replace bulk results.\n\n`inspect_deployment` follows a deployment sample using its exact protocol, chain,\ncontract role and snapshot, returning up to five evidence records. It requires\naccount access, as does `sample_deployments`. Advanced private selectors require\nentitlements that a normal account key may not provide; a 403 is not retryable.\n\nFor Claude's hosted OAuth connection, use `https://addybook.xyz/mcp`. Its tool\ncatalog is documented in `docs/operations/mcp-experience.md`. The npm registry\nrelease may lag the repository: do not assume an older installed package contains\nthese improvements until its release is published.\n\nSet `ADDYBOOK_TOOLSETS` to a comma-separated selection of `discovery`, `research`,\n`candidates`, `indexing`, or `compatibility`; `all` enables every group. Without a\nkey the default is the five public discovery tools. With a configured key the\ndefault remains all tools for compatibility. Selecting tools never grants access;\nthe server still enforces credentials and entitlements on every private read.\n\nThe `indexing` preset includes protocol/chain discovery and `select_verified_factory_children`.\n\nAccount factory-child discovery requires protocol and chain, defaults to three records (maximum ten), and returns a snapshot-pinned `nextCall` for continuation. Stablecoin discovery is a bounded Ethereum bootstrap; standard event recipes do not certify proxy history or complete ABI coverage.\n\n### Recovery and snapshot scope in 0.2.2\n\nUse each selector's own `nextCall`. Capabilities labels its legacy top-level\n`snapshotId` as `stablecoin-sample`; never pass that snapshot to vault selection.\nA `snapshot_changed` error returns a restart call. Discard earlier pages before\nfollowing it. Missing snapshots and state constraints have specific recovery\nmessages. `includeState:true` requires Ethereum and at most three records.\n`asset` and `curator` require exact addresses; use `list_stablecoins` to discover\nthe bounded Ethereum token sample, preserving its source-reported quality.\n\nKnowledge-graph access requires a registry-client credential with protocol\nscope. Account keys should use public `get_protocol` context and the vault\nselector. Capabilities reports this distinction and fallback tools. Initialization\nreports the package version, including when installed from a tarball.\n","readmeFilename":"README.md"}