{"_id":"@blocklabs/shop-mcp","_rev":"10-e4321c97e6e6f0741d2139c616c83151","name":"@blocklabs/shop-mcp","dist-tags":{"latest":"1.3.0"},"versions":{"1.0.1":{"name":"@blocklabs/shop-mcp","version":"1.0.1","keywords":["mcp","x402","usdc","agent-commerce","shopping","dropshipping"],"license":"MIT","_id":"@blocklabs/shop-mcp@1.0.1","maintainers":[{"name":"hotbbqsauce-dev","email":"hotbbqsauce@mailbox.org"},{"name":"rebecca-v-l","email":"rebecca.sliedrecht@gmail.com"}],"homepage":"https://github.com/BlockLabs-HQ/blocklabs-server#readme","bugs":{"url":"https://github.com/BlockLabs-HQ/blocklabs-server/issues"},"bin":{"blocklabs-shop-mcp":"src/index.ts"},"dist":{"shasum":"475dfdba040b7df9c497d19da43a56a171f9c1a2","tarball":"https://registry.npmjs.org/@blocklabs/shop-mcp/-/shop-mcp-1.0.1.tgz","fileCount":5,"integrity":"sha512-LMwQWucN4vk88rU5U1W8sQPgdRvgTyNOqvwLz9rnP9sjgUcxC8+jzEHqOVMGa7QuKGI8pajxBdemnqskLOk7Jw==","signatures":[{"sig":"MEUCIB06LApPVcfKA38yzvm/0p+ex7B/dMRcWXp4yNscJYWAAiEAxUNzslYOePjSXqhkoUChPNS4cJEsUpHfrcvmTsDEkJU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIHz8Fmn1HBoyyggJOzL3r6NCB6y/5f2jPg8RQ/K5/EYTAiEA5VRpiGBYo5Cr5D5xGr3lMy5maNLGFEpZLfT6RyPKFc0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16713},"type":"module","engines":{"node":">=24"},"gitHead":"93af650cc232dbcd3b051f5f5215f8b2a7398314","scripts":{"test":"node --test test/mcp.test.ts","start":"node src/index.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"hotbbqsauce-dev","email":"hotbbqsauce@mailbox.org"},"deprecated":"broken when run via npx, use 1.0.3 or later","repository":{"url":"git+https://github.com/BlockLabs-HQ/blocklabs-server.git","type":"git","directory":"mcp"},"_npmVersion":"11.16.0","description":"MCP server exposing the BlockLabs x402 shop (search, quote, order, track) as agent tools","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.4.3","viem":"^2.55.19","@x402/evm":"^2.23.0","@x402/fetch":"^2.23.0","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^7.0.2","@types/node":"^26.2.0"},"_npmOperationalInternal":{"tmp":"tmp/shop-mcp_1.0.1_1787372257072_0.8437385092927918","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@blocklabs/shop-mcp","version":"1.0.2","keywords":["mcp","x402","usdc","agent-commerce","shopping","dropshipping"],"license":"MIT","_id":"@blocklabs/shop-mcp@1.0.2","maintainers":[{"name":"hotbbqsauce-dev","email":"hotbbqsauce@mailbox.org"},{"name":"rebecca-v-l","email":"rebecca.sliedrecht@gmail.com"}],"homepage":"https://github.com/BlockLabs-HQ/blocklabs-server#readme","bugs":{"url":"https://github.com/BlockLabs-HQ/blocklabs-server/issues"},"bin":{"blocklabs-shop-mcp":"src/index.ts"},"dist":{"shasum":"efb4b6c96eeba3e86302e190042362b117236e7d","tarball":"https://registry.npmjs.org/@blocklabs/shop-mcp/-/shop-mcp-1.0.2.tgz","fileCount":5,"integrity":"sha512-/jf6pTOM9XBRt2GmfBHT1LDoZ6ZQvssVU8QTAzHPMX9oO/dPwOVlnB2buPlf5ZnL5hqB2OJ9DiGdO8qM+8E8Yg==","signatures":[{"sig":"MEUCIQCXSz0NSBPSbzLE86QsFYdRneoiA1tttdh8vwp5ofqx+gIgN5ScPR+ia0JMFtpq9qe7T6zkbcWQP0akCQxTs27vw9M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIB6JASKbBPZIgO08luD5tAdhVlQ6OGRq8g0oSWtxoITQAiAtb9TfSk19/L4iKhLV8Nh+0njKmF4l9WehKUdP3XujGg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17059},"type":"module","engines":{"node":">=24"},"gitHead":"672599e803e1163a61a8b771e371e4a5a7e6c4ab","scripts":{"test":"node --test test/mcp.test.ts","start":"node src/index.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"hotbbqsauce-dev","email":"hotbbqsauce@mailbox.org"},"deprecated":"broken when run via npx, use 1.0.3 or later","repository":{"url":"git+https://github.com/BlockLabs-HQ/blocklabs-server.git","type":"git","directory":"mcp"},"_npmVersion":"11.16.0","description":"MCP server exposing the BlockLabs x402 shop (search, quote, order, track) as agent tools","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.4.3","viem":"^2.55.19","@x402/evm":"^2.23.0","@x402/fetch":"^2.23.0","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^7.0.2","@types/node":"^26.2.0"},"_npmOperationalInternal":{"tmp":"tmp/shop-mcp_1.0.2_1787392155753_0.5527962906869979","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@blocklabs/shop-mcp","version":"1.0.3","keywords":["mcp","x402","usdc","agent-commerce","shopping","dropshipping"],"license":"MIT","_id":"@blocklabs/shop-mcp@1.0.3","maintainers":[{"name":"hotbbqsauce-dev","email":"hotbbqsauce@mailbox.org"}],"homepage":"https://github.com/BlockLabs-HQ/blocklabs-server#readme","bugs":{"url":"https://github.com/BlockLabs-HQ/blocklabs-server/issues"},"bin":{"blocklabs-shop-mcp":"dist/index.js"},"dist":{"shasum":"cf38d15c6872e53caeb5088b76cb6f5491428cb7","tarball":"https://registry.npmjs.org/@blocklabs/shop-mcp/-/shop-mcp-1.0.3.tgz","fileCount":8,"integrity":"sha512-NxlhK8xvb6fz3qSP/vwOvjfBF0INcYbjZFtkZkwR5dNOhUQUdK48w+i53jWR1mCWfMEPDEai6leVocspufwHcw==","signatures":[{"sig":"MEYCIQDVUtZ3vnJ1b9939yQI7xNMkfc1UvpfHoCjN/AUhoJvNAIhAKj5/JVZLZ+oo2uxMyZ22/lD9CRZdO142SMIP1g1F0SI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDVsPyd2fMSuTYBlUkDQzJTGuOezd9QEG3T7/aAYNkSnQIhAKPy5cliN/l55DZJrvFGD1g0kh+jD9mKiPl4pwuIZTKD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":30394},"type":"module","engines":{"node":">=22"},"gitHead":"a7a93ddcb250f065e636128e1e5a873f5cfaf88a","scripts":{"test":"node --test test/mcp.test.ts","build":"tsc -p tsconfig.build.json","start":"node src/index.ts","typecheck":"tsc --noEmit","prepublishOnly":"pnpm build && pnpm test"},"_npmUser":{"name":"hotbbqsauce-dev","email":"hotbbqsauce@mailbox.org"},"repository":{"url":"git+https://github.com/BlockLabs-HQ/blocklabs-server.git","type":"git","directory":"mcp"},"_npmVersion":"11.16.0","description":"MCP server exposing the BlockLabs x402 shop (search, quote, order, track) as agent tools","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.4.3","viem":"^2.55.19","@x402/evm":"^2.23.0","@x402/fetch":"^2.23.0","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^7.0.2","@types/node":"^26.2.0"},"_npmOperationalInternal":{"tmp":"tmp/shop-mcp_1.0.3_1787403850031_0.5064125398696895","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@blocklabs/shop-mcp","version":"1.1.0","keywords":["mcp","x402","usdc","agent-commerce","shopping","dropshipping"],"license":"MIT","_id":"@blocklabs/shop-mcp@1.1.0","maintainers":[{"name":"hotbbqsauce-dev","email":"hotbbqsauce@mailbox.org"}],"homepage":"https://github.com/BlockLabs-HQ/blocklabs-server#readme","bugs":{"url":"https://github.com/BlockLabs-HQ/blocklabs-server/issues"},"bin":{"blocklabs-shop-mcp":"dist/index.js"},"dist":{"shasum":"70a977da0469ab61231e33a9c1cb688c09b25fc8","tarball":"https://registry.npmjs.org/@blocklabs/shop-mcp/-/shop-mcp-1.1.0.tgz","fileCount":8,"integrity":"sha512-6noZgyxbInOHrd0Ut8hv+9OayEpQKyv+2smV32VC3+6a9R3M7VaghxaRiyL25YjwXcnIB5LGviJnBe2cJShyAQ==","signatures":[{"sig":"MEQCIHVepULfE1CL0E2ZZSmGfaLnyEmEI2x5UEG9AlRpWvxYAiAwJp8G0rMBGSG9r0xs1xnnhN+8pKTQrtCqZ6BhTq6Z5w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCIV2dWojJo2rl7A9WMCx9yA7wpu5vsMFHypa1+qd04wwIgIeot2pg8olEfB2pOzHmvfUbH9+q50wNxJR1LbtB3fVo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33051},"type":"module","engines":{"node":">=22"},"gitHead":"6a47276879371fbd2f2df3d8dee34ad8f404eaab","scripts":{"test":"node --test test/mcp.test.ts","build":"tsc -p tsconfig.build.json","start":"node src/index.ts","typecheck":"tsc --noEmit","prepublishOnly":"pnpm build && pnpm test"},"_npmUser":{"name":"hotbbqsauce-dev","email":"hotbbqsauce@mailbox.org"},"repository":{"url":"git+https://github.com/BlockLabs-HQ/blocklabs-server.git","type":"git","directory":"mcp"},"_npmVersion":"11.16.0","description":"MCP server exposing the BlockLabs x402 shop (search, quote, order, track) as agent tools","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.4.3","viem":"^2.55.19","@x402/evm":"^2.23.0","@x402/fetch":"^2.23.0","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^7.0.2","@types/node":"^26.2.0"},"_npmOperationalInternal":{"tmp":"tmp/shop-mcp_1.1.0_1787405883916_0.7589305215686195","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@blocklabs/shop-mcp","version":"1.2.0","keywords":["mcp","x402","usdc","agent-commerce","shopping","dropshipping"],"license":"MIT","_id":"@blocklabs/shop-mcp@1.2.0","maintainers":[{"name":"hotbbqsauce-dev","email":"hotbbqsauce@mailbox.org"}],"homepage":"https://github.com/BlockLabs-HQ/blocklabs-server#readme","bugs":{"url":"https://github.com/BlockLabs-HQ/blocklabs-server/issues"},"bin":{"blocklabs-shop-mcp":"dist/index.js"},"dist":{"shasum":"07bc9a7c517ae4dfe44df79bde04653bf4474f9c","tarball":"https://registry.npmjs.org/@blocklabs/shop-mcp/-/shop-mcp-1.2.0.tgz","fileCount":8,"integrity":"sha512-UJLNqUcm5wXHEnfqcNP4vPiJU3U6Xu8/fzD1+wkrzirCyuo5hOaTs0bcB9kIKK5LA4VW097hIL8CvTPTTjN6gA==","signatures":[{"sig":"MEQCIGyem0vqwnnw3hiemDPJiVysakRIcQYjEn8DhwLPzIE6AiBW5yX9kNcirs/MGzjXmNb0jvXHRGy8oWKX3BompM9Y0Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIExPM0WLhr3wAtvOlW1AvYLjy0+4UMgXwu7c7FNkFeH4AiATAm9KLOCozhfEGTIeglIJF9pPxkFsE4btz52hPL7KKQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":35927},"type":"module","engines":{"node":">=22"},"gitHead":"a9d6e03fc4bc56e4405047d775f6153bf4735420","scripts":{"test":"node --test test/mcp.test.ts","build":"tsc -p tsconfig.build.json","start":"node src/index.ts","typecheck":"tsc --noEmit","prepublishOnly":"pnpm build && pnpm test"},"_npmUser":{"name":"hotbbqsauce-dev","email":"hotbbqsauce@mailbox.org"},"repository":{"url":"git+https://github.com/BlockLabs-HQ/blocklabs-server.git","type":"git","directory":"mcp"},"_npmVersion":"11.16.0","description":"MCP server exposing the BlockLabs x402 shop (search, quote, order, track) as agent tools","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.4.3","viem":"^2.55.19","@x402/evm":"^2.23.0","@x402/fetch":"^2.23.0","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^7.0.2","@types/node":"^26.2.0"},"_npmOperationalInternal":{"tmp":"tmp/shop-mcp_1.2.0_1787406646720_0.19245995135688276","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"_id":"@blocklabs/shop-mcp@1.3.0","bin":{"blocklabs-shop-mcp":"dist/index.js"},"bugs":{"url":"https://github.com/BlockLabs-HQ/blocklabs-server/issues"},"dist":{"shasum":"ddc92c87792533470625962924aa839776050643","tarball":"https://registry.npmjs.org/@blocklabs/shop-mcp/-/shop-mcp-1.3.0.tgz","fileCount":8,"integrity":"sha512-yC5ErwfxZbWkcG6q+SwWsovShsGe8jcpBG/4KW6xU3gO9Z3LLfvrfKYsBCfWzgvbfGRTlysnoBVKbCDdeJeiRQ==","signatures":[{"sig":"MEUCIDkmByq+Umj2itQgv1u2C9boRAihjd6RAtQsBSMzLnuEAiEAvZqEUD1GijoG8eXS9bZu32aq3HsKO/Rt3cRkSQCkrqQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIElligDr6piHOQejyn/TwRR7aVz2Xo7Q17dtIAFRVruNAiEA8s9vFWSqMOYYH8fU9H/bhTMy3ghCA98QMYVb/FP3rlc="}],"unpackedSize":38812},"name":"@blocklabs/shop-mcp","type":"module","engines":{"node":">=22"},"gitHead":"3345855b3a9cf4ff3f68f074c5c5d2c83575661a","license":"MIT","scripts":{"test":"node --test test/mcp.test.ts","build":"tsc -p tsconfig.build.json","start":"node src/index.ts","typecheck":"tsc --noEmit","prepublishOnly":"pnpm build && pnpm test"},"version":"1.3.0","_npmUser":{"name":"hotbbqsauce-dev","email":"hotbbqsauce@mailbox.org"},"homepage":"https://github.com/BlockLabs-HQ/blocklabs-server#readme","keywords":["mcp","x402","usdc","agent-commerce","shopping","dropshipping"],"repository":{"url":"git+https://github.com/BlockLabs-HQ/blocklabs-server.git","type":"git","directory":"mcp"},"_npmVersion":"11.16.0","description":"MCP server exposing the BlockLabs x402 shop (search, quote, order, track) as agent tools","directories":{},"maintainers":[{"name":"hotbbqsauce-dev","email":"hotbbqsauce@mailbox.org"}],"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.4.3","viem":"^2.55.19","@x402/evm":"^2.23.0","@x402/fetch":"^2.23.0","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^7.0.2","@types/node":"^26.2.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/shop-mcp_1.3.0_1787407512799_0.8741129757023955"}}},"time":{"created":"2026-08-22T04:06:49.697Z","modified":"2026-08-22T14:05:13.069Z","1.0.0":"2026-08-22T04:06:50.102Z","1.0.1":"2026-08-22T04:17:37.206Z","1.0.2":"2026-08-22T09:49:15.825Z","1.0.3":"2026-08-22T13:04:10.188Z","1.1.0":"2026-08-22T13:38:04.021Z","1.2.0":"2026-08-22T13:50:46.820Z","1.3.0":"2026-08-22T14:05:12.904Z"},"bugs":{"url":"https://github.com/BlockLabs-HQ/blocklabs-server/issues"},"license":"MIT","homepage":"https://github.com/BlockLabs-HQ/blocklabs-server#readme","keywords":["mcp","x402","usdc","agent-commerce","shopping","dropshipping"],"repository":{"url":"git+https://github.com/BlockLabs-HQ/blocklabs-server.git","type":"git","directory":"mcp"},"description":"MCP server exposing the BlockLabs x402 shop (search, quote, order, track) as agent tools","maintainers":[{"name":"hotbbqsauce-dev","email":"hotbbqsauce@mailbox.org"}],"readme":"# @blocklabs/shop-mcp\n\nMCP server that lets any MCP-capable agent (Claude Desktop, Claude Code, etc.)\nsearch and buy from the BlockLabs x402 shop. Paid calls sign USDC payments\nautomatically with the configured wallet; every payment is capped.\n\n## Tools\n\n| Tool | Cost | What it does |\n|---|---|---|\n| `shop_info` | free | Health, live search price, accepted networks, active wallet |\n| `search_products` | ~$0.001/query | Typo-tolerant search over 300k+ products |\n| `get_product` | ~$0.001 | Full product detail by catalog id or SKU |\n| `browse_categories` | ~$0.001 | Category tree with live in-stock counts |\n| `get_shipping_options` | ~$0.001 | Carrier/cost/delay menu for a basket |\n| `get_order_quote` | free | Signed all-in USD quote (items + shipping + taxes) |\n| `place_order` | quote price | Quotes, enforces the budget, pays, places the order |\n| `track_order` | free | Order status, fulfillment ids, carrier tracking |\n\n`place_order` always re-quotes first and refuses **before signing** when the\nquote exceeds `maxUsd` (per call) or `MAX_ORDER_USD` (server cap). The x402\nclient's own SpendControls enforce the same caps a second time at signing.\n\n## Environment\n\n| Var | Default | Notes |\n|---|---|---|\n| `SHOP_BASE_URL` | `https://shop.blocklabs.nl` | |\n| `X402_NETWORK` | `eip155:8453` | Base mainnet; use `eip155:84532` against a testnet shop |\n| `EVM_PRIVATE_KEY` | – | Funded USDC wallet. Omit = free tools only |\n| `MAX_SEARCH_USD` | `0.01` | Per-search payment cap |\n| `MAX_ORDER_USD` | `50` | Per-order payment cap |\n\n## Claude Desktop (`claude_desktop_config.json`)\n\n```json\n{\n  \"mcpServers\": {\n    \"blocklabs-shop\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@blocklabs/shop-mcp@latest\"],\n      \"env\": {\n        \"EVM_PRIVATE_KEY\": \"0x...\",\n        \"MAX_ORDER_USD\": \"25\"\n      }\n    }\n  }\n}\n```\n\n## Claude Code (`.mcp.json` in any project)\n\n```json\n{\n  \"mcpServers\": {\n    \"blocklabs-shop\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@blocklabs/shop-mcp@latest\"],\n      \"env\": { \"EVM_PRIVATE_KEY\": \"0x...\" }\n    }\n  }\n}\n```\n\nNode >= 22 required. `pnpm -C mcp test` runs the\nhermetic suite (in-memory MCP transport against a mock shop, no chain/DB).\n","readmeFilename":"README.md"}