{"_id":"@nyuchi/mzizi-mcp","_rev":"21-03ab532ef980a430ae57b18bd48e09a1","name":"@nyuchi/mzizi-mcp","dist-tags":{"latest":"0.11.2"},"versions":{"0.3.0":{"name":"@nyuchi/mzizi-mcp","version":"0.3.0","keywords":["mcp","model-context-protocol","mzizi","bundu","supabase","registry"],"license":"Apache-2.0","_id":"@nyuchi/mzizi-mcp@0.3.0","maintainers":[{"name":"bryanfawcett","email":"bryan@nyuchi.com"}],"homepage":"https://mzizi.dev","bugs":{"url":"https://github.com/nyuchi/mzizi-tools/issues"},"bin":{"mzizi-mcp":"dist/stdio.js"},"dist":{"shasum":"c32bdf46a8b4ec64b572c9e14ed26776693b1bc9","tarball":"https://registry.npmjs.org/@nyuchi/mzizi-mcp/-/mzizi-mcp-0.3.0.tgz","fileCount":38,"integrity":"sha512-pkd5zOR89iIde3afZyd/lQz5gqnY2kTlVOOuoOAX5wBSsNHHuukt+KK6PjbcJRg0PI31KB3BJWH7EzwHiOsMWg==","signatures":[{"sig":"MEQCIETbqJ+rC2Bzaf7wFEa68VquUoeEy8k+iLioJ1icmXp5AiAruOEr3lsHEy4E4HhQ4D1fs7UluVZ183by3mlqetFlZA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":105769},"type":"module","_from":"file:nyuchi-mzizi-mcp-0.3.0.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/server.d.ts","import":"./dist/server.js"},"./http":{"types":"./dist/http.d.ts","import":"./dist/http.js"},"./stdio":"./dist/stdio.js"},"mcpName":"io.github.nyuchi/mzizi-mcp","scripts":{"build":"tsc -p tsconfig.json","cf:dev":"wrangler dev","wrangler":"wrangler","cf:deploy":"wrangler deploy","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"bryanfawcett","email":"bryan@nyuchi.com"},"_resolved":"/tmp/69f4573cc6657d266fd8ada2e8eb58c9/nyuchi-mzizi-mcp-0.3.0.tgz","_integrity":"sha512-pkd5zOR89iIde3afZyd/lQz5gqnY2kTlVOOuoOAX5wBSsNHHuukt+KK6PjbcJRg0PI31KB3BJWH7EzwHiOsMWg==","repository":{"url":"git+https://github.com/nyuchi/mzizi-tools.git","type":"git","directory":"mzizi-mcp"},"_npmVersion":"10.9.8","description":"Mzizi MCP — Model Context Protocol server for the Mzizi component registry. Reads the document-route store, one component per JSON document.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.3.6","hono":"^4.12.19","jose":"^6.2.3","@supabase/server":"^1.1.0","@workos-inc/node":"^9.3.0","@supabase/supabase-js":"^2.104.0","@modelcontextprotocol/sdk":"^1.29.0","@cloudflare/workers-oauth-provider":"^0.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"wrangler":"^4.45.0","typescript":"^6.0.3","@types/node":"^25.6.0","@cloudflare/workers-types":"^4.20251020.0"},"_npmOperationalInternal":{"tmp":"tmp/mzizi-mcp_0.3.0_1781398513962_0.8363653291954876","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@nyuchi/mzizi-mcp","version":"0.4.0","keywords":["mcp","model-context-protocol","mzizi","bundu","supabase","registry"],"license":"Apache-2.0","_id":"@nyuchi/mzizi-mcp@0.4.0","maintainers":[{"name":"bryanfawcett","email":"bryan@nyuchi.com"}],"homepage":"https://mzizi.dev","bugs":{"url":"https://github.com/nyuchi/mzizi-tools/issues"},"bin":{"mzizi-mcp":"dist/stdio.js"},"dist":{"shasum":"c55cc49c950db3086bf43674da1fbf410e1ee223","tarball":"https://registry.npmjs.org/@nyuchi/mzizi-mcp/-/mzizi-mcp-0.4.0.tgz","fileCount":42,"integrity":"sha512-3ojEFZmsJa3ASjlb5/MQV3MIuKhmZI47Z262neQ4RvTyDMP8A9fOd2JBB7WxsVq3GE/NIduA/DOqNeeqHITxzw==","signatures":[{"sig":"MEQCIHXOaSzSph50aUthy0jdfXnz90fwK1jGFLDgo/9ssja3AiBJQsG7BoI9hL1yTr48H2Rs8Xs1mvQGTMkR7DB/+0o2Bw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124118},"type":"module","_from":"file:nyuchi-mzizi-mcp-0.4.0.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/server.d.ts","import":"./dist/server.js"},"./http":{"types":"./dist/http.d.ts","import":"./dist/http.js"},"./stdio":"./dist/stdio.js"},"mcpName":"io.github.nyuchi/mzizi-mcp","scripts":{"build":"tsc -p tsconfig.json","cf:dev":"wrangler dev","wrangler":"wrangler","cf:deploy":"wrangler deploy","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"bryanfawcett","email":"bryan@nyuchi.com"},"_resolved":"/tmp/5506a6c2a715218f2b4f15af1bd4ade5/nyuchi-mzizi-mcp-0.4.0.tgz","_integrity":"sha512-3ojEFZmsJa3ASjlb5/MQV3MIuKhmZI47Z262neQ4RvTyDMP8A9fOd2JBB7WxsVq3GE/NIduA/DOqNeeqHITxzw==","repository":{"url":"git+https://github.com/nyuchi/mzizi-tools.git","type":"git","directory":"mzizi-mcp"},"_npmVersion":"10.9.8","description":"Mzizi MCP — Model Context Protocol server for the Mzizi component registry. Reads the document-route store, one component per JSON document.","directories":{},"_nodeVersion":"22.23.0","dependencies":{"zod":"^4.3.6","hono":"^4.12.25","jose":"^6.2.3","@supabase/server":"^1.1.0","@workos-inc/node":"^9.3.0","@supabase/supabase-js":"^2.104.0","@modelcontextprotocol/sdk":"^1.29.0","@cloudflare/workers-oauth-provider":"^0.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"wrangler":"^4.45.0","typescript":"^6.0.3","@types/node":"^25.6.0","@cloudflare/workers-types":"^4.20251020.0"},"_npmOperationalInternal":{"tmp":"tmp/mzizi-mcp_0.4.0_1782779012775_0.030059130633562026","host":"s3://npm-registry-packages-npm-production"}},"0.5.0-beta.1":{"name":"@nyuchi/mzizi-mcp","version":"0.5.0-beta.1","keywords":["mcp","model-context-protocol","mzizi","bundu","supabase","registry"],"license":"Apache-2.0","_id":"@nyuchi/mzizi-mcp@0.5.0-beta.1","maintainers":[{"name":"bryanfawcett","email":"bryan@nyuchi.com"}],"homepage":"https://mzizi.dev","bugs":{"url":"https://github.com/nyuchi/mzizi-tools/issues"},"bin":{"mzizi-mcp":"dist/stdio.js"},"dist":{"shasum":"7a1f1929d493c4a01752368da0c7b3c80cbb964a","tarball":"https://registry.npmjs.org/@nyuchi/mzizi-mcp/-/mzizi-mcp-0.5.0-beta.1.tgz","fileCount":42,"integrity":"sha512-FmXw02TLnHS/ZRj/h4m3O2A6goKmV6DoIygbsFhE/xiRuhciAumK1WKoCc9rI/Q/re8bGv62GqN9Y1hnrdVtug==","signatures":[{"sig":"MEQCIGKScPZWyAsPfl+r4rhZ8LYxh1mdViycHS+w0bExR96KAiBa1Ki19MSI8RzZ7POHH6z8XE47n2+F0YEmPquX+AglqQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":125667},"type":"module","_from":"file:nyuchi-mzizi-mcp-0.5.0-beta.1.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/server.d.ts","import":"./dist/server.js"},"./http":{"types":"./dist/http.d.ts","import":"./dist/http.js"},"./stdio":"./dist/stdio.js"},"mcpName":"io.github.nyuchi/mzizi-mcp","scripts":{"build":"tsc -p tsconfig.json","cf:dev":"wrangler dev","wrangler":"wrangler","cf:deploy":"wrangler deploy","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"bryanfawcett","email":"bryan@nyuchi.com"},"_resolved":"/tmp/9be3d834687d36fdc70e86982e1c89e8/nyuchi-mzizi-mcp-0.5.0-beta.1.tgz","_integrity":"sha512-FmXw02TLnHS/ZRj/h4m3O2A6goKmV6DoIygbsFhE/xiRuhciAumK1WKoCc9rI/Q/re8bGv62GqN9Y1hnrdVtug==","repository":{"url":"git+https://github.com/nyuchi/mzizi-tools.git","type":"git","directory":"mzizi-mcp"},"_npmVersion":"10.9.8","description":"Mzizi MCP — Model Context Protocol server for the Mzizi component registry. Reads the document-route store, one component per JSON document.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.3.6","hono":"^4.12.25","jose":"^6.2.3","@supabase/server":"^1.1.0","@workos-inc/node":"^9.3.0","@supabase/supabase-js":"^2.104.0","@modelcontextprotocol/sdk":"^1.29.0","@cloudflare/workers-oauth-provider":"^0.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"wrangler":"^4.45.0","typescript":"^6.0.3","@types/node":"^25.6.0","@cloudflare/workers-types":"^4.20251020.0"},"_npmOperationalInternal":{"tmp":"tmp/mzizi-mcp_0.5.0-beta.1_1783022226555_0.5880500007058918","host":"s3://npm-registry-packages-npm-production"}},"0.5.0-beta.2":{"name":"@nyuchi/mzizi-mcp","version":"0.5.0-beta.2","keywords":["mcp","model-context-protocol","mzizi","bundu","supabase","registry"],"license":"Apache-2.0","_id":"@nyuchi/mzizi-mcp@0.5.0-beta.2","maintainers":[{"name":"bryanfawcett","email":"bryan@nyuchi.com"}],"homepage":"https://mzizi.dev","bugs":{"url":"https://github.com/nyuchi/mzizi-tools/issues"},"bin":{"mzizi-mcp":"dist/stdio.js"},"dist":{"shasum":"ecaa2baa0966e2263a1db40f46012ec28583eb77","tarball":"https://registry.npmjs.org/@nyuchi/mzizi-mcp/-/mzizi-mcp-0.5.0-beta.2.tgz","fileCount":46,"integrity":"sha512-bFXinDQ7WuGx+ykQOG6VeRPlfwte/rR/3OycV2ztrqWGkM3o4yDpv+1MkuPZ1GGQoMz6bD7lIgZ1COEfCEXGLw==","signatures":[{"sig":"MEQCIBQlA+8gSs4L+vX94HIek2rLAcFGsd62rix+0OQGy1V7AiA89wpoPPDJkoRcosfwJhoP3I5Mp5wj4XccOllSUW/SjA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":131357},"type":"module","_from":"file:nyuchi-mzizi-mcp-0.5.0-beta.2.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/server.d.ts","import":"./dist/server.js"},"./http":{"types":"./dist/http.d.ts","import":"./dist/http.js"},"./stdio":"./dist/stdio.js"},"mcpName":"io.github.nyuchi/mzizi-mcp","scripts":{"build":"tsc -p tsconfig.json","cf:dev":"wrangler dev","wrangler":"wrangler","cf:deploy":"wrangler deploy","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"bryanfawcett","email":"bryan@nyuchi.com"},"_resolved":"/tmp/b202b7ec39c04ead0748fedfbd08ddec/nyuchi-mzizi-mcp-0.5.0-beta.2.tgz","_integrity":"sha512-bFXinDQ7WuGx+ykQOG6VeRPlfwte/rR/3OycV2ztrqWGkM3o4yDpv+1MkuPZ1GGQoMz6bD7lIgZ1COEfCEXGLw==","repository":{"url":"git+https://github.com/nyuchi/mzizi-tools.git","type":"git","directory":"mzizi-mcp"},"_npmVersion":"10.9.8","description":"Mzizi MCP — Model Context Protocol server for the Mzizi component registry. Reads the document-route store, one component per JSON document.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.3.6","hono":"^4.12.25","jose":"^6.2.3","@supabase/server":"^1.1.0","@workos-inc/node":"^9.3.0","@supabase/supabase-js":"^2.104.0","@modelcontextprotocol/sdk":"^1.29.0","@cloudflare/workers-oauth-provider":"^0.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"wrangler":"^4.45.0","typescript":"^6.0.3","@types/node":"^25.6.0","@cloudflare/workers-types":"^4.20251020.0"},"_npmOperationalInternal":{"tmp":"tmp/mzizi-mcp_0.5.0-beta.2_1783105227036_0.7945257439006654","host":"s3://npm-registry-packages-npm-production"}},"0.5.0-beta.3":{"name":"@nyuchi/mzizi-mcp","version":"0.5.0-beta.3","keywords":["mcp","model-context-protocol","mzizi","bundu","supabase","registry"],"license":"Apache-2.0","_id":"@nyuchi/mzizi-mcp@0.5.0-beta.3","maintainers":[{"name":"bryanfawcett","email":"bryan@nyuchi.com"}],"homepage":"https://mzizi.dev","bugs":{"url":"https://github.com/nyuchi/mzizi-tools/issues"},"bin":{"mzizi-mcp":"dist/stdio.js"},"dist":{"shasum":"3a80e0c38a4755040c18a8f9af373067e9b2f1e3","tarball":"https://registry.npmjs.org/@nyuchi/mzizi-mcp/-/mzizi-mcp-0.5.0-beta.3.tgz","fileCount":46,"integrity":"sha512-bdBluP1235EowG7e48y7w07mbXOlK9DUvuhBv/YXOVlrPVL2BiWanpTRErHiRecPDfmIHVrrYZR8LxgX6mTPsw==","signatures":[{"sig":"MEQCIFGs4kLZ1aqghI3WUBIuIWG9tNHmsaYCiAddamv6dMnHAiAZt5aYtu/ewCgPuTBnbepldEl9U+Ib6YSkTF4Mu1SXGA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":136162},"type":"module","_from":"file:nyuchi-mzizi-mcp-0.5.0-beta.3.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/server.d.ts","import":"./dist/server.js"},"./http":{"types":"./dist/http.d.ts","import":"./dist/http.js"},"./stdio":"./dist/stdio.js"},"mcpName":"io.github.nyuchi/mzizi-mcp","scripts":{"build":"tsc -p tsconfig.json","cf:dev":"wrangler dev","wrangler":"wrangler","cf:deploy":"wrangler deploy","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"bryanfawcett","email":"bryan@nyuchi.com"},"_resolved":"/tmp/a7e56946c6c92c9eb4fe335879bc8feb/nyuchi-mzizi-mcp-0.5.0-beta.3.tgz","_integrity":"sha512-bdBluP1235EowG7e48y7w07mbXOlK9DUvuhBv/YXOVlrPVL2BiWanpTRErHiRecPDfmIHVrrYZR8LxgX6mTPsw==","repository":{"url":"git+https://github.com/nyuchi/mzizi-tools.git","type":"git","directory":"mzizi-mcp"},"_npmVersion":"10.9.8","description":"Mzizi MCP — Model Context Protocol server for the Mzizi component registry. Reads the document-route store, one component per JSON document.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.3.6","hono":"^4.12.25","jose":"^6.2.3","@supabase/server":"^1.1.0","@workos-inc/node":"^9.3.0","@supabase/supabase-js":"^2.104.0","@modelcontextprotocol/sdk":"^1.29.0","@cloudflare/workers-oauth-provider":"^0.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"wrangler":"^4.45.0","typescript":"^6.0.3","@types/node":"^25.6.0","@cloudflare/workers-types":"^4.20251020.0"},"_npmOperationalInternal":{"tmp":"tmp/mzizi-mcp_0.5.0-beta.3_1784812808632_0.5757895631546863","host":"s3://npm-registry-packages-npm-production"}},"0.5.0-beta.4":{"name":"@nyuchi/mzizi-mcp","version":"0.5.0-beta.4","keywords":["mcp","model-context-protocol","mzizi","bundu","supabase","registry"],"license":"Apache-2.0","_id":"@nyuchi/mzizi-mcp@0.5.0-beta.4","maintainers":[{"name":"bryanfawcett","email":"bryan@nyuchi.com"}],"homepage":"https://mzizi.dev","bugs":{"url":"https://github.com/nyuchi/mzizi-tools/issues"},"bin":{"mzizi-mcp":"dist/stdio.js"},"dist":{"shasum":"d2fbb283da7db85047d69777975f1c07a8df79b2","tarball":"https://registry.npmjs.org/@nyuchi/mzizi-mcp/-/mzizi-mcp-0.5.0-beta.4.tgz","fileCount":46,"integrity":"sha512-uv6al7+EhxI79CZj1Go3RjltzdmzRrEDGwEWqK+3I2KLl6hwUNoueMatxEHs+I5IgQZvoJZYfMorEglVOKpXtw==","signatures":[{"sig":"MEYCIQDaiZIbhBqwb3GLBf3ucHgASKWfOMN2SwI607uqcZ4x5QIhAKuDx5esHapvLyQVg9Ji8B9zziRrxWAQs6bEvstJiSzO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":144831},"type":"module","_from":"file:nyuchi-mzizi-mcp-0.5.0-beta.4.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/server.d.ts","import":"./dist/server.js"},"./http":{"types":"./dist/http.d.ts","import":"./dist/http.js"},"./stdio":"./dist/stdio.js"},"mcpName":"io.github.nyuchi/mzizi-mcp","scripts":{"build":"tsc -p tsconfig.json","cf:dev":"wrangler dev","wrangler":"wrangler","cf:deploy":"wrangler deploy","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"bryanfawcett","email":"bryan@nyuchi.com"},"_resolved":"/tmp/e7db1e11f6447fa0a9f5c3538b7bac9c/nyuchi-mzizi-mcp-0.5.0-beta.4.tgz","_integrity":"sha512-uv6al7+EhxI79CZj1Go3RjltzdmzRrEDGwEWqK+3I2KLl6hwUNoueMatxEHs+I5IgQZvoJZYfMorEglVOKpXtw==","repository":{"url":"git+https://github.com/nyuchi/mzizi-tools.git","type":"git","directory":"mzizi-mcp"},"_npmVersion":"10.9.8","description":"Mzizi MCP — Model Context Protocol server for the Mzizi component registry. Reads the document-route store, one component per JSON document.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.3.6","hono":"^4.12.25","jose":"^6.2.3","@supabase/server":"^1.1.0","@workos-inc/node":"^9.3.0","@supabase/supabase-js":"^2.104.0","@modelcontextprotocol/sdk":"^1.29.0","@cloudflare/workers-oauth-provider":"^0.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"wrangler":"^4.45.0","typescript":"^6.0.3","@types/node":"^25.6.0","@cloudflare/workers-types":"^4.20251020.0"},"_npmOperationalInternal":{"tmp":"tmp/mzizi-mcp_0.5.0-beta.4_1784872814830_0.06153882667612631","host":"s3://npm-registry-packages-npm-production"}},"0.5.0-beta.5":{"name":"@nyuchi/mzizi-mcp","version":"0.5.0-beta.5","keywords":["mcp","model-context-protocol","mzizi","bundu","supabase","registry"],"license":"Apache-2.0","_id":"@nyuchi/mzizi-mcp@0.5.0-beta.5","maintainers":[{"name":"bryanfawcett","email":"bryan@nyuchi.com"}],"homepage":"https://mzizi.dev","bugs":{"url":"https://github.com/nyuchi/mzizi-tools/issues"},"bin":{"mzizi-mcp":"dist/stdio.js"},"dist":{"shasum":"6e8c08d7e9a033e019805c38f8471e0fbf4fb9bb","tarball":"https://registry.npmjs.org/@nyuchi/mzizi-mcp/-/mzizi-mcp-0.5.0-beta.5.tgz","fileCount":46,"integrity":"sha512-zXPLEz/rf25hLw7kqCag6OesAvaZ7HOf4MxdEgjgvApbB/+YkZkk4Bes4zYubvmmOFVraB9lO30iZvnZeslW5A==","signatures":[{"sig":"MEQCIB+yLRPAwsNAKk7S7Vk5RET2sKw6C+M1RxiPySzIT0DCAiA78LXwhaadaCEP8NvvGpmRO/dreYTMaEL7GU2jE2kUZw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":146614},"type":"module","_from":"file:nyuchi-mzizi-mcp-0.5.0-beta.5.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/server.d.ts","import":"./dist/server.js"},"./http":{"types":"./dist/http.d.ts","import":"./dist/http.js"},"./stdio":"./dist/stdio.js"},"mcpName":"io.github.nyuchi/mzizi-mcp","scripts":{"build":"tsc -p tsconfig.json","cf:dev":"wrangler dev","wrangler":"wrangler","cf:deploy":"wrangler deploy","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"bryanfawcett","email":"bryan@nyuchi.com"},"_resolved":"/tmp/02120fc961a9cba8327e3b22d958caca/nyuchi-mzizi-mcp-0.5.0-beta.5.tgz","_integrity":"sha512-zXPLEz/rf25hLw7kqCag6OesAvaZ7HOf4MxdEgjgvApbB/+YkZkk4Bes4zYubvmmOFVraB9lO30iZvnZeslW5A==","repository":{"url":"git+https://github.com/nyuchi/mzizi-tools.git","type":"git","directory":"mzizi-mcp"},"_npmVersion":"10.9.8","description":"Mzizi MCP — Model Context Protocol server for the Mzizi component registry. Reads the document-route store, one component per JSON document.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.3.6","hono":"^4.12.25","jose":"^6.2.3","@supabase/server":"^1.1.0","@workos-inc/node":"^9.3.0","@supabase/supabase-js":"^2.104.0","@modelcontextprotocol/sdk":"^1.29.0","@cloudflare/workers-oauth-provider":"^0.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"wrangler":"^4.45.0","typescript":"^6.0.3","@types/node":"^25.6.0","@cloudflare/workers-types":"^4.20251020.0"},"_npmOperationalInternal":{"tmp":"tmp/mzizi-mcp_0.5.0-beta.5_1785118680540_0.7741676982344747","host":"s3://npm-registry-packages-npm-production"}},"0.5.0-beta.6":{"name":"@nyuchi/mzizi-mcp","version":"0.5.0-beta.6","keywords":["mcp","model-context-protocol","mzizi","bundu","supabase","registry"],"license":"Apache-2.0","_id":"@nyuchi/mzizi-mcp@0.5.0-beta.6","maintainers":[{"name":"bryanfawcett","email":"bryan@nyuchi.com"}],"homepage":"https://mzizi.dev","bugs":{"url":"https://github.com/nyuchi/mzizi-tools/issues"},"bin":{"mzizi-mcp":"dist/stdio.js"},"dist":{"shasum":"19bf3a37748f7deb12a6396e5ffc773e4774f4b0","tarball":"https://registry.npmjs.org/@nyuchi/mzizi-mcp/-/mzizi-mcp-0.5.0-beta.6.tgz","fileCount":46,"integrity":"sha512-6mDGmQyLOOELZKIdFfJEoEJcCze6yr5MGRJ/QOAYMAh5dywN6Xp44WpGSY7UZdXFzfI7XAlOTpQzneWBqtMznQ==","signatures":[{"sig":"MEMCIAS6bUVUnDG76VEo43U0auRj2k3ZGdVPVHxvBTVc62meAh8d68rM7qHcDDXfaoNUB1/DWRSMp8Vg9121Nb95DKaw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":148114},"type":"module","_from":"file:nyuchi-mzizi-mcp-0.5.0-beta.6.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/server.d.ts","import":"./dist/server.js"},"./http":{"types":"./dist/http.d.ts","import":"./dist/http.js"},"./stdio":"./dist/stdio.js"},"mcpName":"io.github.nyuchi/mzizi-mcp","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json","cf:dev":"wrangler dev","inspect":"mcp-inspector --web node dist/stdio.js","wrangler":"wrangler","cf:deploy":"wrangler deploy","typecheck":"tsc -p tsconfig.json --noEmit && tsc -p tsconfig.test.json","test:watch":"vitest","inspect:cli":"mcp-inspector --cli node dist/stdio.js --method tools/list --format json","inspect:dev":"mcp-inspector --web --server-url http://localhost:8787/mcp --transport http","inspect:tui":"mcp-inspector --tui node dist/stdio.js","registry:check":"node scripts/inspect-tools.mjs --check","registry:smoke":"node scripts/inspect-tools.mjs --smoke","registry:manifest":"node scripts/inspect-tools.mjs"},"_npmUser":{"name":"bryanfawcett","email":"bryan@nyuchi.com"},"_resolved":"/tmp/f301405ed32b9802e6dc76595bdd9c57/nyuchi-mzizi-mcp-0.5.0-beta.6.tgz","_integrity":"sha512-6mDGmQyLOOELZKIdFfJEoEJcCze6yr5MGRJ/QOAYMAh5dywN6Xp44WpGSY7UZdXFzfI7XAlOTpQzneWBqtMznQ==","repository":{"url":"git+https://github.com/nyuchi/mzizi-tools.git","type":"git","directory":"mzizi-mcp"},"_npmVersion":"10.9.8","description":"Mzizi MCP — Model Context Protocol server for the Mzizi component registry. Reads the document-route store, one component per JSON document.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.4.3","hono":"^4.12.32","jose":"^6.2.4","@supabase/server":"^1.4.1","@workos-inc/node":"^9.3.1","@supabase/supabase-js":"^2.110.9","@modelcontextprotocol/sdk":"^1.30.0","@cloudflare/workers-oauth-provider":"^0.8.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.7","wrangler":"^4.114.0","typescript":"^6.0.3","@types/node":"^25.9.5","@cloudflare/workers-types":"^4.20260702.1","@modelcontextprotocol/inspector":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mzizi-mcp_0.5.0-beta.6_1785460244519_0.40629217263595097","host":"s3://npm-registry-packages-npm-production"}},"0.5.0-beta.7":{"name":"@nyuchi/mzizi-mcp","version":"0.5.0-beta.7","keywords":["mcp","model-context-protocol","mzizi","bundu","supabase","registry"],"license":"Apache-2.0","_id":"@nyuchi/mzizi-mcp@0.5.0-beta.7","maintainers":[{"name":"bryanfawcett","email":"bryan@nyuchi.com"}],"homepage":"https://mzizi.dev","bugs":{"url":"https://github.com/nyuchi/mzizi-tools/issues"},"bin":{"mzizi-mcp":"dist/stdio.js"},"dist":{"shasum":"414c0c836670633a04245fbce328d9dc8f1cb3ce","tarball":"https://registry.npmjs.org/@nyuchi/mzizi-mcp/-/mzizi-mcp-0.5.0-beta.7.tgz","fileCount":54,"integrity":"sha512-FOFMxHsbf3qFULo3W577GdtUAJhoVQCvBESmtJZTCnX2rLvzXo3j8duL67HcI1B5gtyfmXjOL4DBLlfa5XSRHw==","signatures":[{"sig":"MEYCIQDFHUIs93AxVvAfF/7VkWmZ2LtuVWrZ9G8Ep+2iyxxA0AIhAL0L18CcSritGWHdjuYXg6uxYB3p8dZyS12rFKm3SBbe","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":190601},"type":"module","_from":"file:nyuchi-mzizi-mcp-0.5.0-beta.7.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/server.d.ts","import":"./dist/server.js"},"./http":{"types":"./dist/http.d.ts","import":"./dist/http.js"},"./stdio":"./dist/stdio.js"},"mcpName":"io.github.nyuchi/mzizi-mcp","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json","cf:dev":"wrangler dev","inspect":"mcp-inspector --web node dist/stdio.js","wrangler":"wrangler","cf:deploy":"wrangler deploy","typecheck":"tsc -p tsconfig.json --noEmit && tsc -p tsconfig.test.json","test:watch":"vitest","inspect:cli":"mcp-inspector --cli node dist/stdio.js --method tools/list --format json","inspect:dev":"mcp-inspector --web --server-url http://localhost:8787/mcp --transport http","inspect:tui":"mcp-inspector --tui node dist/stdio.js","registry:check":"node scripts/inspect-tools.mjs --check","registry:smoke":"node scripts/inspect-tools.mjs --smoke","registry:manifest":"node scripts/inspect-tools.mjs"},"_npmUser":{"name":"bryanfawcett","email":"bryan@nyuchi.com"},"_resolved":"/tmp/f3de4494aa1aa6ad12c248fb056ab542/nyuchi-mzizi-mcp-0.5.0-beta.7.tgz","_integrity":"sha512-FOFMxHsbf3qFULo3W577GdtUAJhoVQCvBESmtJZTCnX2rLvzXo3j8duL67HcI1B5gtyfmXjOL4DBLlfa5XSRHw==","repository":{"url":"git+https://github.com/nyuchi/mzizi-tools.git","type":"git","directory":"mzizi-mcp"},"_npmVersion":"10.9.8","description":"Mzizi MCP — Model Context Protocol server for the Mzizi component registry. Reads the document-route store, one component per JSON document.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.4.3","hono":"^4.12.32","jose":"^6.2.4","@supabase/server":"^1.4.1","@workos-inc/node":"^9.3.1","@supabase/supabase-js":"^2.110.9","@modelcontextprotocol/sdk":"^1.30.0","@cloudflare/workers-oauth-provider":"^0.8.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.7","wrangler":"^4.114.0","typescript":"^6.0.3","@types/node":"^25.9.5","@cloudflare/workers-types":"^4.20260702.1","@modelcontextprotocol/inspector":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mzizi-mcp_0.5.0-beta.7_1785465324969_0.5111826421784693","host":"s3://npm-registry-packages-npm-production"}},"0.5.0-beta.8":{"name":"@nyuchi/mzizi-mcp","version":"0.5.0-beta.8","keywords":["mcp","model-context-protocol","mzizi","bundu","supabase","registry"],"license":"Apache-2.0","_id":"@nyuchi/mzizi-mcp@0.5.0-beta.8","maintainers":[{"name":"bryanfawcett","email":"bryan@nyuchi.com"}],"homepage":"https://mzizi.dev","bugs":{"url":"https://github.com/nyuchi/mzizi-tools/issues"},"bin":{"mzizi-mcp":"dist/stdio.js"},"dist":{"shasum":"0d8fcd0a1dc388581cf360e93eec248f0309536e","tarball":"https://registry.npmjs.org/@nyuchi/mzizi-mcp/-/mzizi-mcp-0.5.0-beta.8.tgz","fileCount":54,"integrity":"sha512-5GzAEsLOnSNqpFZ8zODum0l8VqHXtqF1WMw/W5nTVBn+/81qbIc5OyXQRJd4+QA8+Uc52l69rFAP+J9zP+LUOw==","signatures":[{"sig":"MEYCIQDXnnbC4lMEqEpf7+6WYkypLHIcUFRVRK6fVZZ3RTL5xAIhAOXcot46fiAmxdp29WBkqy5FcX+1qFAatW/BD6yUjsiY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":196835},"type":"module","_from":"file:nyuchi-mzizi-mcp-0.5.0-beta.8.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/server.d.ts","import":"./dist/server.js"},"./http":{"types":"./dist/http.d.ts","import":"./dist/http.js"},"./stdio":"./dist/stdio.js"},"mcpName":"io.github.nyuchi/mzizi-mcp","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json","cf:dev":"wrangler dev","inspect":"mcp-inspector --web node dist/stdio.js","wrangler":"wrangler","cf:deploy":"wrangler deploy","typecheck":"tsc -p tsconfig.json --noEmit && tsc -p tsconfig.test.json","test:watch":"vitest","inspect:cli":"mcp-inspector --cli node dist/stdio.js --method tools/list --format json","inspect:dev":"mcp-inspector --web --server-url http://localhost:8787/mcp --transport http","inspect:tui":"mcp-inspector --tui node dist/stdio.js","registry:check":"node scripts/inspect-tools.mjs --check","registry:smoke":"node scripts/inspect-tools.mjs --smoke","registry:manifest":"node scripts/inspect-tools.mjs"},"_npmUser":{"name":"bryanfawcett","email":"bryan@nyuchi.com"},"_resolved":"/tmp/20175254c58b7959c69b74aafb968e30/nyuchi-mzizi-mcp-0.5.0-beta.8.tgz","_integrity":"sha512-5GzAEsLOnSNqpFZ8zODum0l8VqHXtqF1WMw/W5nTVBn+/81qbIc5OyXQRJd4+QA8+Uc52l69rFAP+J9zP+LUOw==","repository":{"url":"git+https://github.com/nyuchi/mzizi-tools.git","type":"git","directory":"mzizi-mcp"},"_npmVersion":"10.9.8","description":"Mzizi MCP — Model Context Protocol server for the Mzizi component registry. Reads the document-route store, one component per JSON document.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.4.3","hono":"^4.12.32","jose":"^6.2.4","@supabase/server":"^1.4.1","@workos-inc/node":"^9.3.1","@supabase/supabase-js":"^2.110.9","@modelcontextprotocol/sdk":"^1.30.0","@cloudflare/workers-oauth-provider":"^0.8.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.7","wrangler":"^4.114.0","typescript":"^6.0.3","@types/node":"^25.9.5","@cloudflare/workers-types":"^4.20260702.1","@modelcontextprotocol/inspector":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mzizi-mcp_0.5.0-beta.8_1785498104528_0.6402904566774006","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@nyuchi/mzizi-mcp","version":"0.5.0","keywords":["mcp","model-context-protocol","mzizi","bundu","supabase","registry"],"license":"Apache-2.0","_id":"@nyuchi/mzizi-mcp@0.5.0","maintainers":[{"name":"bryanfawcett","email":"bryan@nyuchi.com"}],"homepage":"https://mzizi.dev","bugs":{"url":"https://github.com/nyuchi/mzizi-tools/issues"},"bin":{"mzizi-mcp":"dist/stdio.js"},"dist":{"shasum":"3ddb1e6da99d09a3c0fc71f088cd1acf28fb463b","tarball":"https://registry.npmjs.org/@nyuchi/mzizi-mcp/-/mzizi-mcp-0.5.0.tgz","fileCount":54,"integrity":"sha512-3Ol6Razjj8PB3j0kDOQcXgOudAXsMcqLa7t2EVsySv8+zr5787NgmbpaVAXQRXlRwWRNQj9XksNwROH+IPQj3w==","signatures":[{"sig":"MEUCIHPqiGXRY+QTo/OGgKQNS9GB1Nsm3k93trki3FyT5FLUAiEA2h62BBmwUHK8qpTYch1uxf4BHW5k0ezXKA0MmF4KPs8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":196812},"type":"module","_from":"file:nyuchi-mzizi-mcp-0.5.0.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/server.d.ts","import":"./dist/server.js"},"./http":{"types":"./dist/http.d.ts","import":"./dist/http.js"},"./stdio":"./dist/stdio.js"},"mcpName":"io.github.nyuchi/mzizi-mcp","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json","cf:dev":"wrangler dev","inspect":"mcp-inspector --web node dist/stdio.js","wrangler":"wrangler","cf:deploy":"wrangler deploy","typecheck":"tsc -p tsconfig.json --noEmit && tsc -p tsconfig.test.json","test:watch":"vitest","inspect:cli":"mcp-inspector --cli node dist/stdio.js --method tools/list --format json","inspect:dev":"mcp-inspector --web --server-url http://localhost:8787/mcp --transport http","inspect:tui":"mcp-inspector --tui node dist/stdio.js","registry:check":"node scripts/inspect-tools.mjs --check","registry:smoke":"node scripts/inspect-tools.mjs --smoke","registry:manifest":"node scripts/inspect-tools.mjs"},"_npmUser":{"name":"bryanfawcett","email":"bryan@nyuchi.com"},"_resolved":"/tmp/6ab3aa39c1499f5d11731f64b5e26ec2/nyuchi-mzizi-mcp-0.5.0.tgz","_integrity":"sha512-3Ol6Razjj8PB3j0kDOQcXgOudAXsMcqLa7t2EVsySv8+zr5787NgmbpaVAXQRXlRwWRNQj9XksNwROH+IPQj3w==","repository":{"url":"git+https://github.com/nyuchi/mzizi-tools.git","type":"git","directory":"mzizi-mcp"},"_npmVersion":"10.9.8","description":"Mzizi MCP — Model Context Protocol server for the Mzizi component registry. Reads the document-route store, one component per JSON document.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.4.3","hono":"^4.12.32","jose":"^6.2.4","@supabase/server":"^1.4.1","@workos-inc/node":"^9.3.1","@supabase/supabase-js":"^2.110.9","@modelcontextprotocol/sdk":"^1.30.0","@cloudflare/workers-oauth-provider":"^0.8.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.7","wrangler":"^4.114.0","typescript":"^6.0.3","@types/node":"^25.9.5","@cloudflare/workers-types":"^4.20260702.1","@modelcontextprotocol/inspector":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mzizi-mcp_0.5.0_1785592000139_0.7914328361510929","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@nyuchi/mzizi-mcp","version":"0.6.0","keywords":["mcp","model-context-protocol","mzizi","bundu","supabase","registry"],"license":"Apache-2.0","_id":"@nyuchi/mzizi-mcp@0.6.0","maintainers":[{"name":"bryanfawcett","email":"bryan@nyuchi.com"}],"homepage":"https://mzizi.dev","bugs":{"url":"https://github.com/nyuchi/mzizi-tools/issues"},"bin":{"mzizi-mcp":"dist/stdio.js"},"dist":{"shasum":"cbf7ac7b031a0b05b9f800524341eddb58df42d8","tarball":"https://registry.npmjs.org/@nyuchi/mzizi-mcp/-/mzizi-mcp-0.6.0.tgz","fileCount":54,"integrity":"sha512-ebSR/zGTGkJpsTkRnJfPdmEpCu3+kOcOU7nks7TFDyjiIyFrKBa3TuLpRcgNBRTIl70+OudNqNnJ2ckr4/ZlUw==","signatures":[{"sig":"MEUCIQDOze+IfBWqlPH6EMiR82/G2BtZEei6lEwiplbeCs8rhwIgIEW4t/OgWTY85RHrtPTgxfCY6LJiKikiu58VSD48QDU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":199770},"type":"module","_from":"file:nyuchi-mzizi-mcp-0.6.0.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/server.d.ts","import":"./dist/server.js"},"./http":{"types":"./dist/http.d.ts","import":"./dist/http.js"},"./stdio":"./dist/stdio.js"},"mcpName":"io.github.nyuchi/mzizi-mcp","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json","cf:dev":"wrangler dev","inspect":"mcp-inspector --web node dist/stdio.js","wrangler":"wrangler","cf:deploy":"wrangler deploy","typecheck":"tsc -p tsconfig.json --noEmit && tsc -p tsconfig.test.json","test:watch":"vitest","inspect:cli":"mcp-inspector --cli node dist/stdio.js --method tools/list --format json","inspect:dev":"mcp-inspector --web --server-url http://localhost:8787/mcp --transport http","inspect:tui":"mcp-inspector --tui node dist/stdio.js","registry:check":"node scripts/inspect-tools.mjs --check","registry:smoke":"node scripts/inspect-tools.mjs --smoke","registry:manifest":"node scripts/inspect-tools.mjs"},"_npmUser":{"name":"bryanfawcett","email":"bryan@nyuchi.com"},"_resolved":"/tmp/11f86600c93fa13fee91cede8b09457a/nyuchi-mzizi-mcp-0.6.0.tgz","_integrity":"sha512-ebSR/zGTGkJpsTkRnJfPdmEpCu3+kOcOU7nks7TFDyjiIyFrKBa3TuLpRcgNBRTIl70+OudNqNnJ2ckr4/ZlUw==","repository":{"url":"git+https://github.com/nyuchi/mzizi-tools.git","type":"git","directory":"mzizi-mcp"},"_npmVersion":"10.9.8","description":"Mzizi MCP — Model Context Protocol server for the Mzizi component registry. Reads the document-route store, one component per JSON document.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.4.3","hono":"^4.12.32","jose":"^6.2.4","@supabase/server":"^1.4.1","@workos-inc/node":"^9.3.1","@supabase/supabase-js":"^2.110.9","@modelcontextprotocol/sdk":"^1.30.0","@cloudflare/workers-oauth-provider":"^0.8.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.7","wrangler":"^4.114.0","typescript":"^6.0.3","@types/node":"^25.9.5","@cloudflare/workers-types":"^4.20260702.1","@modelcontextprotocol/inspector":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mzizi-mcp_0.6.0_1785624885109_0.15502467508890927","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@nyuchi/mzizi-mcp","version":"0.7.0","keywords":["mcp","model-context-protocol","mzizi","bundu","supabase","registry"],"license":"Apache-2.0","_id":"@nyuchi/mzizi-mcp@0.7.0","maintainers":[{"name":"bryanfawcett","email":"bryan@nyuchi.com"}],"homepage":"https://mzizi.dev","bugs":{"url":"https://github.com/nyuchi/mzizi-tools/issues"},"bin":{"mzizi-mcp":"dist/stdio.js"},"dist":{"shasum":"b90d4feb5ece18aa8e18cd5708d8fcb1e05d40ce","tarball":"https://registry.npmjs.org/@nyuchi/mzizi-mcp/-/mzizi-mcp-0.7.0.tgz","fileCount":62,"integrity":"sha512-ivXEzbag3sbXCefFGvDz5DeEDZlPSs7dqJYKrWNy2zdve9XRNq7RuRa6qJ7MKtgY8iBbODIl6Cd8uUBZapNVHg==","signatures":[{"sig":"MEUCIExytvZVjSeJBnp5rgnruqORQCxLKyZylOuG9MyERBnJAiEA2EKFM3dLdgTYX7G5W3zytpRPBrdH3EyUKhPXQT/OqhA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":201977},"type":"module","_from":"file:nyuchi-mzizi-mcp-0.7.0.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/server.d.ts","import":"./dist/server.js"},"./http":{"types":"./dist/http.d.ts","import":"./dist/http.js"},"./stdio":"./dist/stdio.js"},"mcpName":"io.github.nyuchi/mzizi-mcp","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json","cf:dev":"wrangler dev","inspect":"mcp-inspector --web node dist/stdio.js","wrangler":"wrangler","cf:deploy":"wrangler deploy","typecheck":"tsc -p tsconfig.json --noEmit && tsc -p tsconfig.test.json","test:watch":"vitest","inspect:cli":"mcp-inspector --cli node dist/stdio.js --method tools/list --format json","inspect:dev":"mcp-inspector --web --server-url http://localhost:8787/mcp --transport http","inspect:tui":"mcp-inspector --tui node dist/stdio.js","registry:check":"node scripts/inspect-tools.mjs --check","registry:smoke":"node scripts/inspect-tools.mjs --smoke","registry:manifest":"node scripts/inspect-tools.mjs"},"_npmUser":{"name":"bryanfawcett","email":"bryan@nyuchi.com"},"_resolved":"/tmp/1ac388aecc483d02c2cb3dccf4778f6e/nyuchi-mzizi-mcp-0.7.0.tgz","_integrity":"sha512-ivXEzbag3sbXCefFGvDz5DeEDZlPSs7dqJYKrWNy2zdve9XRNq7RuRa6qJ7MKtgY8iBbODIl6Cd8uUBZapNVHg==","repository":{"url":"git+https://github.com/nyuchi/mzizi-tools.git","type":"git","directory":"mzizi-mcp"},"_npmVersion":"10.9.8","description":"Mzizi MCP — Model Context Protocol server for the Mzizi component registry. Reads the document-route store, one component per JSON document.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.4.3","hono":"^4.12.32","jose":"^6.2.4","@supabase/server":"^1.4.1","@workos-inc/node":"^9.3.1","@supabase/supabase-js":"^2.110.9","@modelcontextprotocol/sdk":"^1.30.0","@cloudflare/workers-oauth-provider":"^0.8.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.7","wrangler":"^4.114.0","typescript":"^6.0.3","@types/node":"^25.9.5","@cloudflare/workers-types":"^4.20260702.1","@modelcontextprotocol/inspector":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mzizi-mcp_0.7.0_1785887779212_0.1741337280748796","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@nyuchi/mzizi-mcp","version":"0.8.0","keywords":["mcp","model-context-protocol","mzizi","bundu","supabase","registry"],"license":"Apache-2.0","_id":"@nyuchi/mzizi-mcp@0.8.0","maintainers":[{"name":"bryanfawcett","email":"bryan@nyuchi.com"}],"homepage":"https://mzizi.dev","bugs":{"url":"https://github.com/nyuchi/mzizi-tools/issues"},"bin":{"mzizi-mcp":"dist/stdio.js"},"dist":{"shasum":"9878ade8b06d709474996b742f3a2765790a53de","tarball":"https://registry.npmjs.org/@nyuchi/mzizi-mcp/-/mzizi-mcp-0.8.0.tgz","fileCount":66,"integrity":"sha512-nXRKj8DclDI9ZFKFxvQRXU0n20TGz2VM4O/wFww/SrmPGWQW8z4vc9iVRfUEldMWmK6WZLTR5cjQLWBqL4miIw==","signatures":[{"sig":"MEUCIF+O1aLglFSb9Ff70vNBANCpubm7FLbcqXvnwlql9M5eAiEA+PViRg8EStjHDY6YX/2fl2L7Pbc8xWW0C0sOG3MCW9s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":209690},"type":"module","_from":"file:nyuchi-mzizi-mcp-0.8.0.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/server.d.ts","import":"./dist/server.js"},"./http":{"types":"./dist/http.d.ts","import":"./dist/http.js"},"./stdio":"./dist/stdio.js"},"mcpName":"io.github.nyuchi/mzizi-mcp","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json","cf:dev":"wrangler dev","inspect":"mcp-inspector --web node dist/stdio.js","wrangler":"wrangler","cf:deploy":"wrangler deploy","typecheck":"tsc -p tsconfig.json --noEmit && tsc -p tsconfig.test.json","test:watch":"vitest","inspect:cli":"mcp-inspector --cli node dist/stdio.js --method tools/list --format json","inspect:dev":"mcp-inspector --web --server-url http://localhost:8787/mcp --transport http","inspect:tui":"mcp-inspector --tui node dist/stdio.js","registry:check":"node scripts/inspect-tools.mjs --check","registry:smoke":"node scripts/inspect-tools.mjs --smoke","registry:manifest":"node scripts/inspect-tools.mjs"},"_npmUser":{"name":"bryanfawcett","email":"bryan@nyuchi.com"},"_resolved":"/tmp/f8a1f16344ce5fcb69e6f631874da422/nyuchi-mzizi-mcp-0.8.0.tgz","_integrity":"sha512-nXRKj8DclDI9ZFKFxvQRXU0n20TGz2VM4O/wFww/SrmPGWQW8z4vc9iVRfUEldMWmK6WZLTR5cjQLWBqL4miIw==","repository":{"url":"git+https://github.com/nyuchi/mzizi-tools.git","type":"git","directory":"mzizi-mcp"},"_npmVersion":"10.9.8","description":"Mzizi MCP — Model Context Protocol server for the Mzizi component registry. Reads the document-route store, one component per JSON document.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.4.3","hono":"^4.12.32","jose":"^6.2.4","@supabase/server":"^1.4.1","@workos-inc/node":"^9.3.1","@supabase/supabase-js":"^2.110.9","@modelcontextprotocol/sdk":"^1.30.0","@cloudflare/workers-oauth-provider":"^0.8.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.7","wrangler":"^4.114.0","typescript":"^6.0.3","@types/node":"^25.9.5","@cloudflare/workers-types":"^4.20260702.1","@modelcontextprotocol/inspector":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mzizi-mcp_0.8.0_1786434213544_0.002664519285996203","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"@nyuchi/mzizi-mcp","version":"0.9.0","keywords":["mcp","model-context-protocol","mzizi","bundu","supabase","registry"],"license":"Apache-2.0","_id":"@nyuchi/mzizi-mcp@0.9.0","maintainers":[{"name":"bryanfawcett","email":"bryan@nyuchi.com"}],"homepage":"https://mzizi.dev","bugs":{"url":"https://github.com/nyuchi/mzizi-tools/issues"},"bin":{"mzizi-mcp":"dist/stdio.js"},"dist":{"shasum":"7a13d8069988490e0256debed0e504113c535219","tarball":"https://registry.npmjs.org/@nyuchi/mzizi-mcp/-/mzizi-mcp-0.9.0.tgz","fileCount":66,"integrity":"sha512-5zHjqaapZK1suZt0XlXlPyYwnXpWzXc2VwQ/Jd9dWYINejSItJDGXYkgki4Wn/nRdSxQ5pVIE53VqW7dj73H4A==","signatures":[{"sig":"MEUCIQCkl98RTQZpWTrcnTB1xakgFN1mTgr5aRcdwOAzCmZSGQIgQbiTzSHKNoPmAwh2FsMgJm2/qWoM50tUNNsU8Iw4AmE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":216568},"type":"module","_from":"file:nyuchi-mzizi-mcp-0.9.0.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/server.d.ts","import":"./dist/server.js"},"./http":{"types":"./dist/http.d.ts","import":"./dist/http.js"},"./stdio":"./dist/stdio.js"},"mcpName":"io.github.nyuchi/mzizi-mcp","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json","cf:dev":"wrangler dev","inspect":"mcp-inspector --web node dist/stdio.js","wrangler":"wrangler","cf:deploy":"wrangler deploy","typecheck":"tsc -p tsconfig.json --noEmit && tsc -p tsconfig.test.json","test:watch":"vitest","inspect:cli":"mcp-inspector --cli node dist/stdio.js --method tools/list --format json","inspect:dev":"mcp-inspector --web --server-url http://localhost:8787/mcp --transport http","inspect:tui":"mcp-inspector --tui node dist/stdio.js","registry:check":"node scripts/inspect-tools.mjs --check","registry:smoke":"node scripts/inspect-tools.mjs --smoke","registry:manifest":"node scripts/inspect-tools.mjs"},"_npmUser":{"name":"bryanfawcett","email":"bryan@nyuchi.com"},"_resolved":"/tmp/6486466818b2516b162711d2922309d0/nyuchi-mzizi-mcp-0.9.0.tgz","_integrity":"sha512-5zHjqaapZK1suZt0XlXlPyYwnXpWzXc2VwQ/Jd9dWYINejSItJDGXYkgki4Wn/nRdSxQ5pVIE53VqW7dj73H4A==","repository":{"url":"git+https://github.com/nyuchi/mzizi-tools.git","type":"git","directory":"mzizi-mcp"},"_npmVersion":"10.9.8","description":"Mzizi MCP — Model Context Protocol server for the Mzizi component registry. Reads the document-route store, one component per JSON document.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.4.3","hono":"^4.12.32","jose":"^6.2.4","@supabase/server":"^1.4.1","@workos-inc/node":"^9.3.1","@supabase/supabase-js":"^2.110.9","@modelcontextprotocol/sdk":"^1.30.0","@cloudflare/workers-oauth-provider":"^0.8.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.7","wrangler":"^4.114.0","typescript":"^6.0.3","@types/node":"^25.9.5","@cloudflare/workers-types":"^4.20260702.1","@modelcontextprotocol/inspector":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mzizi-mcp_0.9.0_1786439179001_0.7448446758504035","host":"s3://npm-registry-packages-npm-production"}},"0.9.1":{"name":"@nyuchi/mzizi-mcp","version":"0.9.1","keywords":["mcp","model-context-protocol","mzizi","bundu","supabase","registry"],"license":"Apache-2.0","_id":"@nyuchi/mzizi-mcp@0.9.1","maintainers":[{"name":"bryanfawcett","email":"bryan@nyuchi.com"}],"homepage":"https://mzizi.dev","bugs":{"url":"https://github.com/nyuchi/mzizi-tools/issues"},"bin":{"mzizi-mcp":"dist/stdio.js"},"dist":{"shasum":"0ea6be7134d37dfc57b4e7b8836c31aebf712c3a","tarball":"https://registry.npmjs.org/@nyuchi/mzizi-mcp/-/mzizi-mcp-0.9.1.tgz","fileCount":66,"integrity":"sha512-PYU1IKgwpRQCpiCrz+iNwM/qyrrz6EJj+VPuAxH44FlT8I3OBaw0EXcKmtVNlMrLLQ/6hU7ivL37WFfPc1Eq/g==","signatures":[{"sig":"MEQCIC3yCBQIQBGa4b4wQeT6uuu+Z3bga7XfmKBwOvpEMieGAiBZ6K8L6FU6VQu08CpAflIlNjYJesxGqkn36Y9vL7W3mg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":217287},"type":"module","_from":"file:nyuchi-mzizi-mcp-0.9.1.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/server.d.ts","import":"./dist/server.js"},"./http":{"types":"./dist/http.d.ts","import":"./dist/http.js"},"./stdio":"./dist/stdio.js"},"mcpName":"io.github.nyuchi/mzizi-mcp","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json","cf:dev":"wrangler dev","inspect":"mcp-inspector --web node dist/stdio.js","wrangler":"wrangler","cf:deploy":"wrangler deploy","typecheck":"tsc -p tsconfig.json --noEmit && tsc -p tsconfig.test.json","test:watch":"vitest","inspect:cli":"mcp-inspector --cli node dist/stdio.js --method tools/list --format json","inspect:dev":"mcp-inspector --web --server-url http://localhost:8787/mcp --transport http","inspect:tui":"mcp-inspector --tui node dist/stdio.js","registry:check":"node scripts/inspect-tools.mjs --check","registry:smoke":"node scripts/inspect-tools.mjs --smoke","registry:manifest":"node scripts/inspect-tools.mjs"},"_npmUser":{"name":"bryanfawcett","email":"bryan@nyuchi.com"},"_resolved":"/tmp/554bf54b3a04bd974dc41aaaf988f952/nyuchi-mzizi-mcp-0.9.1.tgz","_integrity":"sha512-PYU1IKgwpRQCpiCrz+iNwM/qyrrz6EJj+VPuAxH44FlT8I3OBaw0EXcKmtVNlMrLLQ/6hU7ivL37WFfPc1Eq/g==","repository":{"url":"git+https://github.com/nyuchi/mzizi-tools.git","type":"git","directory":"mzizi-mcp"},"_npmVersion":"10.9.8","description":"Mzizi MCP — Model Context Protocol server for the Mzizi component registry. Reads the document-route store, one component per JSON document.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.4.3","hono":"^4.12.32","jose":"^6.2.4","@supabase/server":"^1.4.1","@workos-inc/node":"^9.3.1","@supabase/supabase-js":"^2.110.9","@modelcontextprotocol/sdk":"^1.30.0","@cloudflare/workers-oauth-provider":"^0.8.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.7","wrangler":"^4.114.0","typescript":"^6.0.3","@types/node":"^25.9.5","@cloudflare/workers-types":"^4.20260702.1","@modelcontextprotocol/inspector":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mzizi-mcp_0.9.1_1786439710664_0.7205719587476165","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"@nyuchi/mzizi-mcp","version":"0.10.0","keywords":["mcp","model-context-protocol","mzizi","registry"],"license":"Apache-2.0","_id":"@nyuchi/mzizi-mcp@0.10.0","maintainers":[{"name":"bryanfawcett","email":"bryan@nyuchi.com"}],"homepage":"https://mzizi.dev","bugs":{"url":"https://github.com/mzizi-dev/agent-tools/issues"},"bin":{"mzizi-mcp":"dist/stdio.js"},"dist":{"shasum":"9f503c7a76b852d0dc11fd4d383e3a863c20aa7d","tarball":"https://registry.npmjs.org/@nyuchi/mzizi-mcp/-/mzizi-mcp-0.10.0.tgz","fileCount":107,"integrity":"sha512-7gk9QmYTHRNprqwXD9f22g8z8+FluTvN6aB7saTEAebkobhfAOsuLrBV8UlRabUglQ/4/deo/XcWuLCdjhjxIA==","signatures":[{"sig":"MEYCIQDE54tTN125SdmA12cVaMPx0r5HGjojIpHWwQ1cjYRiSAIhAMdlQ7u/QKH4KaBVW8RjTZ6VoIg792QeTNkE5OJfgl8/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIBSVl5eZn7PZTIyfyj/rYcyYmrHuU9fh9tSkxE1DO+5uAiEArw1JZMPfA+/nq2I1NwlTLTg/ARkm5UBhp/JGXzQStfQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4930260},"type":"module","_from":"file:nyuchi-mzizi-mcp-0.10.0.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/server.d.ts","import":"./dist/server.js"},"./http":{"types":"./dist/http.d.ts","import":"./dist/http.js"},"./stdio":"./dist/stdio.js"},"mcpName":"io.github.nyuchi/mzizi-mcp","scripts":{"fmt":"vp fmt","lint":"vp lint","test":"pnpm generate && vp test","build":"pnpm generate && tsc -p tsconfig.json","check":"pnpm generate && vp check --no-fmt","cf:dev":"pnpm generate && vp dev","inspect":"mcp-inspector --web node dist/stdio.js","generate":"node scripts/generate-skills.mjs && node scripts/generate-registry.mjs","wrangler":"wrangler","cf:deploy":"pnpm generate && vp build && wrangler deploy -c dist-worker/mzizi_mcp/wrangler.json","typecheck":"pnpm generate && tsc -p tsconfig.json --noEmit && tsc -p tsconfig.test.json","test:watch":"vp test --watch","inspect:cli":"mcp-inspector --cli node dist/stdio.js --method tools/list --format json","inspect:dev":"mcp-inspector --web --server-url http://localhost:8787/mcp --transport http","inspect:tui":"mcp-inspector --tui node dist/stdio.js","integration":"pnpm generate && node scripts/integration.mjs","build:worker":"pnpm generate && vp build","skills:generate":"node scripts/generate-skills.mjs","registry:generate":"node scripts/generate-registry.mjs --force"},"_npmUser":{"name":"bryanfawcett","email":"bryan@nyuchi.com"},"_resolved":"/tmp/78ea3b85aba8dde70e5210ebaeb672de/nyuchi-mzizi-mcp-0.10.0.tgz","_integrity":"sha512-7gk9QmYTHRNprqwXD9f22g8z8+FluTvN6aB7saTEAebkobhfAOsuLrBV8UlRabUglQ/4/deo/XcWuLCdjhjxIA==","repository":{"url":"git+https://github.com/mzizi-dev/agent-tools.git","type":"git","directory":"mzizi-mcp"},"_npmVersion":"10.9.8","description":"Mzizi MCP — Model Context Protocol server for the Mzizi design system: registry, design tokens, doctrine, agent skills and the docs.mzizi.dev docs. Free with no account; sign-in only for the Fundi tools. Registry data and skills are bundled at build time ","directories":{},"_nodeVersion":"22.23.2","dependencies":{"zod":"^4.4.3","hono":"^4.12.32","jose":"^6.2.4","@workos-inc/node":"^9.3.1","@modelcontextprotocol/sdk":"^1.30.0","@cloudflare/workers-oauth-provider":"^0.8.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.3.6","vitest":"^3.2.7","esbuild":"^0.28.1","wrangler":"^4.126.0","vite-plus":"^0.3.0","typescript":"^6.0.3","@types/node":"^25.9.5","@cloudflare/vite-plugin":"^1.54.0","@cloudflare/workers-types":"^4.20260702.1","@modelcontextprotocol/inspector":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mzizi-mcp_0.10.0_1790690881882_0.9836501683785794","host":"s3://npm-registry-packages-npm-production"}},"0.10.1":{"name":"@nyuchi/mzizi-mcp","version":"0.10.1","keywords":["mcp","model-context-protocol","mzizi","registry"],"license":"Apache-2.0","_id":"@nyuchi/mzizi-mcp@0.10.1","maintainers":[{"name":"bryanfawcett","email":"bryan@nyuchi.com"}],"homepage":"https://mzizi.dev","bugs":{"url":"https://github.com/mzizi-dev/agent-tools/issues"},"bin":{"mzizi-mcp":"dist/stdio.js"},"dist":{"shasum":"960c046f61f91843d3c8f10cfe3429600d17fd9b","tarball":"https://registry.npmjs.org/@nyuchi/mzizi-mcp/-/mzizi-mcp-0.10.1.tgz","fileCount":107,"integrity":"sha512-PQEgZlsaQwzVaxyd5Wk22HNjmgytK1IgnSYvjXjX5uWQOjJn6VvNVTOXQ25tOgN9BiA40hChK+Vk+LTrQpNWNw==","signatures":[{"sig":"MEUCIDqsuC4c0xwjifiSjzAvxKhXEkE33FWMkt5z5yEBobvqAiEAs8dITT1zjb4om3p2vTyN847yhwejiKHLC7fLwfNJHFk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQC3zyoCeBo/dMO5uZedrZ0h3ieZDC62XA8Ke4brvZyaLgIgDPcBUz+bYmNkDeVAYRdH3FCgUG4BWlRgsH0oTZ/3PwE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4930592},"type":"module","_from":"file:nyuchi-mzizi-mcp-0.10.1.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/server.d.ts","import":"./dist/server.js"},"./http":{"types":"./dist/http.d.ts","import":"./dist/http.js"},"./stdio":"./dist/stdio.js"},"mcpName":"io.github.mzizi-dev/mzizi-mcp","scripts":{"fmt":"vp fmt","lint":"vp lint","test":"pnpm generate && vp test","build":"pnpm generate && tsc -p tsconfig.json","check":"pnpm generate && vp check --no-fmt","cf:dev":"pnpm generate && vp dev","inspect":"mcp-inspector --web node dist/stdio.js","generate":"node scripts/generate-skills.mjs && node scripts/generate-registry.mjs","wrangler":"wrangler","cf:deploy":"pnpm generate && vp build && wrangler deploy -c dist-worker/mzizi_mcp/wrangler.json","typecheck":"pnpm generate && tsc -p tsconfig.json --noEmit && tsc -p tsconfig.test.json","test:watch":"vp test --watch","inspect:cli":"mcp-inspector --cli node dist/stdio.js --method tools/list --format json","inspect:dev":"mcp-inspector --web --server-url http://localhost:8787/mcp --transport http","inspect:tui":"mcp-inspector --tui node dist/stdio.js","integration":"pnpm generate && node scripts/integration.mjs","build:worker":"pnpm generate && vp build","skills:generate":"node scripts/generate-skills.mjs","registry:generate":"node scripts/generate-registry.mjs --force"},"_npmUser":{"name":"bryanfawcett","email":"bryan@nyuchi.com"},"_resolved":"/tmp/b860729f62552ab78db3363a95e7bf60/nyuchi-mzizi-mcp-0.10.1.tgz","_integrity":"sha512-PQEgZlsaQwzVaxyd5Wk22HNjmgytK1IgnSYvjXjX5uWQOjJn6VvNVTOXQ25tOgN9BiA40hChK+Vk+LTrQpNWNw==","repository":{"url":"git+https://github.com/mzizi-dev/agent-tools.git","type":"git","directory":"mzizi-mcp"},"_npmVersion":"10.9.8","description":"Mzizi MCP — Model Context Protocol server for the Mzizi design system: registry, design tokens, doctrine, agent skills and the docs.mzizi.dev docs. Free with no account; sign-in only for the Fundi tools. Registry data and skills are bundled at build time ","directories":{},"_nodeVersion":"22.23.2","dependencies":{"zod":"^4.4.3","hono":"^4.12.32","jose":"^6.2.4","@workos-inc/node":"^9.3.1","@modelcontextprotocol/sdk":"^1.30.0","@cloudflare/workers-oauth-provider":"^0.8.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.3.6","vitest":"^3.2.7","esbuild":"^0.28.1","wrangler":"^4.126.0","vite-plus":"^0.3.0","typescript":"^6.0.3","@types/node":"^25.9.5","@cloudflare/vite-plugin":"^1.54.0","@cloudflare/workers-types":"^4.20260702.1","@modelcontextprotocol/inspector":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mzizi-mcp_0.10.1_1790691341882_0.5342641395379517","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"@nyuchi/mzizi-mcp","version":"0.11.0","keywords":["mcp","model-context-protocol","mzizi","registry"],"license":"Apache-2.0","_id":"@nyuchi/mzizi-mcp@0.11.0","maintainers":[{"name":"bryanfawcett","email":"bryan@nyuchi.com"}],"homepage":"https://mzizi.dev","bugs":{"url":"https://github.com/mzizi-dev/agent-tools/issues"},"bin":{"mzizi-mcp":"dist/stdio.js"},"dist":{"shasum":"e178d7e9ac5bb16e33b85013f7ad086dca7d014e","tarball":"https://registry.npmjs.org/@nyuchi/mzizi-mcp/-/mzizi-mcp-0.11.0.tgz","fileCount":107,"integrity":"sha512-fgE/r5o15vOQRy4BTTiORaE9zxKVUTEF1tyw1UBgK2RKIDQ0m9IuB+gsZZP0zMASbe3vkOMBiC5JmHsr4sbdIg==","signatures":[{"sig":"MEQCIFVje0zlV0wEHCnsFCXKIRUoMlxQHsIGdoV1tu3H+/1ZAiBCiR+MxFSRomI32YEFtcSjLz95gPIp8IZSIi4mviW/Sg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIFK76EIRRBJybEkycWJ01Zal1tVcztf92DMNPcpgGWNrAiEAmLt2xxR90NPi9cRowjqbZ4WD63WtaUg1t4gU1SpkPrg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5600646},"type":"module","_from":"file:nyuchi-mzizi-mcp-0.11.0.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/server.d.ts","import":"./dist/server.js"},"./http":{"types":"./dist/http.d.ts","import":"./dist/http.js"},"./stdio":"./dist/stdio.js"},"mcpName":"io.github.mzizi-dev/mzizi-mcp","scripts":{"fmt":"vp fmt","lint":"vp lint","test":"pnpm generate && vp test","build":"pnpm generate && tsc -p tsconfig.json","check":"pnpm generate && vp check --no-fmt","cf:dev":"pnpm generate && vp dev","inspect":"mcp-inspector --web node dist/stdio.js","generate":"node scripts/generate-skills.mjs && node scripts/generate-registry.mjs","wrangler":"wrangler","cf:deploy":"pnpm generate && vp build && wrangler deploy -c dist-worker/mzizi_mcp/wrangler.json","typecheck":"pnpm generate && tsc -p tsconfig.json --noEmit && tsc -p tsconfig.test.json","test:watch":"vp test --watch","inspect:cli":"mcp-inspector --cli node dist/stdio.js --method tools/list --format json","inspect:dev":"mcp-inspector --web --server-url http://localhost:8787/mcp --transport http","inspect:tui":"mcp-inspector --tui node dist/stdio.js","integration":"pnpm generate && node scripts/integration.mjs","build:worker":"pnpm generate && vp build","skills:generate":"node scripts/generate-skills.mjs","registry:generate":"node scripts/generate-registry.mjs --force"},"_npmUser":{"name":"bryanfawcett","email":"bryan@nyuchi.com"},"_resolved":"/tmp/92f2d1deba86471c3f67c0e5c8790330/nyuchi-mzizi-mcp-0.11.0.tgz","_integrity":"sha512-fgE/r5o15vOQRy4BTTiORaE9zxKVUTEF1tyw1UBgK2RKIDQ0m9IuB+gsZZP0zMASbe3vkOMBiC5JmHsr4sbdIg==","repository":{"url":"git+https://github.com/mzizi-dev/agent-tools.git","type":"git","directory":"mzizi-mcp"},"_npmVersion":"10.9.8","description":"Mzizi MCP — Model Context Protocol server for the Mzizi design system: registry, design tokens, doctrine, agent skills and the docs.mzizi.dev docs. Free with no account; sign-in only for the Fundi tools. Registry data and skills are bundled at build time ","directories":{},"_nodeVersion":"22.23.2","dependencies":{"zod":"^4.4.3","hono":"^4.12.32","jose":"^6.2.4","@workos-inc/node":"^9.3.1","@modelcontextprotocol/sdk":"^1.30.0","@cloudflare/workers-oauth-provider":"^0.8.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.3.6","vitest":"^3.2.7","esbuild":"^0.28.1","wrangler":"^4.126.0","vite-plus":"^0.3.0","typescript":"^6.0.3","@types/node":"^25.9.5","@cloudflare/vite-plugin":"^1.54.0","@cloudflare/workers-types":"^4.20260702.1","@modelcontextprotocol/inspector":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mzizi-mcp_0.11.0_1790730353563_0.2778570533343101","host":"s3://npm-registry-packages-npm-production"}},"0.11.1":{"name":"@nyuchi/mzizi-mcp","version":"0.11.1","keywords":["mcp","model-context-protocol","mzizi","registry"],"license":"Apache-2.0","_id":"@nyuchi/mzizi-mcp@0.11.1","maintainers":[{"name":"bryanfawcett","email":"bryan@nyuchi.com"}],"homepage":"https://mzizi.dev","bugs":{"url":"https://github.com/mzizi-dev/agent-tools/issues"},"bin":{"mzizi-mcp":"dist/stdio.js"},"dist":{"shasum":"630e10d7a7be35cdf845fb99040f19e34aef8bdf","tarball":"https://registry.npmjs.org/@nyuchi/mzizi-mcp/-/mzizi-mcp-0.11.1.tgz","fileCount":107,"integrity":"sha512-0yeOgITWXdx3mIMQF5W+EbS4vC6UBZXve7cVa5LAMwGU3ZPUoHHxxkbznNnzpDz1sDLPYOH0fr6HaoSoi+v4QA==","signatures":[{"sig":"MEUCIQDO0/LX+l2K6wh2xRRuTR+23f2+xfmRkuRPgrvi/mKgBgIgdrbTdZLCnwsUNA3aOd1PeKnh8467+RdfFF4UDhZ2tS8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIAgPcBZJsBN69aZOMenoR0ttgvpMJqY7tHatMvB1YcNCAiEA7NqIXMQbcvE/ZFgaAWEag3G2Q/jb7D5c52s864duxfQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5632264},"type":"module","_from":"file:nyuchi-mzizi-mcp-0.11.1.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/server.d.ts","import":"./dist/server.js"},"./http":{"types":"./dist/http.d.ts","import":"./dist/http.js"},"./stdio":"./dist/stdio.js"},"mcpName":"io.github.mzizi-dev/mzizi-mcp","scripts":{"fmt":"vp fmt","lint":"vp lint","test":"pnpm generate && vp test","build":"pnpm generate && tsc -p tsconfig.json","check":"pnpm generate && vp check --no-fmt","cf:dev":"pnpm generate && vp dev","inspect":"mcp-inspector --web node dist/stdio.js","generate":"node scripts/generate-skills.mjs && node scripts/generate-registry.mjs","wrangler":"wrangler","cf:deploy":"pnpm generate && vp build && wrangler deploy -c dist-worker/mzizi_mcp/wrangler.json","typecheck":"pnpm generate && tsc -p tsconfig.json --noEmit && tsc -p tsconfig.test.json","test:watch":"vp test --watch","inspect:cli":"mcp-inspector --cli node dist/stdio.js --method tools/list --format json","inspect:dev":"mcp-inspector --web --server-url http://localhost:8787/mcp --transport http","inspect:tui":"mcp-inspector --tui node dist/stdio.js","integration":"pnpm generate && node scripts/integration.mjs","build:worker":"pnpm generate && vp build","skills:generate":"node scripts/generate-skills.mjs","registry:generate":"node scripts/generate-registry.mjs --force"},"_npmUser":{"name":"bryanfawcett","email":"bryan@nyuchi.com"},"_resolved":"/tmp/0bc07eb160523c51b154da30307f26de/nyuchi-mzizi-mcp-0.11.1.tgz","_integrity":"sha512-0yeOgITWXdx3mIMQF5W+EbS4vC6UBZXve7cVa5LAMwGU3ZPUoHHxxkbznNnzpDz1sDLPYOH0fr6HaoSoi+v4QA==","repository":{"url":"git+https://github.com/mzizi-dev/agent-tools.git","type":"git","directory":"mzizi-mcp"},"_npmVersion":"10.9.9","description":"Mzizi MCP — Model Context Protocol server for the Mzizi design system: registry, design tokens, doctrine, agent skills and the docs.mzizi.dev docs. Free with no account; sign-in only for the Fundi tools. Registry data and skills are bundled at build time ","directories":{},"_nodeVersion":"22.23.3","dependencies":{"zod":"^4.4.3","hono":"^4.12.32","jose":"^6.2.4","@workos-inc/node":"^9.3.1","@modelcontextprotocol/sdk":"^1.30.0","@cloudflare/workers-oauth-provider":"^0.8.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.3.6","vitest":"^3.2.7","esbuild":"^0.28.1","wrangler":"^4.126.0","vite-plus":"^0.3.0","typescript":"^6.0.3","@types/node":"^25.9.5","@cloudflare/vite-plugin":"^1.54.0","@cloudflare/workers-types":"^4.20260702.1","@modelcontextprotocol/inspector":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mzizi-mcp_0.11.1_1790741204869_0.8393127288999913","host":"s3://npm-registry-packages-npm-production"}},"0.11.2":{"_id":"@nyuchi/mzizi-mcp@0.11.2","bin":{"mzizi-mcp":"dist/stdio.js"},"bugs":{"url":"https://github.com/mzizi-dev/agent-tools/issues"},"dist":{"shasum":"88e24c42c33b073218adee3928e1da13535a1c98","tarball":"https://registry.npmjs.org/@nyuchi/mzizi-mcp/-/mzizi-mcp-0.11.2.tgz","fileCount":107,"integrity":"sha512-zzA2qKFiY5A1LP/xWWim1nSGO8fmKIL+Nryz0DUojQ1YDGxPdW8XEUQynF1FhOIFN2b60pRMWUcowDnBC9EUZQ==","signatures":[{"sig":"MEYCIQCKFe8+40Iamta7n1Df21lT0DQdqMYN0AIsgVqLsSgJYgIhAJs2dflwR9v8QRlQ+xmJBibTTxixRiLFgrks1tG8tBsi","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDRWNeWM4f0psEmZr8wvRrRUGT1cxuMEn4I3vRdlB4IfwIgHIu74rVuv1Z9V/SqBDhAAlaRQzW8xakQAkk0ayYq5cQ="}],"unpackedSize":5633800},"name":"@nyuchi/mzizi-mcp","type":"module","_from":"file:nyuchi-mzizi-mcp-0.11.2.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/server.d.ts","import":"./dist/server.js"},"./http":{"types":"./dist/http.d.ts","import":"./dist/http.js"},"./stdio":"./dist/stdio.js"},"license":"Apache-2.0","mcpName":"io.github.mzizi-dev/mzizi-mcp","scripts":{"fmt":"vp fmt","lint":"vp lint","test":"pnpm generate && vp test","build":"pnpm generate && tsc -p tsconfig.json","check":"pnpm generate && vp check --no-fmt","cf:dev":"pnpm generate && vp dev","inspect":"mcp-inspector --web node dist/stdio.js","generate":"node scripts/generate-skills.mjs && node scripts/generate-registry.mjs","wrangler":"wrangler","cf:deploy":"pnpm generate && vp build && wrangler deploy -c dist-worker/mzizi_mcp/wrangler.json","typecheck":"pnpm generate && tsc -p tsconfig.json --noEmit && tsc -p tsconfig.test.json","test:watch":"vp test --watch","inspect:cli":"mcp-inspector --cli node dist/stdio.js --method tools/list --format json","inspect:dev":"mcp-inspector --web --server-url http://localhost:8787/mcp --transport http","inspect:tui":"mcp-inspector --tui node dist/stdio.js","integration":"pnpm generate && node scripts/integration.mjs","build:worker":"pnpm generate && vp build","skills:generate":"node scripts/generate-skills.mjs","registry:generate":"node scripts/generate-registry.mjs --force"},"version":"0.11.2","_npmUser":{"name":"bryanfawcett","email":"bryan@nyuchi.com"},"homepage":"https://mzizi.dev","keywords":["mcp","model-context-protocol","mzizi","registry"],"_resolved":"/tmp/4567d85b855fc3d7a26d07572d2f9477/nyuchi-mzizi-mcp-0.11.2.tgz","_integrity":"sha512-zzA2qKFiY5A1LP/xWWim1nSGO8fmKIL+Nryz0DUojQ1YDGxPdW8XEUQynF1FhOIFN2b60pRMWUcowDnBC9EUZQ==","repository":{"url":"git+https://github.com/mzizi-dev/agent-tools.git","type":"git","directory":"mzizi-mcp"},"_npmVersion":"10.9.8","description":"Mzizi MCP — Model Context Protocol server for the Mzizi design system: registry, design tokens, doctrine, agent skills and the docs.mzizi.dev docs. Free with no account; sign-in only for the Fundi tools. Registry data and skills are bundled at build time ","directories":{},"maintainers":[{"name":"bryanfawcett","email":"bryan@nyuchi.com"}],"_nodeVersion":"22.23.2","dependencies":{"zod":"^4.4.3","hono":"^4.12.32","jose":"^6.2.4","@workos-inc/node":"^9.3.1","@modelcontextprotocol/sdk":"^1.30.0","@cloudflare/workers-oauth-provider":"^0.8.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.3.6","vitest":"^3.2.7","esbuild":"^0.28.1","wrangler":"^4.126.0","vite-plus":"^0.3.0","typescript":"^6.0.3","@types/node":"^25.9.5","@cloudflare/vite-plugin":"^1.54.0","@cloudflare/workers-types":"^4.20260702.1","@modelcontextprotocol/inspector":"^2.0.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/mzizi-mcp_0.11.2_1790745216065_0.9100431298356779"}}},"time":{"created":"2026-06-14T00:55:13.819Z","modified":"2026-09-30T05:13:36.431Z","0.3.0":"2026-06-14T00:55:14.117Z","0.4.0":"2026-06-30T00:23:32.924Z","0.5.0-beta.1":"2026-07-02T19:57:06.691Z","0.5.0-beta.2":"2026-07-03T19:00:27.150Z","0.5.0-beta.3":"2026-07-23T13:20:08.772Z","0.5.0-beta.4":"2026-07-24T06:00:14.959Z","0.5.0-beta.5":"2026-07-27T02:18:00.685Z","0.5.0-beta.6":"2026-07-31T01:10:44.660Z","0.5.0-beta.7":"2026-07-31T02:35:25.105Z","0.5.0-beta.8":"2026-07-31T11:41:44.685Z","0.5.0":"2026-08-01T13:46:40.304Z","0.6.0":"2026-08-01T22:54:45.252Z","0.7.0":"2026-08-04T23:56:19.352Z","0.8.0":"2026-08-11T07:43:33.679Z","0.9.0":"2026-08-11T09:06:19.169Z","0.9.1":"2026-08-11T09:15:10.816Z","0.10.0":"2026-09-29T14:08:01.998Z","0.10.1":"2026-09-29T14:15:42.031Z","0.11.0":"2026-09-30T01:05:53.691Z","0.11.1":"2026-09-30T04:06:44.973Z","0.11.2":"2026-09-30T05:13:36.188Z"},"bugs":{"url":"https://github.com/mzizi-dev/agent-tools/issues"},"license":"Apache-2.0","homepage":"https://mzizi.dev","keywords":["mcp","model-context-protocol","mzizi","registry"],"repository":{"url":"git+https://github.com/mzizi-dev/agent-tools.git","type":"git","directory":"mzizi-mcp"},"description":"Mzizi MCP — Model Context Protocol server for the Mzizi design system: registry, design tokens, doctrine, agent skills and the docs.mzizi.dev docs. Free with no account; sign-in only for the Fundi tools. Registry data and skills are bundled at build time ","maintainers":[{"name":"bryanfawcett","email":"bryan@nyuchi.com"}],"readme":"# @nyuchi/mzizi-mcp\n\n> Model Context Protocol server for the Mzizi design system: the registry and skills served from files bundled at build time, the docs joined in from docs.mzizi.dev, and no database behind any of it. Free, with no account; sign-in only for Fundi.\n\n[![npm](https://img.shields.io/npm/v/%40nyuchi%2Fmzizi-mcp?style=flat-square&logo=npm)](https://www.npmjs.com/package/@nyuchi/mzizi-mcp)\n[![License: Apache 2.0](https://img.shields.io/badge/License-Apache_2.0-blue.svg?style=flat-square)](https://www.apache.org/licenses/LICENSE-2.0)\n\n**Live:** `https://mcp.mzizi.dev/mcp` | **Home:** [mzizi.dev](https://mzizi.dev) | **Docs:** [docs.mzizi.dev](https://docs.mzizi.dev)\n\nOwned and operated by **Mzizi**.\n\n---\n\n**Live at** `https://mcp.mzizi.dev/mcp` (Cloudflare Worker `mzizi-mcp`, version\n0.11.2 — `MZIZI_MCP_VERSION` in `src/server.ts` is what `serverInfo.version`\nreports, and it moves in lockstep with `package.json` and `server.json`).\n\n## Free, with no gate except Fundi\n\nConnect with no account. An anonymous session can `initialize`, call\n`tools/list` and call every tool except the Fundi ones:\n\n| Access                            | Tools                                                                                                                                                                                                                          |\n| --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |\n| **free**, no account              | `mzizi_search`, `mzizi_get_component`, `mzizi_list_components`, `mzizi_get_tokens`, `mzizi_get_architecture`, `mzizi_get_doctrine`, `mzizi_get_skills`, `mzizi_check_accessibility`, `mzizi_mcp_describe`, every `docs_*` tool |\n| **sign-in** (free WorkOS account) | `mzizi_fundi`, `mzizi_report_issue`. They act as your Mzizi console user                                                                                                                                                       |\n\n- Called without sign-in, the Fundi tools are still listed. They answer with a\n  tool error that starts `Sign-in required:` and says how to sign in.\n- **To sign in**, use your client's sign-in or authenticate option for this\n  server, or connect to **`https://mcp.mzizi.dev/mcp/signin`**. That URL is the\n  same MCP, but it answers 401 until you sign in through a WorkOS **Connect\n  OAuth application** (public client, PKCE; no client secret), and then serves\n  every tool. Clients discover the authorization server through\n  `/.well-known/oauth-protected-resource`, including the path-specific\n  `/.well-known/oauth-protected-resource/mcp/signin`.\n- A request to `/mcp` that carries a token is validated by the OAuth provider\n  exactly as before: a bad or expired token gets a 401, so a signed-in client\n  refreshes rather than dropping to the free tier.\n- **Abuse guard:** anonymous requests are limited to 120 per 60 seconds per\n  client IP (a Workers rate-limit binding, `ANON_RATE_LIMIT`). Over the limit\n  you get HTTP 429 with `Retry-After: 60`. Signed-in requests are not limited.\n- `mzizi_mcp_describe`, the `mzizi://tools` resource and\n  `GET https://mcp.mzizi.dev/catalogue.json` mark every tool `free` or\n  `sign-in`, and say how to sign in. `src/access.ts` is the one list.\n\n**MCP Registry name:** `io.github.mzizi-dev/mzizi-mcp` (from 0.10.1; the older\n`io.github.nyuchi/mzizi-mcp` entry is stale and no longer updated)\n\n---\n\n## Using it — MCP client config\n\nPoint any MCP client at the live HTTP endpoint:\n\n```json\n{\n  \"mcpServers\": {\n    \"mzizi\": {\n      \"type\": \"http\",\n      \"url\": \"https://mcp.mzizi.dev/mcp\"\n    }\n  }\n}\n```\n\nNo sign-in is needed. To use the Fundi tools, use\n`\"url\": \"https://mcp.mzizi.dev/mcp/signin\"` instead; the client runs the WorkOS\nConnect OAuth (PKCE) flow on first connect.\n\n### stdio (local / offline)\n\nRun the stdio bin via npx — useful for Claude Code, Cursor, or any assistant that\nspeaks stdio MCP. **It is zero-config and credential-free**: the registry data and\nskills ship inside the package, so every `mzizi_*` read works offline. The `docs_*`\ntools forward to the public docs MCP and need network.\n\n```json\n{\n  \"mcpServers\": {\n    \"mzizi\": {\n      \"type\": \"stdio\",\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@nyuchi/mzizi-mcp\"]\n    }\n  }\n}\n```\n\nUse it when you want the registry offline, or pinned to the version you\ninstalled. The hosted endpoint needs no sign-in either, so a headless agent can\nuse either one. `mzizi_report_issue` needs a signed-in user and says so on the\nstdio bin, and `mzizi_fundi` is not offered there.\n\n---\n\n## Where the data comes from\n\nNothing is read from a database, and no registry data is fetched at request time.\n\n| Data                                                                                                                                                                                                                 | Source                                                                                                                                     | How it gets into the Worker                                                                                                                                          |\n| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| Components, index, component docs, Rust (Mzizi Roots) implementations and their crates, brand tokens, architecture helix + nodes, Ubuntu pillars/principles, conventions, AI instruction sets, changelog, rename map | [mzizi-dev/mzizi-registry](https://github.com/mzizi-dev/mzizi-registry) at the commit pinned in [`registry.pin.json`](./registry.pin.json) | `scripts/generate-registry.mjs` fetches that exact commit and calls the registry's **own API route handlers** once per resource, writing `src/generated/registry.ts` |\n| Agent skills                                                                                                                                                                                                         | `../mzizi-skills/skills/*/SKILL.md` in this repo                                                                                           | `scripts/generate-skills.mjs` → `src/generated/skills.ts`                                                                                                            |\n| Documentation                                                                                                                                                                                                        | the Mintlify MCP at `https://docs.mzizi.dev/mcp`                                                                                           | federated live — see below                                                                                                                                           |\n\nBoth generated files are build output: gitignored, never committed, rebuilt by\n`pnpm generate` (which `build`, `build:worker`, `cf:dev`, `cf:deploy`, `test`,\n`typecheck` and `check` all run first), by the Vite config, and by\n`wrangler.toml`'s `[build] command`. They are no-ops when current.\n\nBecause the generator runs the registry's route handlers rather than\nre-deriving their output, a tool here answers with the same payload\n`api.mzizi.dev/v1` would give at the pinned commit. The registry checkout has no\n`node_modules`: every npm package a route imports is replaced with a module that\nthrows on use, so a route that still reads a database **fails the build** rather\nthan shipping an empty answer.\n\n**Moving to newer registry content (bumping the pin)** is a one-line PR, and a bot opens it:\n`.github/workflows/registry-pin-bump.yml` checks registry `main` hourly, keeps one pull request\non `bot/registry-pin`, and merges it (rebase) when every check is green; a failed check waits for\nreview (root README, \"Registry pin bump\"). By hand, the steps are:\n\n1. Pick the mzizi-registry commit to ship (a full 40-character SHA on its\n   `main`).\n2. Set `ref` in `registry.pin.json` to it.\n3. Run `pnpm --filter @nyuchi/mzizi-mcp test` locally, or let CI do it. The\n   generator fetches that commit, and `test/registry-bundle.test.ts` checks the\n   bundle ref equals the pin and calls every registry tool against it.\n4. Merge. Workers Builds rebuilds with the new pin and deploys it. The npm bin\n   picks it up at the next version bump.\n\n`mzizi_mcp_describe` and `/catalogue.json` report the pinned commit as\n`source.registry`, so you can check what is live.\n\nComponents are **Rust first** (Mzizi Roots): where the registry has a Rust\nimplementation, it is the lead. The TSX components are the React build, and\nkeep working.\n\nFormer `nyuchi-*` component names (renamed to `mzizi-*` on 2026-09-27) resolve\nthrough the registry's `lib/component-renames.json`, bundled with the rest.\n\n### Docs — joined in from docs.mzizi.dev\n\nThe documentation site runs its own MCP server (Mintlify; streamable HTTP, public,\nstateless). This server lists its tools under a `docs_` prefix and forwards each\ncall, passing the result through untouched:\n\n- the upstream tool list is cached for 5 minutes;\n- if a refresh fails the last good list is reused, and with nothing cached a\n  built-in snapshot of the upstream definitions keeps the surface stable;\n- a failed call is a tool error naming the docs server and the reason.\n\n---\n\n## Tools\n\n| Tool                               | Returns                                                                        |\n| ---------------------------------- | ------------------------------------------------------------------------------ |\n| `mzizi_search`                     | Word search over components, conventions, AI instruction sets and releases     |\n| `mzizi_get_component`              | One component in full, **Rust first**; `include: [\"docs\", \"versions\"]`         |\n| `mzizi_list_components`            | The lean, paged index; filter by `node`, `owner`, `collection`, `type`, `rust` |\n| `mzizi_get_tokens`                 | Brand system; `family: \"colors\"` for all 21 colour families                    |\n| `mzizi_get_architecture`           | The DNA helix, or one node/rung with `node` (uncapped)                         |\n| `mzizi_get_doctrine`               | `ubuntu-pillars`, `ubuntu-principles`, `ai-instructions`, `conventions`        |\n| `mzizi_get_skills`                 | The agent skills, listed or one in full                                        |\n| `mzizi_check_accessibility`        | Contrast ratio against the Mzizi AAA floor, computed locally                   |\n| `mzizi_report_issue`               | Your issue desk. **Sign-in**                                                   |\n| `mzizi_fundi`                      | Delegate to fundi (when the Worker can reach fundi). **Sign-in**               |\n| `mzizi_mcp_describe`               | This server's tools, their access, what each replaces, and data sources        |\n| `docs_search_mzizi`                | Search the documentation (forwarded)                                           |\n| `docs_query_docs_filesystem_mzizi` | Read-only `rg`/`cat`/`tree` over the doc pages (forwarded)                     |\n| `docs_submit_feedback`             | Report a documentation problem (forwarded)                                     |\n\n**The tool list is whatever `tools/list` returns.** The `docs_*` names mirror\nwhatever docs.mzizi.dev lists; the three above are what it lists today (checked\nagainst the live `/catalogue.json` on 2026-09-29). `GET /catalogue.json` and the\n`mzizi://tools` resource are computed from the same registration path.\n\n**Rust first (from 0.11.0).** Mzizi's own components are being converted to Rust as\n**Mzizi Roots**; the TSX components are the React build, deprioritised. The registry\ntools present the Rust implementation first wherever one exists:\n\n- `mzizi_get_component` returns\n  `{name, renamedFrom?, lead, note, rust, react, docs?, versions?}`, in that order.\n  - `lead` is `\"rust\"` when the component has a Rust implementation, else `\"react\"`.\n  - `rust` is the registry's `GET /v1/rs/{name}` answer, reordered so the install comes\n    before the source:\n    - `crate`: `{name, registry, git}`, from the registry's `crateFor` and `CRATE_GIT`.\n    - `install.cargo`: `cargo add <crate>`, the crates.io release.\n    - `install.pinned`: the same with\n      `--git https://github.com/mzizi-dev/mzizi-registry --rev <pin>`, which builds\n      exactly the source shown.\n    - `module`: the crate's Rust path, e.g. `mzizi_ui`.\n    - `contract`: the RFC-0006 `contract … end` block from the source's `CONTRACT`\n      const, or `null` when the source declares none.\n    - `files[]`: the `.rs` source, inline.\n\n    With no Rust, `rust` is `null`, and `note` carries the registry's own \"ships for\n    React only\" wording.\n\n  - `react` is the React build: `build: \"react\"`, `status: \"deprioritised\"`, `install`\n    (`npx shadcn@latest add https://api.mzizi.dev/v1/ui/<name>`), then the registry's\n    `GET /v1/ui/{name}` body unchanged (shadcn-shaped, `files[]` inline). If the registry\n    refuses the React build but Rust exists, `react` is `{build, error}` and the Rust\n    still leads.\n  - **Breaking for readers of 0.10.x:** the React body moved from `component` to\n    `react`, and `renamedFrom` moved to the top level.\n- `mzizi_list_components` rows carry `rustCrate` when the component has Rust (absent\n  otherwise), the response carries `withRust` (how many of `total` have Rust), and\n  `rust: true` / `rust: false` filters on it.\n- `mzizi_search` component hits carry `rustCrate` the same way, and at an equal score a\n  component with Rust ranks first. A better word match still wins.\n- The generator calls the registry's own `/v1/rs/{name}` route handler for every\n  component, as it does `/v1/ui/{name}`. Only components with Rust are stored; the\n  no-Rust answer is stored once as a template, which the build checks against every\n  component's real answer. This adds about 0.6 MiB to the Worker upload (gzip about\n  +160 KiB; see the CHANGELOG for the measured sizes).\n\n**Shape notes (changed when the registry moved into the build).**\n\n- `mzizi_get_component` with `include: [\"versions\"]` is derived from the committed\n  changelog and rename map: rows are `{version, title, change, breaking,\nreleased_at}` with `meta.previousNames`. The database view it used to read is gone\n  from this path.\n- `mzizi_search` returns `{data: [{kind, name, title?, description?}], meta}`, with\n  `kind` one of `component | convention | ai-instruction | release`. Documentation\n  pages are searched by `docs_search_mzizi`.\n- `mzizi_get_doctrine` gained the `conventions` topic (list, or one by `name`).\n\n---\n\n## Environment / secrets\n\n### HTTP Worker (Cloudflare)\n\nSecrets (`wrangler secret put`):\n\n| Secret                  | Required | Notes                                                          |\n| ----------------------- | -------- | -------------------------------------------------------------- |\n| `COOKIE_ENCRYPTION_KEY` | yes      | HMAC key for the consent cookie (random bytes)                 |\n| `WORKOS_AUTHKIT_DOMAIN` | no       | AuthKit domain for `/oauth2/*` (`https://accounts.mukoko.com`) |\n\n**There is deliberately no `GITHUB_TOKEN` here.** The issue desk used to file GitHub issues\nitself with a PAT that was never set on this Worker, so every report parked at `drafted` and no\nmaintainer ever saw one. `mzizi_report_issue` now reproduces, drafts, and **logs** the issue to\nfundi over the `FUNDI_SERVICE` binding; fundi holds the PAT, files the GitHub issue with its\nhealing plan in it, and writes that issue's lifecycle back to D1 — which is what lets the desk\n(and the console) say whether yours was picked up or closed.\n\n`WORKOS_AUTHKIT_DOMAIN` is a **secret and not a `[vars]` entry**, even though a hostname is not\nconfidential: a var wins on every deploy and silently discards a same-named remote value, so a\nvalue that differs per environment cannot live in committed config. It is \"not required\" only\nbecause `src/identity.ts` carries a working default — and it must move in lockstep with\n`mzizi-fundi`, which binds the same issuer that this Worker's agent-card consumers are pointed\nat. See `AUTH.md`.\n\nPlain vars (`[vars]` in `wrangler.toml`, not secrets):\n\n| Var                    | Notes                                                         |\n| ---------------------- | ------------------------------------------------------------- |\n| `WORKOS_CLIENT_ID`     | Connect OAuth app client id (public client; PKCE)             |\n| `WORKOS_M2M_CLIENT_ID` | Fundi M2M app client id; used only on the HTTP + M2M fallback |\n| `FUNDI_URL`            | Base URL of the fundi worker, for the HTTP + M2M fallback     |\n\nBindings (`wrangler.toml`): `FUNDI_SERVICE` (Service Binding to `mzizi-fundi`'s\n`FundiInternal` entrypoint; what makes fundi reachable in production),\n`ISSUE_DESK` (one Durable Object per signed-in user), `OAUTH_KV` (the OAuth\nprovider's store) and `ANON_RATE_LIMIT` (the free tier's per-IP limit).\n\n> The Connect OAuth app is a **public client (PKCE)** — there is no `WORKOS_CLIENT_SECRET`\n> or WorkOS API key on the worker.\n\n**Optional: fundi-caller extras** (only on the HTTP + M2M fallback, e.g. `wrangler dev`; the\ndeployed Worker uses the Service Binding and needs no M2M secret):\n\n| Name                       | Kind   | Purpose                                             |\n| -------------------------- | ------ | --------------------------------------------------- |\n| `WORKOS_M2M_CLIENT_SECRET` | secret | Fundi M2M app secret (Worker secret; never in code) |\n\n### stdio / local dev\n\nThe stdio bin takes no environment and holds no credential. (`MZIZI_API_BASE` is\ngone: there is no registry API to point at. Build with a different pin instead.)\n\nAt build time only, `MZIZI_REGISTRY_DIR` points the generator at an existing\nmzizi-registry checkout instead of fetching one; its `HEAD` must equal the pin.\n\n---\n\n## Entrypoints\n\n| Surface       | Entry               | Use                                             |\n| ------------- | ------------------- | ----------------------------------------------- |\n| stdio         | `bin: mzizi-mcp`    | Local AI assistants (Claude Code, Cursor, etc.) |\n| HTTP / Worker | `mzizi-mcp/http`    | Cloudflare Workers + any fetch runtime          |\n| Library       | `@nyuchi/mzizi-mcp` | Embed the server factory in your own host       |\n\nSource files:\n\n- `src/server.ts` — `createMziziMcpServer()` factory\n- `src/http.ts` — `createMziziHttpHandler()` for any fetch runtime\n- `src/worker.ts` — Cloudflare Worker: the free-tier front, and the OAuth provider for sign-in\n- `src/access.ts` — which tools need sign-in, the sign-in URL, and the rate limit\n- `src/stdio.ts` — `bin: mzizi-mcp` for the MCP registry / local Claude Code\n\n---\n\n## Build and deploy\n\n```bash\n# generate src/generated/* (registry bundle at the pin + skills); every script below runs it first\npnpm --filter @nyuchi/mzizi-mcp generate\n\n# typecheck\npnpm --filter @nyuchi/mzizi-mcp typecheck\n\n# build (tsc → dist/)\npnpm --filter @nyuchi/mzizi-mcp build\n\n# local Worker dev\npnpm --filter @nyuchi/mzizi-mcp cf:dev\n\n# wrangler dev (workerd) integration: the real Worker anonymously + the signed-in path\npnpm --filter @nyuchi/mzizi-mcp integration\n\n# deploy manually (Workers Builds handles pushes to main)\npnpm --filter @nyuchi/mzizi-mcp cf:deploy\n```\n\n**Cloudflare Workers Builds** deploys this Worker on every push to `main` — it is connected\nto the repo and surfaces as the `Workers Builds: mzizi-mcp` check. There is no deploy workflow\nin `.github/workflows/`; the one that used to live there was redundant and is gone (#98).\n\nA build fetches the pinned mzizi-registry commit (public, anonymous `git fetch` of one\ncommit), so the build environment needs outbound access to github.com. A failed fetch\nfails the build, and a failed build deploys nothing — the running version stays up.\n\n**Rollback:** Cloudflare dashboard → Workers & Pages → `mzizi-mcp` → Deployments → pick\nthe previous version → _Rollback_, or `wrangler rollback` from `mzizi-mcp/`. Reverting\nthe commit on `main` (merges are rebase-only) redeploys the previous source through Workers\nBuilds.\n\n---\n\n## License\n\nApache-2.0. Part of the Mzizi agent tooling ([mzizi.dev](https://mzizi.dev)).\nCopyright the Bundu Foundation; see the repository `NOTICE`.\n","readmeFilename":"README.md"}