X402 Sms

io.github.UltraStarz由 GitHub 帳號 UltraStarz 發布v0.1.0更新於 Oct 24, 2026

Pay-per-call MCP server. $0.03 USDC sends one transactional SMS to a US phone number via x402.

已驗證STDIO僅桌面金融溝通與協作

概覽

AI 產生的概覽

讓助理傳送交易型簡訊到美國手機號碼,並從設定的錢包按則支付 USDC 費用。

可以做什麼
提供 send_sms 工具,透過第三方賣家的免付費電話號碼,將交易型簡訊傳送到美國(+1 E.164)號碼。每次呼叫花費 0.03 USDC,透過 x402 從設定的買家錢包自動簽署付款,並回傳 Twilio SID 與鏈上結算雜湊。若簡訊內容缺少退訂說明,伺服器會自動附加;同時區分待審核、速率限制與 Twilio 拒絕等不同錯誤型態。
適用情境
適合助理需要以簡訊通知已同意的美國收件者的情境,例如告知某人長時間任務已完成。適用於一次性交易型通知,而非行銷、大量發送或非美國號碼的簡訊。
執行需求
透過 npx(Node.js)以 stdio MCP 伺服器在本機執行,僅支援桌面用戶端。需要 BUYER_PRIVATE_KEY,也就是 Base Sepolia 上錢包的以太坊私鑰,錢包需有少量 ETH 作為 gas 及 USDC 用於付款。SMS_URL 為選用,預設指向賣家的公開端點。需要網路存取。
安裝前請注意
BUYER_PRIVATE_KEY 是可用於花費的錢包私鑰,請使用一次性的充值錢包,並避免放入共用設定。每次呼叫花費 0.03 USDC,即使 Twilio 端拒絕也算一次傳送嘗試。營運者須依 TCPA 規則確保收件者已同意;禁止行銷、未同意、非美國及受限內容的簡訊。簡訊內容與付款資訊會傳送給第三方賣家,傳送紀錄會被保留以供稽核。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 X402 Sms,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

x402-sms-mcp

A paid MCP server that lets AI agents send SMS messages to US phone numbers.

Each send_sms tool call:

  1. Sends a transactional SMS via the seller's toll-free number (Twilio verification in progress)
  2. Auto-appends Reply STOP to opt out if the body doesn't include opt-out language
  3. Costs $0.03 USDC per message, paid automatically from the configured wallet via x402

No API keys. No Twilio account. The agent pays the toll, the message goes out.

Status (2026-05-22): Public beta on Base Sepolia (testnet). The seller's toll-free number is undergoing Twilio TFV approval (submitted 2026-05-14, still in queue). During this window /send calls short-circuit to a 503 delivery_pending_tfv_approval response before the buyer wallet signs anything, so no USDC is moved. The day Twilio approves the number, delivery flips on; pricing flips to Base mainnet shortly after.

Install in Claude Desktop / Cursor / Windsurf

Add this to your MCP config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

json
{  "mcpServers": {    "x402-sms": {      "command": "npx",      "args": ["-y", "x402-sms-mcp"],      "env": {        "BUYER_PRIVATE_KEY": "0xYOUR_PRIVATE_KEY"      }    }  }}

Restart your MCP client. A send_sms tool will appear.

What you need

A wallet on Base Sepolia (testnet) funded with:

Generate a throwaway key:

bash
node -e "const {generatePrivateKey,privateKeyToAccount}=require('viem/accounts');const k=generatePrivateKey();console.log('PRIVATE_KEY=',k);console.log('ADDRESS=',privateKeyToAccount(k).address)"

Use the printed address to claim from faucets, then put the printed key into your MCP config.

Try it

In Claude Desktop, ask:

Text my cell at +15551234567 when this long-running task finishes. The recipient (me) consents to receive this message.

Claude will call send_sms with opt_in_attestation: true. You'll get back a Twilio SID + the on-chain settlement hash. The transfer is visible at https://sepolia.basescan.org.

Compliance — please read

This MCP wraps a regulated SMS gateway. The operator (you) is responsible for ensuring every recipient has consented to receive messages before invoking send_sms. The opt_in_attestation: true argument is your legal attestation under TCPA and CTIA short-code/long-code rules.

Do NOT use this MCP to:

  • Send marketing or promotional content
  • Text strangers, scraped lists, or anyone who hasn't opted in
  • Send to non-US numbers (the seller currently rejects non-+1 E.164)
  • Send anything related to S.H.A.F.T.-C (Sex, Hate, Alcohol, Firearms, Tobacco, Cannabis)

The seller-side automatically:

  • Appends Reply STOP to opt out to every message
  • Honors carrier-level STOP/HELP keyword handling
  • Logs each send for audit purposes

If you have any doubt about consent, do not call this tool.

Configuration

Env varRequiredDefault
BUYER_PRIVATE_KEYyes—
SMS_URLnohttps://x402-sms-server-production.up.railway.app/send

To point the MCP server at your own seller deployment, override SMS_URL.

Errors you might see

The MCP surfaces three distinct error shapes so the model can explain what happened to the user and decide whether to retry.

CauseWhat you'll see in chatWas payment taken?
Seller's toll-free number still in TFV review (HTTP 503)"SMS not sent — service is in pre-launch wait" + the seller's submitted date and retry guidanceno
Buyer wallet exceeded per-minute/hour/day rate limit (HTTP 429)"SMS not sent — this buyer wallet hit the per-X rate limit" + retry_after_secondsno
Twilio-side rejection (e.g. invalid number 21211, opted-out 21610)Friendly hint mapped from the Twilio error code + the full response bodyyes (the send tried)

For the full mapping of Twilio error codes the MCP recognizes, see TWILIO_HINTS in src/index.ts.

How it works

Claude Desktop ──tool call──> MCP server (this package, on your machine)                              │                              │ x402 payment (USDC, Base Sepolia)                              │ + to/message/opt_in_attestation                              ▼                              Public seller (Hono + Twilio on Railway)                              │                              │ Twilio dispatch                              ▼                              SMS lands on recipient's phone                              │                              │ Twilio SID + status                              ▼                              MCP server ──tool result──> Claude Desktop

The MCP server doesn't talk to Twilio directly. It signs an x402 payment with the buyer's wallet, sends the payment + message details to the seller endpoint, and the seller's toll-free number dispatches the SMS. Your private key never leaves your machine. The seller never sees it.

Roadmap

  • Now (2026-05-22): Base Sepolia testnet, TFV pending. Payment flow verified end-to-end; deliveries gated on Twilio approval.
  • Once TFV clears: Real US SMS delivery, testnet pricing held while we collect early traffic.
  • A few weeks out: A2P 10DLC Brand approval → higher per-day throughput tier.
  • Mainnet flip: Production launch, USDC settles on Base mainnet; Solana facilitator on roadmap after.

License

MIT

來源:README.md,提交 61115a4

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.1.0最新Sep 16, 2026

評分

已滿足適用檢查項的 40%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

    請在儲存庫或註冊中心條目中宣告授權條款。