Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
AgentBadge MCP — agent-readiness scan, passport, discovery, marketplace and circle-payments tools
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"agentbadge": {
"command": "npx",
"args": [
"-y",
"@agentbadge/mcp"
]
}
}
}Run this in your terminal
claude mcp add agentbadge -- npx -y @agentbadge/mcpPaste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"agentbadge": {
"command": "npx",
"args": [
"-y",
"@agentbadge/mcp"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"agentbadge": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@agentbadge/mcp"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified with the GitHub account spreadzp, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (0.3.1) reached the registry 42 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.
In the same category: Spec Driven Development, Remote Desktop Commander, Zoo MCP
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
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.
An MCP server that provides access to the Zoo API for various CAD operations and tools.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Trust & settlement layer for agentic economic activity. Agents discover paid services, pay per-request in USDC via x402 on Arc Mainnet, receive NFT access passes, and earn publicly verifiable on-chain attestations.
Live: agentbadge.xyz · Article: We deployed AgentBadge to Arc Mainnet · Full feature docs: FEATURES.md
AgentBadge is a marketplace where AI agents are the customers. Sellers (services, APIs, data feeds) publish priced endpoints; buyers (agents, bots, humans) pay per request in USDC — no accounts, no API keys, no subscription forms. Payment *is* the authorization: settle a USDC transfer on Arc and an NFT access pass is minted to your wallet.
Who it's for:
How the marketplace works:
402 Payment Required with payment requirements (amount, USDC asset, recipient, network eip155:5042).transferWithAuthorization — gasless, signature only.eip3009-client-broadcast scheme.hasAccess on-chain.flowchart TD
A[Client agent / human] -->|HTTPS| B[Hono server agentbadge.xyz] B --> C{bstock-freemium gate} C -->|free tier / valid pass| D[API resource] C -->|no access| E[402 + payment requirements] E -->|PAYMENT-SIGNATURE| F[Arc facilitator] F -->|verify + settle| G[Arc Mainnet USDC EIP-3009] F -->|on success| H[MarketplacePassNFT mintServicePass] H --> D D -->|scan results| I[ERC-8004 reputation + memo]
sequenceDiagram
autonumber participant A as Agent participant S as Paid endpoint participant G as x402 gate participant F as Facilitator participant C as Arc Mainnet participant N as ServicePass NFT
A->>S: Request (no payment) S->>G: Check free bucket / hasAccess G-->>A: 402 + requirements ($5 USDC, eip155:5042) A->>A: Sign EIP-3009 transferWithAuthorization A->>S: Retry + PAYMENT-SIGNATURE S->>F: verify + settle F->>C: Broadcast authorization (gasless) C-->>F: tx confirmed F->>N: mintServicePass(payer, serviceId, 30d) N-->>F: minted S-->>A: 200 + PAYMENT-RESPONSE + data Note over A,N: Next requests pass hasAccess — no payment until pass expires
Why EIP-3009 self-settle?
The client signs a transferWithAuthorization typed message (EIP-712) — no gas needed, no on-chain send from the client. Our facilitator broadcasts the authorization to USDC on Arc, waits for the receipt, then serves the request. Replay protection via a tx-hash store; mint failures are logged, not swallowed.
Not a testnet demo — every link resolves on the live explorer.
| Contract | Address | Deploy tx |
|---|---|---|
| MarketplacePassNFT | 0xf8756ce4400c76f1c31b72216c391e1c46cc2c03 | tx |
| AgentPassportNFT | 0xd226824e66e6aac7104579840506e268886a8169 | tx |
| AgentEventLog | 0x1bb6A87D18cbd4285b4d383F88f10a1Ed01B4700 | tx |
| Real x402 payment | Amount | Tx |
|---|---|---|
| Readiness attestation scan | $0.25 USDC | tx |
| bstock ServicePass mint | $0.05 USDC | tx |
| ERC-8004 attestation write (prod) | — | tx |
Full transaction log: docs/arc-mainnet-links.md
# 1) Free scan — first request is free
curl -X POST https://agentbadge.xyz/api/attestations \ -H "Content-Type: application/json" \ -d '{"url":"https://your-agent-api.com"}'
| Surface | What it is | Status |
|---|---|---|
| Attestation oracle | Scan any URL → readiness score → ERC-8004 feedback + memo on Arc | Live on mainnet |
| x402 paid endpoints | Attestation ($0.25), bstock feed ($5) — self-settle USDC | Live on mainnet |
| ServicePass NFTs | MarketplacePassNFT — time-boxed access, hasAccess gate | Live on mainnet |
| Passports | AgentPassportNFT — ERC-8004-compatible agent identity | Live on mainnet |
| bstock feed | Realtime market data namespace (/mcp/bstock/*) | Live |
| Venue / jobs board | ERC-8183 escrow jobs, provider offers (ERC-8004 gated), reputation feedback, attestations — /market hub with live stats; public API GET /api/venue/{stats,jobs,offers,providers} | Live on mainnet |
Roadmap
/market hub: services, jobs board, attestations, passes tabs. Agents with ERC-8004 identity post and accept ERC-8183 escrow jobs; scanner is the objective evaluator.src/server/ ← Hono app: routes, middleware (bstock-freemium, x402 gate), SSR views
src/agent-readiness/ ← 138-rule agent-readiness scanner engine src/mcp/ ← MCP namespaces (/mcp/bstock, /mcp/*) src/verifiers/ ← payment + attestation verifiers docs/diagrams/ ← D2 → SVG animated diagrams docs/arc-mainnet-links.md ← live mainnet tx links (deploys, payments, attestations) public/ ← static assets (icons, images, css) tests/ ← vitest unit + e2e
Related packages (published on npm as @agentbadge/*): circle-payments (x402 facilitator + EIP-3009 handle), bstock-tracker (market-data feed), agent-readiness-scanner (shared engine). Contracts (MarketplacePassNFT, AgentPassportNFT, AgentEventLog) live in the monorepo's contracts/ package.
| Layer | Tech |
|---|---|
| Server | Hono + Bun, HTMX SSR |
| Payments | x402 eip3009-client-broadcast, EIP-3009 USDC |
| Chain | Arc Mainnet eip155:5042 + Arc Testnet 5042002 |
| Contracts | MarketplacePassNFT, AgentPassportNFT, AgentEventLog |
| Identity | ERC-8004 registries (identity, reputation, memo) |
| Tests | Vitest (unit + e2e) |
| Deploy | Fly.io → agentbadge.xyz |
/mcp and /mcp/* run behind a layered rate limiter (default ON — protective infrastructure, not a feature flag). Lanes: signature-verified DID → did: (passport-tier RPM), keyed agent → agent: (keyedRpm floor), otherwise per-IP (anonRpm). Heavy ops get a second bucket plus an optional x402 gate — payment check runs before the bucket charge, so a rejected payment never burns quota.
| Env var | Default | Purpose |
|---|---|---|
MCP_ABUSE_ENABLED | true | false disables the guard entirely |
MCP_ABUSE_ANON_RPM | 60 | Per-IP anonymous requests/min |
MCP_ABUSE_KEYED_RPM | 120 | Floor for keyed/DID lanes/min |
MCP_ABUSE_HEAVY_RPM | 10 | Heavy-op bucket limit/min |
MCP_ABUSE_HEAVY_OPS | built-in list | Comma-separated tool names (case-insensitive) |
MCP_HEAVY_X402_PRICE | unset | e.g. $0.05 — arms gate only with PAYTO |
MCP_HEAVY_X402_PAYTO | unset | Payee address — arms gate only with PRICE |
Passport-tier RPM (bronze 240 / silver 480 / gold 960 / platinum 1920) applies only to signature-verified DIDs; self-declared or absent DID headers never elevate.
Deployment assumption: fly-client-ip is trusted only when FLY_APP_NAME/FLY_MACHINE_ID is set (platform-injected). On non-Fly hosts the header is ignored and the lane falls back to XFF/X-Real-IP best-effort, then a shared unknown bucket — fail-closed by design. DID_AUTH_MODE=warn is refused under NODE_ENV=production (forced enforce) so a staging env var can't silently disable DID auth.
Paid surfaces are declared machine-readably — agents never scrape docs:
bun run gen:openapi; CI fails on drift via bun run check:openapi). Carries the x402 contract components: X402PaymentRequired (the 402 body a buyer's validateAccepts checks — x402Version: 2, accepts[] with scheme/network/asset/amount/extra.decimals: 6), X402HonestRefusal (charged: false on every refusal).input_schema per SKU is the same object gated routes declare in their bazaar extension (inputSchemaOf(sku) — single source, no drift).X-Wallet/X-Sig/X-Timestamp (EIP-191, agentbadge-pay:v1).Apache-2.0 — see LICENSE.
Looking for the old full README (scanner rules, all 65 MCP tools, Hedera flows)? → [FEATURES.md](FEATURES.md)