Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者提供的说明(英文原文)
Self-custodial x402 wallet for AI agents: pay any service in USDC or $THREE from your own key.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
SOLANA_SECRET_KEY, SOLANA_RPC_URL, MAX_PAY_USD, REQUIRE_CONFIRM, THREE_WS_BASE标为机密的值是你账户的钥匙。千万不要分享给别人,也不要粘贴到聊天里。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"x402": {
"command": "npx",
"args": [
"-y",
"@three-ws/x402-mcp"
],
"env": {
"SOLANA_SECRET_KEY": "your-value",
"SOLANA_RPC_URL": "your-value",
"MAX_PAY_USD": "your-value",
"REQUIRE_CONFIRM": "your-value",
"THREE_WS_BASE": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add x402 --env SOLANA_SECRET_KEY=your-value --env SOLANA_RPC_URL=your-value --env MAX_PAY_USD=your-value --env REQUIRE_CONFIRM=your-value --env THREE_WS_BASE=your-value -- npx -y @three-ws/x402-mcp运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"x402": {
"command": "npx",
"args": [
"-y",
"@three-ws/x402-mcp"
],
"env": {
"SOLANA_SECRET_KEY": "your-value",
"SOLANA_RPC_URL": "your-value",
"MAX_PAY_USD": "your-value",
"REQUIRE_CONFIRM": "your-value",
"THREE_WS_BASE": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"x402": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@three-ws/x402-mcp"
],
"env": {
"SOLANA_SECRET_KEY": "your-value",
"SOLANA_RPC_URL": "your-value",
"MAX_PAY_USD": "your-value",
"REQUIRE_CONFIRM": "your-value",
"THREE_WS_BASE": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
SOLANA_RPC_URL envMAX_PAY_USD envREQUIRE_CONFIRM envTHREE_WS_BASE env这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过 GitHub 账户 nirholas 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
你需要填写:SOLANA_SECRET_KEY
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(0.2.3)于27天前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。
同一分类中有:Spec Driven Development, Remote Desktop Commander, EmbeddedCI BenchPod
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ 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.
Drive a BenchPod hardware-in-the-loop bench: power, flash, UART, I2C, CAN, analog and logic.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
@three-ws/x402-mcp
Give any AI agent a self-custodial x402 wallet — discover, inspect, and pay any paid service in USDC from your own Solana key.
A Model Context Protocol server that turns any AI assistant into an autonomous economic agent on the x402 network. Search the live bazaar for paid services, read an endpoint's price before committing money, and
pay_and_callany x402 service in USDC — settled on Solana with your own key, never a custodial wallet.
This is the *buyer* side of the three.ws agent economy. The payment dance and Solana exact-scheme signing are handled by the real @x402/* libraries — nothing is mocked.
npm install @three-ws/x402-mcp
Or run with npx:
SOLANA_SECRET_KEY=<base58> npx @three-ws/x402-mcp
Claude Code, one line:
claude mcp add x402 --env SOLANA_SECRET_KEY=<base58> -- npx -y @three-ws/x402-mcp
Claude Desktop / Cursor (claude_desktop_config.json or mcp.json):
{
"mcpServers": { "x402": { "command": "npx", "args": ["-y", "@three-ws/x402-mcp"], "env": { "SOLANA_SECRET_KEY": " ", "SOLANA_RPC_URL": "https://your-rpc-provider", "MAX_PAY_USD": "1" } } } }
SOLANA_SECRET_KEY is only needed to spend (pay_and_call, and x402_wallet defaulting to your wallet). find_services and inspect_endpoint work with no key.
| Tool | Type | What it does |
|---|---|---|
x402_wallet | read-only | A wallet's address + live SOL/USDC balance. Defaults to your signer wallet — confirm funds before paying. |
find_services | read-only | Search the live x402 bazaar (PayAI + Coinbase CDP) for paid HTTP/MCP services with prices. |
inspect_endpoint | read-only | Read any endpoint's 402 payment requirements (scheme, network, asset, price, pay-to) without paying. |
pay_and_call | execution | Pay an x402 endpoint in USDC from your Solana key and return its result. Bounded by MAX_PAY_USD. |
spending_report | read-only | Totals of everything pay_and_call and the named tools below have paid, by merchant and by day. |
Plus 17 named tools, one per fixed three.ws x402 service, each cheaper for a model to call correctly than composing a raw pay_and_call(url):
| Tool | Price | Endpoint |
|---|---|---|
weather_forecast | $0.001 | /api/x402/weather-guard-forecast |
weather_go_no_go | $0.002 | /api/x402/weather-guard-decision |
carbon_now | $0.001 | /api/x402/carbon-now |
carbon_best_window | $0.002 | /api/x402/carbon-best-window |
domain_rdap_check | $0.001 | /api/x402/domains-check |
domain_rdap_check_bulk | $0.005 | /api/x402/domains-bulk |
research_search | $0.002 | /api/x402/research-search |
research_paper | $0.003 | /api/x402/research-paper |
research_bibliography | $0.005 | /api/x402/research-bibliography |
book_search | $0.001 | /api/x402/books-search |
book_read | $0.01 | /api/x402/books-read |
news_wire_search | $0.003 | /api/x402/news-wire-query |
news_wire_poll | $0.002 | /api/x402/news-wire-pulse |
transit_plan | $0.002 | /api/x402/transit-plan |
transit_delays | $0.001 | /api/x402/transit-delays |
places_search | $0.002 | /api/x402/places-search |
places_detail | $0.002 | /api/x402/places-detail |
Each takes the same arguments as its endpoint (see src/tools.json for the full schemas) and pays with the same SOLANA_SECRET_KEY / session_token settlement modes as pay_and_call, gated by the same MAX_PAY_USD cap and REQUIRE_CONFIRM flag. Prefer a named tool over pay_and_call whenever one exists for the endpoint you need: the fixed schema and stated price make the model far less likely to misdial the call.
pay_and_call carries destructiveHint: true, so annotation-aware clients (Claude Code, Claude Desktop, Cursor) prompt before running it. Beyond the client hint, every payment is bounded server-side: it probes the 402 first and refuses if the price exceeds max_usd or MAX_PAY_USD (default $1) before any money moves, and with REQUIRE_CONFIRM on (default) the call refuses until re-issued with confirm: true. Only the Solana (solana:*) exact-scheme requirement is settled — with the key you control.
`x402_wallet` — address (optional base58; defaults to the signer wallet).
`find_services` — query (required), type (http | mcp, default http), network (CAIP-2 filter), max_price_usdc, limit (1–100).
`inspect_endpoint` — url (required), method (GET | POST), body (object).
`pay_and_call`: url (required), method (GET | POST), body (object), max_usd (lowers the cap for this call), secret (per-call signer override), confirm (must be true when REQUIRE_CONFIRM is on), session_token, token, idempotency_key.
It has two settlement modes:
SOLANA_SECRET_KEY, or the per-call secret. You hold the key.session_token, a three.ws Payment Session token, and the platform wallet signs on your behalf while enforcing that session's budget, host allowlist, and per-transaction cap. No private key needed. Solana USDC and Base USDC sessions are both supported, and secret and token are ignored in this mode.token selects the settlement asset: usdc (default), or three for the $THREE platform token when the endpoint advertises it. idempotency_key deduplicates a call, which is recommended with session_token so a retry cannot double-charge.
// inspect_endpoint — what does it cost? (no payment)
{ "url": "https://three.ws/api/x402/vanity?prefix=ab" }
{ "ok": true, "paid": true, "accepts": [ { "scheme": "exact", "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp", "asset": "EPjFW…", "price": 50000 } ], "payable_with_this_wallet": true }
// pay_and_call — confirm:true required by default
{ "url": "https://three.ws/api/x402/vanity?prefix=ab", "confirm": true }
{ "ok": true, "paid": true, "payer": "Gx5E…", "price_usd": 0.05, "settlement": { … }, "result": { … } }
Runnable, no-payment examples live in examples/:
node examples/list-tools.mjs # every tool with its full input schema
node examples/inspect-price.mjs # find_services + inspect_endpoint on live data
Both spawn this server over stdio and hit the real bazaar. Neither reads a key or calls pay_and_call, so nothing is signed and nothing is spent. See examples/README.md for expected output.
pay_and_call speaks both x402 wire formats on the same Solana key: v2 (CAIP-2 network strings, e.g. solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp) and v1 (flat network strings, e.g. solana), the format most of the open x402 bazaar, and services built on the original x402/x402-fetch packages, still speak. When a seller advertises both, v2 is always preferred. Settlement receipts come back in the same shape (success, transaction, network, payer) regardless of which version paid, so nothing downstream needs to know which one was used.
https; only http://localhost is allowed for dev). Public cluster works for reads; bring your own for payment traffic.SOLANA_SECRET_KEY (or per-call secret).| Variable | Required | Default |
|---|---|---|
SOLANA_SECRET_KEY | to pay only | — |
SOLANA_RPC_URL | no | https://api.mainnet-beta.solana.com |
MAX_PAY_USD | no | 1 |
REQUIRE_CONFIRM | no | true |
THREE_WS_BASE | no | https://three.ws |
X402_MCP_LEDGER_PATH | no | ~/.three-ws/x402-mcp-ledger.jsonl |
X402_MCP_LEDGER_PATH points at the append-only JSON-lines file every settled payment (pay_and_call and the named tools) is recorded to; spending_report reads it back.
Part of the three.ws SDK suite — 3D AI agents, on-chain identity, and agent payments.
Website · Changelog · GitHub