{"_id":"@bolyra/mcp","_rev":"8-a738d791330a38775d406518efe8fef0","name":"@bolyra/mcp","dist-tags":{"latest":"0.6.5"},"versions":{"0.3.0":{"name":"@bolyra/mcp","version":"0.3.0","keywords":["mcp","model-context-protocol","bolyra","zkp","agent-authentication","zero-knowledge","anthropic","claude"],"license":"Apache-2.0","_id":"@bolyra/mcp@0.3.0","maintainers":[{"name":"saneguy","email":"kondojuviswanadha@gmail.com"}],"homepage":"https://github.com/bolyra/bolyra#readme","bugs":{"url":"https://github.com/bolyra/bolyra/issues"},"dist":{"shasum":"41f72c7e11a353e5ec00f521adae7750be7f704e","tarball":"https://registry.npmjs.org/@bolyra/mcp/-/mcp-0.3.0.tgz","fileCount":22,"integrity":"sha512-6Xq0K7FFtAOaz48Wz/AM2y3X9abKqx/94vD2vocgTI/7Tr3jaGtYOmMVXd5uROBGGzQAjFMS7hdmozdKp6nxkA==","signatures":[{"sig":"MEQCIHImDh4oUlQzoVQQBexKWsAzGIdRJiSXoytjnrrvpm51AiBqMNGvIFxST+MnxRsA/qoEIYud+/LmJwAdP+TcnsO2Zw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":100256},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"cee2ff1b91fbec85cf4ace655a2565de57a11bcd","scripts":{"test":"jest --passWithNoTests","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"saneguy","email":"kondojuviswanadha@gmail.com"},"repository":{"url":"git+https://github.com/bolyra/bolyra.git","type":"git"},"_npmVersion":"11.6.2","description":"Bolyra ZKP authentication middleware for Model Context Protocol (MCP) servers — adds mutual zero-knowledge proof of human-delegated agent identity to any MCP server, over stdio or HTTP.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@bolyra/sdk":"^0.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.2.0","typescript":"^5.5.0","@types/jest":"^29.5.0","@types/node":"^22.0.0","@modelcontextprotocol/sdk":"^1.0.0"},"peerDependencies":{"@bolyra/sdk":">=0.3.0","@modelcontextprotocol/sdk":">=1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.3.0_1780147687487_0.9450923611192967","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@bolyra/mcp","version":"0.4.0","keywords":["mcp","model-context-protocol","bolyra","zkp","agent-authentication","zero-knowledge","anthropic","claude"],"license":"Apache-2.0","_id":"@bolyra/mcp@0.4.0","maintainers":[{"name":"saneguy","email":"kondojuviswanadha@gmail.com"}],"homepage":"https://github.com/bolyra/bolyra#readme","bugs":{"url":"https://github.com/bolyra/bolyra/issues"},"dist":{"shasum":"389711374e7ad6c738bcd49fdc58e42878a31e64","tarball":"https://registry.npmjs.org/@bolyra/mcp/-/mcp-0.4.0.tgz","fileCount":22,"integrity":"sha512-koNjAZqcPqriPeT9owwWCIGg+N8E3XoRqG2dGHB1zqL7kW9ZdNxDwW01f4KRcgQED6iYrYM/n6OKmZ0cdiVRng==","signatures":[{"sig":"MEUCIDGNi5NlumTT+zvvWiUzXURBGij3Sji0+2b7I4JmrTT/AiEAwYJlzCHLC+HgxclsEun0wgTrMy2GqB5dM2AyuMusOSw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bolyra%2fmcp@0.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":112908},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"a8de67477a705acb5aaac8dedac96de45ec88d35","scripts":{"test":"jest --passWithNoTests","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de81a9f3-dc15-41db-8abb-63896bea22f6"}},"overrides":{"qs":"6.15.2","ws":"8.21.0","tmp":"0.2.7","hono":"4.12.23","fast-uri":"3.1.2","ip-address":"10.2.0","underscore":"1.13.8","circom_tester":{"snarkjs":"0.7.6"}},"repository":{"url":"git+https://github.com/bolyra/bolyra.git","type":"git"},"_npmVersion":"11.16.0","description":"Bolyra ZKP authentication middleware for Model Context Protocol (MCP) servers — adds mutual zero-knowledge proof of human-delegated agent identity to any MCP server, over stdio or HTTP.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"@bolyra/sdk":"^0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","ts-jest":"^29.2.0","typescript":"^5.5.0","@types/jest":"^30.0.0","@types/node":"^25.9.1","@modelcontextprotocol/sdk":"^1.0.0"},"peerDependencies":{"@bolyra/sdk":">=0.4.0","@modelcontextprotocol/sdk":">=1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.4.0_1781149785500_0.5988044218558943","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@bolyra/mcp","version":"0.6.0","keywords":["mcp","model-context-protocol","bolyra","zkp","agent-authentication","zero-knowledge","anthropic","claude"],"license":"Apache-2.0","_id":"@bolyra/mcp@0.6.0","maintainers":[{"name":"saneguy","email":"kondojuviswanadha@gmail.com"}],"homepage":"https://github.com/bolyra/bolyra#readme","bugs":{"url":"https://github.com/bolyra/bolyra/issues"},"dist":{"shasum":"51c8f8945cd4c15693f757dab02c6096538794fc","tarball":"https://registry.npmjs.org/@bolyra/mcp/-/mcp-0.6.0.tgz","fileCount":25,"integrity":"sha512-C+IZkjodgcHBM/npTApoTY2qSoTVrZhlZgGE0+TgcN5JPBQ5IEGTzyjmH7QSHYIv9qlKMcCN6dqe8aZbefscTQ==","signatures":[{"sig":"MEYCIQCbFTpQ/MswfmK2vyg4dAEpWq1JnUCDDY535VQkVkrizwIhAIIRCDHmrt+mOxboyxEhQBzNHeX9DTqn/cWEVhmfg2wE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bolyra%2fmcp@0.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":136122},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"dd468e8423c5e829b6dce055745b15a776530e2c","scripts":{"test":"jest --passWithNoTests","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de81a9f3-dc15-41db-8abb-63896bea22f6"}},"overrides":{"qs":"6.15.2","ws":"8.21.0","tmp":"0.2.7","hono":"4.12.23","fast-uri":"3.1.2","ip-address":"10.2.0","underscore":"1.13.8","circom_tester":{"snarkjs":"0.7.6"}},"repository":{"url":"git+https://github.com/bolyra/bolyra.git","type":"git"},"_npmVersion":"11.17.0","description":"Bolyra ZKP authentication middleware for Model Context Protocol (MCP) servers — adds mutual zero-knowledge proof of human-delegated agent identity to any MCP server, over stdio or HTTP.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"@bolyra/sdk":"^0.4.0","@bolyra/receipts":"^0.6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","ts-jest":"^29.2.0","typescript":"^5.5.0","@types/jest":"^30.0.0","@types/node":"^25.9.1","@modelcontextprotocol/sdk":"^1.0.0"},"peerDependencies":{"@bolyra/sdk":">=0.4.0","@modelcontextprotocol/sdk":">=1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.6.0_1781362467188_0.37091271998551556","host":"s3://npm-registry-packages-npm-production"}},"0.6.1":{"name":"@bolyra/mcp","version":"0.6.1","keywords":["mcp","model-context-protocol","bolyra","zkp","agent-authentication","zero-knowledge","anthropic","claude"],"license":"Apache-2.0","_id":"@bolyra/mcp@0.6.1","maintainers":[{"name":"saneguy","email":"kondojuviswanadha@gmail.com"}],"homepage":"https://github.com/bolyra/bolyra#readme","bugs":{"url":"https://github.com/bolyra/bolyra/issues"},"dist":{"shasum":"3dc5789512a6dbb241e0ab1b80934811947b759a","tarball":"https://registry.npmjs.org/@bolyra/mcp/-/mcp-0.6.1.tgz","fileCount":25,"integrity":"sha512-zrABBH74xbk9R6et+LeZ1V6wD7pfUHD5w80iiEHEvuS1pIqGMF7OIeBZ4dc12hQR8gqNJsCST/tc+l9G96wLSQ==","signatures":[{"sig":"MEYCIQDZIU609XZbAyFGL+R1ag8YlCHx3aW65HblJWiHwxTGmwIhANJQyUtXUrHR4lgKUuaW+OYvl1E04uQdlWE7nAvn2oXU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bolyra%2fmcp@0.6.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":140497},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"c19a0694732d9af318520f8d2a2317a6977dad1d","scripts":{"test":"jest --passWithNoTests","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de81a9f3-dc15-41db-8abb-63896bea22f6"}},"overrides":{"qs":"6.15.2","ws":"8.21.0","tmp":"0.2.7","hono":"4.12.23","fast-uri":"3.1.2","ip-address":"10.2.0","underscore":"1.13.8","circom_tester":{"snarkjs":"0.7.6"}},"repository":{"url":"git+https://github.com/bolyra/bolyra.git","type":"git"},"_npmVersion":"11.17.0","description":"Gate MCP tool calls so only authorized agents can call sensitive tools — Bolyra ZKP authentication middleware for Model Context Protocol servers, over stdio or HTTP.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"@bolyra/sdk":"^0.4.0","@bolyra/receipts":"^0.6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","ts-jest":"^29.2.0","typescript":"^5.5.0","@types/jest":"^30.0.0","@types/node":"^25.9.1","@modelcontextprotocol/sdk":"^1.0.0"},"peerDependencies":{"@bolyra/sdk":">=0.4.0","@modelcontextprotocol/sdk":">=1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.6.1_1781408807146_0.14991898461278463","host":"s3://npm-registry-packages-npm-production"}},"0.6.2":{"name":"@bolyra/mcp","version":"0.6.2","keywords":["mcp","model-context-protocol","bolyra","zkp","agent-authentication","zero-knowledge","anthropic","claude"],"license":"Apache-2.0","_id":"@bolyra/mcp@0.6.2","maintainers":[{"name":"saneguy","email":"kondojuviswanadha@gmail.com"}],"homepage":"https://github.com/bolyra/bolyra#readme","bugs":{"url":"https://github.com/bolyra/bolyra/issues"},"dist":{"shasum":"68da7bf0ea49ca84829573e40759693ced24dd01","tarball":"https://registry.npmjs.org/@bolyra/mcp/-/mcp-0.6.2.tgz","fileCount":25,"integrity":"sha512-jbYVNhzKUiDnBWnHsxELSJ84Oij/PlR1GULHBP4izYdPGhktdTs9TqtbqSDBTbwcFlnSYHwira+s3/z4vbTrlw==","signatures":[{"sig":"MEUCIQCxjF/wxUD/sYN750ln0bpGghR/XYgnXhSzc4WqiZ4ZwwIgFSMK/NrpxUCJeWfHPrWxQII02PE3hPjb+6zALMi6VCg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bolyra%2fmcp@0.6.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":141143},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"990942414a705e4b2312fe7d3da3840304fcb0ab","scripts":{"test":"jest --passWithNoTests","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de81a9f3-dc15-41db-8abb-63896bea22f6"}},"overrides":{"qs":"6.15.2","ws":"8.21.0","tmp":"0.2.7","hono":"4.12.23","fast-uri":"3.1.2","ip-address":"10.2.0","underscore":"1.13.8","circom_tester":{"snarkjs":"0.7.6"}},"repository":{"url":"git+https://github.com/bolyra/bolyra.git","type":"git"},"_npmVersion":"11.17.0","description":"Gate MCP tool calls so only authorized agents can call sensitive tools — Bolyra ZKP authentication middleware for Model Context Protocol servers, over stdio or HTTP.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"@bolyra/sdk":"^0.4.0","@bolyra/receipts":"^0.6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","ts-jest":"^29.2.0","typescript":"^5.5.0","@types/jest":"^30.0.0","@types/node":"^25.9.1","@modelcontextprotocol/sdk":"^1.0.0"},"peerDependencies":{"@bolyra/sdk":">=0.4.0","@modelcontextprotocol/sdk":">=1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.6.2_1781409337467_0.13589933889663142","host":"s3://npm-registry-packages-npm-production"}},"0.6.3":{"name":"@bolyra/mcp","version":"0.6.3","keywords":["mcp","model-context-protocol","bolyra","zkp","agent-authentication","zero-knowledge","anthropic","claude"],"license":"Apache-2.0","_id":"@bolyra/mcp@0.6.3","maintainers":[{"name":"saneguy","email":"kondojuviswanadha@gmail.com"}],"homepage":"https://github.com/bolyra/bolyra#readme","bugs":{"url":"https://github.com/bolyra/bolyra/issues"},"dist":{"shasum":"dbd6922f0b0de8c8017c3a5d3a2757515c22d3e9","tarball":"https://registry.npmjs.org/@bolyra/mcp/-/mcp-0.6.3.tgz","fileCount":25,"integrity":"sha512-amJ5E3qWqIO2MDm2ThNEOCNc0t7snaqrg6zgv6ahh2GLxcYeKMuK9Vux8T4VHwbHVAehfNxsUCGbT36hMw70OA==","signatures":[{"sig":"MEYCIQCZZTNHXDYmzVj+uxShcXTk7KosW1QZfZGFGow7aSJ25gIhAN/gyv5m/1uYotSIpxMfwbkvQjp8INFBuP6EEnM+MS4z","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bolyra%2fmcp@0.6.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":141143},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"115271ed4bc05517b5360db7796b8421e287d28c","scripts":{"test":"jest --passWithNoTests","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de81a9f3-dc15-41db-8abb-63896bea22f6"}},"overrides":{"qs":"6.15.2","ws":"8.21.0","tmp":"0.2.7","hono":"4.12.23","fast-uri":"3.1.2","ip-address":"10.2.0","underscore":"1.13.8","circom_tester":{"snarkjs":"0.7.6"}},"repository":{"url":"git+https://github.com/bolyra/bolyra.git","type":"git"},"_npmVersion":"11.17.0","description":"Gate MCP tool calls so only authorized agents can call sensitive tools — Bolyra ZKP authentication middleware for Model Context Protocol servers, over stdio or HTTP.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"@bolyra/sdk":"^0.5.0","@bolyra/receipts":"^0.6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","ts-jest":"^29.2.0","typescript":"^5.5.0","@types/jest":"^30.0.0","@types/node":"^25.9.1","@modelcontextprotocol/sdk":"^1.0.0"},"peerDependencies":{"@bolyra/sdk":">=0.4.0","@modelcontextprotocol/sdk":">=1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.6.3_1781409494007_0.4962958318166666","host":"s3://npm-registry-packages-npm-production"}},"0.6.4":{"name":"@bolyra/mcp","version":"0.6.4","keywords":["mcp","model-context-protocol","bolyra","zkp","agent-authentication","zero-knowledge","anthropic","claude"],"license":"Apache-2.0","_id":"@bolyra/mcp@0.6.4","maintainers":[{"name":"saneguy","email":"kondojuviswanadha@gmail.com"}],"homepage":"https://github.com/bolyra/bolyra#readme","bugs":{"url":"https://github.com/bolyra/bolyra/issues"},"dist":{"shasum":"7753c5b399cbf40d85c6c8b8e4b3a22dfb5f7a99","tarball":"https://registry.npmjs.org/@bolyra/mcp/-/mcp-0.6.4.tgz","fileCount":25,"integrity":"sha512-SXnh+Z2fXxqOT8SYQTOj45yhOz7LhpmVaiYfxpJ02NWSop8JFhUTOLRW97ZepNghWPviJsl/s96nqkiFj9zuMQ==","signatures":[{"sig":"MEUCIQDDw4FC1+7a6qNluNGGMfYQfCUwoXx5Py1+1blGFz58fQIgPfJT77X+PCdaKfnfDIAzB7zd1PbTa+55LRuxfBznA6Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bolyra%2fmcp@0.6.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":141180},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"03e68d23ab5ad527b604776c8c027dab6b58943d","mcpName":"io.github.bolyra/mcp","scripts":{"test":"jest --passWithNoTests","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de81a9f3-dc15-41db-8abb-63896bea22f6"}},"overrides":{"qs":"6.15.2","ws":"8.21.0","tmp":"0.2.7","hono":"4.12.23","fast-uri":"3.1.2","ip-address":"10.2.0","underscore":"1.13.8","circom_tester":{"snarkjs":"0.7.6"}},"repository":{"url":"git+https://github.com/bolyra/bolyra.git","type":"git"},"_npmVersion":"11.17.0","description":"Gate MCP tool calls so only authorized agents can call sensitive tools — Bolyra ZKP authentication middleware for Model Context Protocol servers, over stdio or HTTP.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"@bolyra/sdk":"^0.5.0","@bolyra/receipts":"^0.7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","ts-jest":"^29.2.0","typescript":"^5.5.0","@types/jest":"^30.0.0","@types/node":"^25.9.1","@modelcontextprotocol/sdk":"^1.0.0"},"peerDependencies":{"@bolyra/sdk":">=0.4.0","@modelcontextprotocol/sdk":">=1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.6.4_1782181751957_0.9958313564859702","host":"s3://npm-registry-packages-npm-production"}},"0.6.5":{"name":"@bolyra/mcp","version":"0.6.5","mcpName":"io.github.bolyra/mcp","description":"Gate MCP tool calls so only authorized agents can call sensitive tools — Bolyra ZKP authentication middleware for Model Context Protocol servers, over stdio or HTTP.","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","test":"jest --passWithNoTests","typecheck":"tsc --noEmit"},"dependencies":{"@bolyra/receipts":"^0.7.0","@bolyra/sdk":"^0.6.1"},"devDependencies":{"typescript":"^5.5.0","@types/node":"^26.0.0","jest":"^30.4.2","ts-jest":"^29.2.0","@types/jest":"^30.0.0","@modelcontextprotocol/sdk":"^1.0.0"},"peerDependencies":{"@bolyra/sdk":">=0.4.0","@modelcontextprotocol/sdk":">=1.0.0"},"overrides":{"tmp":"0.2.7","ws":"8.21.0","underscore":"1.13.8","qs":"6.15.2","ip-address":"10.2.0","hono":"4.12.29","fast-uri":"3.1.2","circom_tester":{"snarkjs":"0.7.6"}},"repository":{"type":"git","url":"git+https://github.com/bolyra/bolyra.git"},"publishConfig":{"access":"public"},"keywords":["mcp","model-context-protocol","bolyra","zkp","agent-authentication","zero-knowledge","anthropic","claude"],"license":"Apache-2.0","gitHead":"e54b5b8154c607d4e6a1f72cb5fd1502bc540250","_id":"@bolyra/mcp@0.6.5","bugs":{"url":"https://github.com/bolyra/bolyra/issues"},"homepage":"https://github.com/bolyra/bolyra#readme","_nodeVersion":"22.23.1","_npmVersion":"11.18.0","dist":{"integrity":"sha512-N+P1pOb1LzFMoV5hTL3HPIwNrvxquLmSuzPXVhxW2phV8THig8fXfIwZZKLXnAJje/lEWuQEHVMXMBK4F0pytw==","shasum":"c72de3d0e09e8c739d0753ab05faca211d1b797e","tarball":"https://registry.npmjs.org/@bolyra/mcp/-/mcp-0.6.5.tgz","fileCount":25,"unpackedSize":141180,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bolyra%2fmcp@0.6.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIHR0iLBKo5hc6hmwkCulVzcpjY583XsoEVVOcztbb3BMAiEAs+PsDgH4C+TD85xDjWjSIoU3xqUovRyvVTfm5B5hMNI="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de81a9f3-dc15-41db-8abb-63896bea22f6"}},"directories":{},"maintainers":[{"name":"saneguy","email":"kondojuviswanadha@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/mcp_0.6.5_1783964498877_0.37170307586515405"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-30T13:28:07.330Z","modified":"2026-07-13T17:41:39.348Z","0.3.0":"2026-05-30T13:28:07.660Z","0.4.0":"2026-06-11T03:49:45.712Z","0.6.0":"2026-06-13T14:54:27.333Z","0.6.1":"2026-06-14T03:46:47.305Z","0.6.2":"2026-06-14T03:55:37.678Z","0.6.3":"2026-06-14T03:58:14.143Z","0.6.4":"2026-06-23T02:29:12.180Z","0.6.5":"2026-07-13T17:41:39.055Z"},"bugs":{"url":"https://github.com/bolyra/bolyra/issues"},"license":"Apache-2.0","homepage":"https://github.com/bolyra/bolyra#readme","keywords":["mcp","model-context-protocol","bolyra","zkp","agent-authentication","zero-knowledge","anthropic","claude"],"repository":{"type":"git","url":"git+https://github.com/bolyra/bolyra.git"},"description":"Gate MCP tool calls so only authorized agents can call sensitive tools — Bolyra ZKP authentication middleware for Model Context Protocol servers, over stdio or HTTP.","maintainers":[{"name":"saneguy","email":"kondojuviswanadha@gmail.com"}],"readme":"# @bolyra/mcp\n\nGate MCP tool calls so only authorized agents can call sensitive tools.\n\n## Quick Start (60 seconds)\n\n```bash\nnpm install @bolyra/mcp @bolyra/sdk @modelcontextprotocol/sdk\n```\n\n```typescript\nimport { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';\nimport { withBolyraAuthStdio } from '@bolyra/mcp';\n\nconst server = new McpServer({ name: 'my-server', version: '1.0.0' });\n\nserver.tool('read_file', { path: { type: 'string' } }, async (args) => ({\n  content: [{ type: 'text', text: `Reading ${args.path}` }],\n}));\n\nwithBolyraAuthStdio(server.server, {\n  devMode: true,\n  toolPolicy: {\n    // 1n = READ_DATA, 2n = WRITE_DATA (BigInt — add 'n' suffix)\n    read_file: 1n,\n  },\n});\n```\n\nThat's it. Every `tools/call` now requires a valid Bolyra proof bundle.\n\n## Dev mode (full example)\n\nDev mode uses mock proofs — no circuit artifacts, no trusted setup, instant startup. Use it to build and test your server before wiring real ZKP verification.\n\n```ts\nimport { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';\nimport { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';\nimport { withBolyraAuthStdio } from '@bolyra/mcp';\n\n// Server\nconst server = new McpServer({ name: 'my-server', version: '1.0.0' });\n\nserver.tool('read_file', { path: { type: 'string' } }, async (args) => ({\n  content: [{ type: 'text', text: 'file contents...' }],\n}));\n\nwithBolyraAuthStdio(server.server, {\n  devMode: true,\n  toolPolicy: {\n    // 1n = READ_DATA, 2n = WRITE_DATA (BigInt — add 'n' suffix)\n    read_file: 1n,\n    write_file: 2n,\n  },\n});\n\nawait server.connect(new StdioServerTransport());\n```\n\nClient side:\n\n```ts\nimport { createDevIdentities, attachBolyraProof } from '@bolyra/sdk';\n\nconst { human, agent } = await createDevIdentities();\nconst auth = await attachBolyraProof(human, agent, { devMode: true });\n\n// stdio\nawait client.callTool({ name: 'read_file', arguments: { path: '/tmp/x' }, _meta: auth.meta });\n// HTTP\nawait fetch('/mcp', { headers: { ...auth.headers }, ... });\n```\n\n## How it works\n\nEvery `tools/call` request must carry a **proof bundle**: a pair of Groth16 proofs (one from the human's circuit, one from the agent's) bound to a shared session nonce.\n\nThe server side:\n\n1. Extracts the bundle from `params._meta.bolyra` (stdio) or the `Authorization: Bolyra <base64>` header (HTTP).\n2. Verifies the handshake — both proofs, nonce freshness, score floor.\n3. Checks the tool's permission policy against the agent's effective bitmask.\n4. Attaches a `BolyraAuthContext` to the request for downstream handlers.\n5. Rejects with an MCP error if any step fails.\n\nDiscovery calls (`initialize`, `tools/list`) pass through unauthenticated.\n\n**Delegation chains** (v=2 bundles) narrow scope from root credential to leaf agent across multiple hops. The effective bitmask seen by tool policies is always the leaf's — the most-restricted scope.\n\n## API reference\n\n### Server — stdio\n\n```ts\nwithBolyraAuthStdio(server: McpServer, config: BolyraMcpConfig): void\n```\n\nWraps an `McpServer` instance. Must be called before `server.connect(transport)`.\n\n### Server — HTTP\n\n```ts\nbolyraAuthMiddleware(config: BolyraMcpHttpConfig): express.RequestHandler\n```\n\nExpress middleware. Mount before your MCP HTTP handler. Rejects unauthenticated `tools/call` requests with HTTP 401.\n\n### Client helpers\n\n```ts\nattachBolyraProof(\n  human: HumanIdentity,\n  agent: AgentCredential,\n  options?: AttachProofOptions,\n): Promise<BolyraClientAuth>\n```\n\nRuns a handshake and returns `{ headers, meta, bundle }`. Pass `options.devMode = true` to skip real proving and emit a mock bundle.\n\n```ts\nattachDelegatedBolyraProof(\n  human: HumanIdentity,\n  rootCred: AgentCredential,\n  hops: DelegationHopSpec[],\n  options?: AttachProofOptions,\n): Promise<BolyraClientAuth>\n```\n\nLike `attachBolyraProof` but walks a delegation chain and returns a v=2 bundle.\n\n### Verification\n\n```ts\nverifyBundle(bundle: BolyraProofBundle, config: BolyraMcpConfig): Promise<BolyraAuthContext>\n```\n\nVerify a bundle directly — useful for custom transports or offline verification.\n\n```ts\ncheckToolPolicy(\n  toolName: string,\n  ctx: BolyraAuthContext,\n  policy: ToolPermissionPolicy,\n): { allowed: boolean; reason?: string }\n```\n\nCheck a `BolyraAuthContext` against a tool's required bitmask.\n\n### Dev identities (re-exported from SDK)\n\n```ts\ncreateDevIdentities(options?: DevIdentityOptions): Promise<DevIdentities>\n```\n\nReturns fixed-seed `{ human, agent, operatorKey }` — deterministic, no circuit artifacts required. Logs a warning on first call. Never use in production.\n\n## Production configuration\n\nSwap `devMode: true` for a real `resolveCredential` resolver and point the SDK at your circuit artifacts:\n\n```ts\nwithBolyraAuthStdio(server, {\n  resolveCredential: async (commitment) => myRegistry.get(commitment),\n  toolPolicy: {\n    // 1n = READ_DATA, 2n = WRITE_DATA (BigInt — add 'n' suffix)\n    read_file: 1n,\n    write_file: 2n,\n  },\n  sdkConfig: {\n    circuitDir: '/path/to/circuits/build',\n    rpcUrl: 'https://sepolia.base.org',\n    registryAddress: '0x2781dF8b6381462d881C833Fb703d68c661c9577',\n  },\n});\n```\n\nFull config interface:\n\n```ts\ninterface BolyraMcpConfig {\n  network?: string;          // DID network label (default: 'base-sepolia')\n  minScore?: number;         // Minimum score floor 0–100 (default: 70)\n  maxProofAge?: number;      // Nonce freshness window in seconds (default: 300)\n  toolPolicy?: ToolPermissionPolicy;\n  devMode?: boolean;         // Mock verification — dev/test only\n  resolveCredential?: (commitment: string) => Promise<AgentCredential | null>;\n  sdkConfig?: BolyraConfig;\n}\n```\n\nThe HTTP variant adds `authScheme?: string` (default `\"Bolyra\"`).\n\n## Transport guide\n\n| Transport | Bundle location | Notes |\n|---|---|---|\n| stdio (Claude Desktop, Cursor, Cline) | `params._meta.bolyra` | MCP spec defines no stdio auth surface; `_meta` is the only protocol-level field |\n| HTTP / SSE / Streamable-HTTP | `Authorization: Bolyra <base64-bundle>` | Custom auth scheme per RFC 7235; aligns with OAuth 2.1 resource-server pattern |\n\nBoth produce the same `BolyraAuthContext` on the server side. Tool handlers don't need to know which transport was used.\n\n## Example\n\nSee [`examples/protected-file-server/`](./examples/protected-file-server/) for a complete stdio server + client pair using dev mode. Run it with:\n\n```bash\ncd integrations/mcp\nnpm run example:protected-file-server\n```\n","readmeFilename":"README.md"}