Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者提供的说明(英文原文)
Payments for AI agents: gasless USDC on Base + JIT single-use virtual cards, PAN never in context.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
Z_ZERO_API_KEY标为机密的值是你账户的钥匙。千万不要分享给别人,也不要粘贴到聊天里。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"z-zero": {
"command": "npx",
"args": [
"-y",
"z-zero-mcp-server"
],
"env": {
"Z_ZERO_API_KEY": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add z-zero --env Z_ZERO_API_KEY=your-value -- npx -y z-zero-mcp-server运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"z-zero": {
"command": "npx",
"args": [
"-y",
"z-zero-mcp-server"
],
"env": {
"Z_ZERO_API_KEY": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"z-zero": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"z-zero-mcp-server"
],
"env": {
"Z_ZERO_API_KEY": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过 GitHub 账户 Dempty-glitch 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
你需要填写:Z_ZERO_API_KEY
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(1.10.4)于15天前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。
同一分类中有:Spec Driven Development, Remote Desktop Commander, Draugr
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Security scanning for AI agents: SAST, SCA, secrets, IaC, DAST, ranked by real risk.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
AI Agents today can plan, reason, and code — but they are financially blind. They cannot hold money, make payments, or prove their trustworthiness. Every purchase still requires a human to copy-paste a credit card number.
Z-ZERO fixes that. One MCP server gives your agent (Claude, Cursor, any MCP-compatible client) two payment rails — gasless USDC on Base for crypto-native checkouts, and JIT single-use virtual cards for the 99% of the web that only takes cards — while the model never sees a real card number.
npx z-zero-mcp-server
What makes it different:
Z_ZERO_ENABLE_WEB3_PAY=1, because an on-chain send to an address read off a web page cannot be reversed.get_merchant_hints serves platform-specific checkout playbooks (Shopify, Etsy, WooCommerce…).execute_payment hands those criteria back and requires a second call with go or pause; a confirmed purchase seals the answer into the signed receipt. The record is inspectable without pretending the platform judged whether the agent told the truth.failure_class (automatically, not only when an agent remembers to report) and stored as evidence for the merchant knowledge base. Facts are promoted into shared hints only after a later outcome or review verifies them.0xdfd1f2f8…5d7a User AI Agent MCP Tools Z-ZERO API
│ │ │ │ │ "Buy me this │ │ │ │ Shopify item" │ │ │ ├─────────────────▶│ │ │ │ │ read mcp://resources/sop (MANDATORY) │ │ ├─────────────────────▶│ │ │ │◀── platform rules ───┤ │ │ │ + payment SOP │ │ │ │ │ │ │ │ get_merchant_hints("_platform_shopify") │ │ ├─────────────────────▶│ GET /checkout-hints │ │ │ ├─────────────────────▶│ │ │◀── pre_steps+notes ──┤◀──── hints data ─────┤ │ │ │ │ │ │ (fills shipping form, reaches payment page) │ │ │ │ │ │ │ request_payment_token(amount, cart, criteria)│ │ ├─────────────────────▶│ │ │ │◀── temp_auth token ──┤ (1-hour TTL) │ │ │ │ │ │ │ execute_payment(token, checkout_url) │ │ ├─────────────────────▶│ │ │ │◀── purpose_check ────┤ (nothing charged) │ │ │ compare locked criteria with final page │ │ │ │ │ │ │ execute_payment(..., recheck: go | pause) │ │ ├─────────────────────▶│ │ │ │ pause → no card is filled │ │ │ go → Playwright fills + submits, │ │ │ then burns token if confirmed 🔥 │ │ │◀──── ✅ success ─────┤ │ │ "Done! Your item │ │ │ │ is ordered." │ │ │ │◀─────────────────┤ │ │
*The AI agent never touches card data — it only handles single-use tokens. Real card details are injected by Playwright at the last step and wiped from RAM.*
Crypto checkout branch: when
auto_pay_checkoutdetects a crypto-native checkout (EIP-681), it skips the card flow entirely and settles as a gasless USDC transfer on Base — see above. Off by default; enable withZ_ZERO_ENABLE_WEB3_PAY=1.
Z-ZERO is not a checkout bot — it's payment infrastructure for the agentic-commerce era (agentic transactions are projected to reach $1.5T by 2030 — Juniper Research).
Today, the web is built for humans: agents must fill forms and click buttons, and every purchase still needs a human's card. Z-ZERO solves that now — JIT single-use virtual cards + gasless USDC on Base, with card data isolated from the model. Tomorrow, agent payments become a standardized protocol — and what we build along the way is the long-term value:
📖 Full vision & architecture: The Z-Zero Whitebook
npx z-zero-mcp-server
Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": { "z-zero": { "command": "npx", "args": ["-y", "z-zero-mcp-server@latest"], "env": { "Z_ZERO_API_KEY": "zk_live_your_passport_key_here" } } } }
Get your Passport Key at: [z-zero.xyz/dashboard/agents](https://z-zero.xyz/dashboard/agents)
The key you copy from the dashboard (or paste into a chat) is only a one-time bootstrap ticket. The moment your agent connects with it, the MCP server silently swaps it for a fresh key:
~/.z-zero/credentials (mode 0600). It never appears in any LLM conversation, tool result, or config file.~/.z-zero/credentials first; the Z_ZERO_API_KEY env var is only a bootstrap fallback.One key = one machine. All agents on the same machine (Claude Desktop, Claude Code, Cursor, …) share the same MCP install and the same credentials file — install once, every agent can pay. Connecting a *different* machine with a copied key rotates it, which instantly disconnects the original machine. That is deliberate: it blocks key sharing and doubles as an intrusion alarm — if your agent suddenly fails auth, someone else used your key; go to the dashboard and revoke.
Older self-hosted backends without the rotate endpoint keep working — the pasted key simply stays active as before.
zk_live_, get it from the dashboard above| Tool | Description |
|---|---|
list_cards | List all virtual card aliases and balances |
check_balance | Check spendable USD balance for a card alias |
get_deposit_addresses | Get your Base deposit address to top up with USDC (stablecoin on Base) |
set_api_key | Activate a new Passport Key instantly, no restart needed |
show_api_key_status | Check if a Passport Key is currently loaded (prefix only) |
| Tool | Description | |
|---|---|---|
request_payment_token | Issue a JIT single-use virtual-card token for a specific amount (1hr TTL). Pass cart, criteria, and ship_to to create the signed issuance record | |
execute_payment | Two calls required: first without recheck returns the locked criteria and charges nothing; second supplies `recheck: { page_shows, decision: go\ | pause }. pause does not fill the card; confirmed go` returns a signed receipt |
cancel_payment_token | Cancel an unused token and refund to wallet | |
request_human_approval | Pause and request human confirmation before proceeding |
| Tool | Description |
|---|---|
auto_pay_checkout | Fully autonomous checkout — issues a JIT card and completes payment (crypto checkout only with Z_ZERO_ENABLE_WEB3_PAY=1) |
get_merchant_hints | Fetch platform-specific checkout playbook (pre-steps + selectors) from Knowledge Base |
report_checkout_fail | Report a failed checkout with a structured `failure_class` (14-class enum) — feeds the self-healing loop |
verify_receipt | Verify a signed receipt by id — prove a purchase happened instead of claiming it |
📖 Note: Version checking is handled automatically in each API call. No separate tool needed.
Four linked records and controls an agent can use here that it cannot get from a normal virtual card alone.
Pass the cart when you request a token:
request_payment_token({
card_alias: "Card_01", amount: 44.00, merchant: "etsy.com", cart: [{ title: "Ceramic mug — matte white", qty: 2, unit_price: 18.50 }], ship_to: "12 Nguyen Hue, District 1, Ho Chi Minh City, VN", criteria: { source: "user_described", items: [ { key: "item", stated: "two matte-white ceramic mugs" }, { key: "max_total", stated: "no more than $44 delivered" } ] } })
Z-ZERO signs that statement (EIP-191) during issuance. It is a tamper-evident record of the criteria the agent supplied as the owner's instruction — not an independent proof that the human personally approved every line. The shipping address is stored as a hash, never raw.
Before you request a token, compare the checkout page with what the user actually asked for — same items, same quantity, same variant, same destination. A mismatch you catch there costs nothing. After the token, it costs a card.
go or pauseexecute_payment is deliberately a two-call tool:
// Call 1 — omit recheck. No browser, PAN, or charge.
execute_payment({ token, checkout_url, actual_amount: 44.00 }) // → { status: "purpose_check", nothing_charged: true, owner_asked_for: ... }
// Call 2 — describe the final page and make an explicit decision. execute
只显示了开头部分;其余内容请在仓库中阅读