
Xpay
io.github.xona-labs由 GitHub 账号 xona-labs 发布v0.2.38更新于 Nov 2, 2026
Xona Wallet: agent wallet for AI agents. x402 payments, AgenC hires, 20k+ services
概览
Xona Wallet 为 AI 代理提供自带的多网络 USDC 钱包,可发现并支付 x402 服务、雇佣 AgenC 代理,以及兑换、转账和查看资金报告。
- 可以做什么
- 发现与支付服务:检索两万多个 x402 服务与 AgenC 挂单,调用付费接口,查询商户信任评分
- 钱包与资金:查看各网络余额,转账 USDC/USDT0,通过 Jupiter 兑换 Solana 代币,在 Robinhood Chain 交易
- 支出管控:查看和设置单笔与每日上限、允许的主机,以及可选的意图防火墙
- 交易辅助:查找 Solana 代币与 RWA 代币、查看热门代币、创建并执行定投或条件股票订单
- 付费第三方查询:X 账号数据、代码仓库安全扫描、跨商城商品搜索
- 报告:按日、周、月生成 USDC 活动报告;绑定 Sana 密钥后还会注册 Sana 卡相关工具
- 适用场景
- 适合希望代理自主购买或调用付费 API 与代理服务,或持有并转移少量 USDC、SOL 而无需自行编写支付逻辑的场景。更适合代理电商实验和小额自动化,而非托管大额资金。
- 运行要求
- 以 stdio 本地运行,通常通过 npx 加 mcp 子命令启动,需要 Node.js。首次运行会自动生成钱包并保存在 ~/.xpay,也可提供 XPAY_SOLANA_SECRET、XPAY_EVM_KEY 和 XPAY_PASSPHRASE。付款需先充值 USDC(AgenC 雇佣还需 SOL)。可选密钥:SANABOT_API_KEY、JUPITER_API_KEY。需能访问支付与目录接口的网络。
安装
在 SourceWeft 中
- 打开 控制台中的 Xpay,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
Xona Wallet
Ships as the npm package
@xona-labs/xpay, thexpayCLI, and thexpay_*MCP tools. The package and command names are unchanged.
[npm] [downloads] [license] [MCP Registry] [node]
Agentic-commerce wallet. Multi-network USDC wallet, x402 payments, AgenC marketplace hires, and discovery across 20,000+ services - as a CLI, an SDK, and an MCP server.
Xona Wallet is the wallet and rail layer for agentic commerce. It hides x402, USDC, RPC, and multi-network routing behind a flat surface so agent builders (Claude / Codex / OpenAI / Gemini / your own) can find and pay for services without writing payment plumbing.
Install
Quickstart
Fund the addresses with a few dollars of USDC on Solana mainnet, Base, or both. Then:
CLI commands
All commands run from a single profile. Switch with xpay accounts use <name>.
SDK
The CLI is a thin shell over the SDK - every command has a direct programmatic equivalent.
Agent runtimes
Xona Wallet ships tool definitions for the three major LLM SDKs. Same handlers, different schema shapes.
forOpenAI(xpay) and forGemini(xpay) return the same handlers wrapped in vendor-specific schemas. See examples/claude-agent.ts for the full tool-use loop.
MCP server (Claude Desktop / Cursor / Codex)
Xona Wallet is listed in the official MCP Registry
as io.github.xona-labs/xpay - registry-aware hosts can discover and
install it by that name. For everything else, drop Xona Wallet into the host's
config - no code, no keys, no xpay init. On first boot the agent is
given its own wallet automatically:
That's the whole setup. The generated wallet's Solana address is printed to
stderr on first run - fund it with USDC and the agent can pay. It persists
under ~/.xpay and is reused on every later boot, so the address is stable.
The host sees the core tools: xpay_discover, xpay_use, xpay_do, xpay_transfer, xpay_balance, xpay_report, xpay_guardrail, xpay_token_find, xpay_swap, xpay_trending_tokens, xpay_trade_quote, xpay_trade, xpay_x_user, xpay_x_posts, xpay_zauth_reposcan, xpay_zauth_scan_status, xpay_shop_search, xpay_shop_quote, xpay_shop_lens, xpay_shop_lens_quote, xpay_rwa_find, xpay_trust_check, xpay_order_create, xpay_orders_list, xpay_order_cancel, xpay_orders_run, xpay_agenc_status, plus xpay_bento_status / xpay_bento_enable / xpay_bento_disable to manage the intent firewall. If you've linked a Sana key (see below), eight additional sana_* tools are also registered automatically.
Bring your own wallet instead - the wallet source order is existing profile → key env → auto-generate, so any of these overrides the generated wallet:
On macOS, with biometric unlock enabled on a profile, the server shows one Touch ID dialog at startup instead of keeping the passphrase in host config.
See SKILL.md for a framework-agnostic guide to driving these tools from any agent.
Profiles
Each profile is a directory under ~/.xpay/ with:
Override with XPAY_HOME=/some/path or xpay init --workspace for project-local profiles.
Biometric unlock (macOS)
Skip typing the passphrase on every command - unlock with Touch ID instead:
How it works: the wallet's scrypt + AES-256-GCM encryption is unchanged. enable places the
passphrase in your login keychain, and a small native helper (compiled on first use to
~/.xpay/bin/, requires the Xcode Command Line Tools) releases it only after a
LocalAuthentication check. Biometrics never replace the passphrase - they gate access to it.
The unlock order for every command is: --passphrase flag → $XPAY_PASSPHRASE → Touch ID →
interactive prompt. Your passphrase keeps working everywhere and remains the only recovery
path - if Touch ID is unavailable (or the stored copy goes stale after a re-encrypt), the CLI
falls back to asking for it.
macOS asks once to allow keychain access for the helper - choose "Always Allow". It will ask again after package upgrades, since the helper is recompiled.
Guardrail
The guardrail runs before any signer is touched, so a misbehaving agent (or compromised LLM) cannot bypass it.
maxPerTx/maxPerDay: apply to every paid call and direct transfers.allowedHosts: apply only to x402 calls (transfers go to addresses, not hosts).maxPerTx/maxPerDay: apply to every paid call and direct transfers.allowedHosts: apply only to x402 calls (transfers go to addresses, not hosts).requireApprovalAbove: calls ≥ threshold need explicit approval. In the CLI this is a Touch ID prompt when biometric unlock is enabled, otherwise a y/n confirm; in the MCP server it is Touch ID only (no terminal), so an agent's large payment surfaces as a system dialog you physically approve. In the SDK, wire theonApprovalRequiredhook to whatever you like - push notification, biometric, webhook.
Security - Bento intent firewall (optional)
Spend caps stop an agent spending too much - they can't tell a legitimate payment from a prompt-injected one. The optional Bento layer adds an AI intent firewall: every paid call and transfer is screened for malicious intent (prompt-injection, wallet-drain, intent-vs-execution mismatch) before signing. It runs inside the guardrail, right after the local caps pass.
There's no API key - Bento authenticates with the wallet's own key. The one manual step is a
one-time, on-chain registration of the agent wallet at
app.bentoguard.xyz (log in with your owner wallet; until the agent
wallet is registered, payments are rejected with Agent not found).
Each screened call returns a verdict:
ALLOW: cleared; Xona Wallet signs as normal.BLOCKED: flagged as a critical threat; Xona Wallet throws before signing, no funds move.ESCALATED: ambiguous; Xona Wallet defers to youronApprovalRequiredhook, or fails closed.
Agents can manage it over MCP too: xpay_bento_status, xpay_bento_enable, xpay_bento_disable
(disable is the escape hatch when the wallet isn't registered yet).
Sana agent wallet card (optional)
Xona Wallet supports an optional integration with Sana - an agent-native card that lets your AI spend at the point of sale, anywhere Visa is accepted.
Activating it adds a second wallet surface to Xona Wallet: your on-chain USDC (xpay) for agentic x402 payments, and a Sana card (fiat) for everything else. The two compose naturally - an agent can top up the card from the Xona Wallet wallet when the balance runs low.
Activate
- Sign up at sana.bot and generate an API key at
sana.bot/gateway/app/api-keys(scope:read:allcovers everything read-only; addwrite:cardfor deposits and swaps). - Link it to your Xona Wallet profile:
- Restart your MCP client - eight
sana_*tools appear automatically alongside the standardxpay_*tools.
Tools registered
SDK usage
Pass the API key to forClaude / forOpenAI / forGemini to include Sana tools in your agent loop:
Or set SANABOT_API_KEY in the environment - the MCP server picks it up without any code change.
Unlink
The sana_* tools disappear from the MCP server on next restart.
AgenC marketplace - hire on-chain agents
AgenC is a Solana-mainnet marketplace where registered agents sell services with on-chain escrow. Its hireable listings appear in xpay discover alongside x402 services - but they execute differently, and xpay routes them automatically:
The same smart routing works in the SDK and MCP - xpay.use(resource) / xpay_use detect the agenc-hire payment scheme and run the escrow flow, returning a receipt (task, txSig, explorer link) as data. Hires are made through AgenC's humanless entry point, which pins the task to CreatorReview - escrowed funds never auto-release without your acceptance.
Notes:
- Discovery reads AgenC's hosted indexer via their official SDK client, the integration path AgenC documents, and hires locate the on-chain moderation attestation across seed-scheme generations, so xpay keeps working across AgenC's frequent program upgrades. Listings not yet re-attested after an upgrade fail closed with a clear message before any payment.
- The guardrail applies to hires too: SOL prices are converted to USD at spot (multi-feed, cached) and checked against
maxPerTx/maxPerDaybefore signing. If no price feed is reachable and caps are set, the hire fails closed. - The wallet needs SOL (escrow + fees), not just USDC.
- Reviewing/accepting results happens on agenc.ag for now;
xpay agenc acceptis planned. - Config (optional):
agenc: { rpcUrl, reviewWindowSecs, endpoint }in the profile, orXPAY_AGENC_ENDPOINT. Opt out of the discovery source withXPAY_DISCOVERY_SOURCES=orbitx402.
Token discovery & swap (Solana)
Find any Solana token by ticker or mint address and swap into it from your own wallet - keyless, via Jupiter's meta-aggregator:
Notes:
- Verification matters. Anyone can mint a token reusing a real ticker. Bare tickers only resolve to Jupiter-verified tokens; ambiguous tickers error with a candidate list, and unverified tokens must be named by their exact mint.
xpay token findshows the flag. - The guardrail applies. The input side is priced in USD (Jupiter's own estimate) and enforced against
maxPerTx/maxPerDaybefore signing - fails closed if the token can't be priced while caps are set. Swaps stay inside your wallet (no external recipient), soallowedHostsdoesn't apply. - Slippage defaults to Jupiter's dynamic slippage; override per call (
--slippage-bps) or per profile (swap.slippageBps). - Keyless by default (~20 req/s shared bucket). Set
JUPITER_API_KEY(or profileswap.apiKey) for higher limits;XPAY_JUPITER_ENDPOINToverrides the API base. - This is the native swap in your own xpay wallet. The separate
xpay sana swapswaps inside a Sana-hosted wallet and needs a Sana API key.
Merchant trust (ERC-8004 on Solana)
Before paying an unfamiliar service, check who is on the other end. Solana merchant wallets (the x402 payTo) are looked up in the 8004-solana registry, the Solana implementation of ERC-8004 Trustless Agents: an agent identity (Metaplex Core asset) plus on-chain client feedback, and optional ATOM scoring (trust tier, quality, confidence, risk). Free, read-only, no wallet:
Notes:
- The wallet matches either the agent's operational
agent_walletor itsowner. When several identities share a wallet, the strongest (ATOM tier, then review count, then score) is returned, withagentCount. avgScoreis the average client feedback (0-100). ATOMqualityis confidence-weighted, so it stays low until an agent accumulates feedback; don't read one as the other.- Most merchants are not registered yet, so "no identity" is the normal case, not a warning.
--min-trust/minTrustover-fetches (50 candidates) and can still come back empty. - Lookups go through the registry's public indexer (
8004-indexer-main.qnt.sh, keyless, 100 req/min per IP), one per unique wallet, cached 10 minutes including negatives.XPAY_8004_INDEXERoverrides it;--no-trust/trust: falseskips it. A failed lookup never fails discovery. - Solana only for now. EVM ERC-8004 registries have no wallet-to-agent reverse lookup on-chain.
- SAID Protocol is checked for the same wallet and reported next to ERC-8004 as
trust.said(null= no SAID identity):verified,tier,badgesand a 0-100score. That score is SAID's composite of identity, activity and longevity signals, not client feedback, so an agent can score high with zero reviews; it is never merged with the 8004avgScore, and--min-truststill filters on the 8004 score only.XPAY_SAID_APIoverrides the API base; a failed SAID lookup just leavessaidunset. - MCP:
xpay_trust_check(free), andxpay_discoverresults carrytrustplus an optionalminTrustfilter.
RWA discovery (Solana)
List tradable real-world-asset tokens: RWA covers any tokenized off-chain asset, and what actually trades on Solana DEXes today is tokenized stocks/ETFs (Backed xStocks like TSLAx/SPYx, Ondo Global Markets like TSLAon/GLDon, Remora, Backpack Securities) plus the treasury-backed yieldcoin USDY. Free, read-only, no wallet:
Notes:
- Discovery sweeps Jupiter's search API and filters by Jupiter's own
rwa/stocks/xstockstoken tags (the tag endpoint itself doesn't accept these), so the list is Jupiter-verified and priced live. Results cache in-process for 5 minutes. - Tokenized stocks track the underlying price but are issuer IOUs (tracker certificates), not brokerage shares: no voting rights, issuer risk applies.
- Permissioned funds on Solana (BlackRock BUIDL, Ondo OUSG) are excluded: they are KYC-gated, unverified on Jupiter, and have no DEX liquidity, so they can't be swapped into anyway.
- MCP:
xpay_rwa_find(free). Everything returned is swappable from USDC viaxpay_swap/xpay swap.
Standing stock orders
Recurring buys and conditional one-shots on tokenized stocks (xStocks and other Solana issuers), stored in the wallet profile so any agent framework can create them and any scheduler can run them:
How a run decides, per due order: expiry and caps, then market hours (if --market-hours), then the same checks as a direct stock trade (verified token, liquidity floor, adverse premium/discount vs the real share price, default 2%), then the profile's maxPerDay. Orders that don't qualify report why and wait for the next run; recurring orders keep their cadence and skip missed periods rather than catching up.
Safety model, since runs are usually unattended:
- Every order is finite. Recurring orders need
--budgetand/or--max-fills; one-shots expire after 7 days by default. - Agents can't activate orders.
xpay_order_createsaves an order aspending_approval; onlyxpay orders approve <id>(a human at the terminal) activates it. Agents can list, cancel and run, but a run only ever executes approved orders. - Daily cap across runs.
maxPerDayis enforced from the persisted fill log, so separate cron invocations can't each spend a fresh daily allowance. - Never double-buys. A fill that was submitted but not confirmed parks the order in
needs_review; check the wallet, thenxpay orders resume <id>(add--filledif it landed). A guardrail denial (per-tx cap, approval threshold) parks it inblocked. Only one run executes at a time. - The token is pinned at creation (SPY → SPYx mint), so a later run can't resolve to a different issuer.
Unattended runs need the wallet unlocked: set XPAY_PASSPHRASE in the scheduler's environment (Touch ID can't prompt at 3am). Buys above requireApprovalAbove are denied without a TTY and block the order. MCP: xpay_order_create, xpay_orders_list, xpay_order_cancel, xpay_orders_run.
Robinhood Chain trading
Trade the NOXA Fun memecoin scene on Robinhood Chain (Robinhood's Arbitrum L2, chain 4663) straight from your own wallet - no API key. NOXA Fun tokens launch into Uniswap V3 pools quoted in native ETH, so trading is plain on-chain V3: quote via QuoterV2, execute via SwapRouter02. Discovery (trending / new tokens, USD pricing) comes from GeckoTerminal's public API.
Notes:
- Scope: ETH ⇄ token only (buy with native ETH, sell back to ETH). Buys auto-wrap ETH; sells unwrap WETH → ETH in one transaction.
- The guardrail applies. The input side is priced in USD (GeckoTerminal spot) and enforced against
maxPerTx/maxPerDaybefore signing - same boundary asxpay swap. - Verification. A token confirmed as a NOXA Fun launch is marked verified; anything else is flagged
unverified(memecoin tickers aren't unique - prefer passing the exact contract address). NOXA per-tx / max-wallet transfer caps are checked before signing: a buy that would breach one errors up front (instead of reverting on-chain), and the quote flags trades that come close. - Gas: unlike x402 payments, trades are broadcast from your wallet, so it needs a little ETH on Robinhood Chain for gas. Bridge via Across or the Uniswap bridge. RPC override: profile
rpcs.robinhood. - Slippage defaults to 100 bps (1%); override per call (
--slippage-bps) or per profile (trading.slippageBps). - Balances:
xpay balancelists your Robinhood Chain ETH plus every ERC-20 you hold (via the chain's Blockscout explorer), so tokens bought here show up automatically. Override the explorer withXPAY_ROBINHOOD_EXPLORER. - This is distinct from
xpay swap(Solana / Jupiter). GMGN was evaluated and skipped - it doesn't support Robinhood Chain.
Realtime X (Twitter) data
Agents can pull live X account data with zero setup - no X developer account, no API key. xpay pays xona's x402-gated proxy per call, which passes X's pay-per-use billing through at cost (no markup):
MCP: xpay_x_user / xpay_x_posts - the classic flow is token due diligence: xpay_token_find → check the project's X account → swap only if it holds up. Payments go through the normal x402 flow, so the guardrail caps apply. Endpoint override: XPAY_XDATA_ENDPOINT.
zauth repo security scans
Scan any git repository for code provenance and vulnerabilities via zauth's x402-paywalled scanner (partner integration) - returns a zauth score (0–100) plus a markdown analysis. Only the scan kickoff is paid (~$0.05 USDC on Solana or Base) and the guardrail caps apply (if your profile restricts allowedHosts, add api.zauth.inc). Status checks are free and need no wallet:
A scan either returns a cached report immediately or { status: "scanning", scanId, sessionToken }; xpay polls the free status endpoint automatically and hands you the sessionToken if the scan outlives the wait window. Follow up with the sessionToken (the JWT, valid ~1 hour) - not the scanId.
MCP: xpay_zauth_reposcan (paid, polls up to ~90s) / xpay_zauth_scan_status (free follow-up). Endpoint override: XPAY_ZAUTH_ENDPOINT.
xona shop product discovery
Search products across Google Shopping, Amazon, and eBay from a single free-text query via xona's x402-paywalled /shop/search endpoint (partner integration). The query parser picks up price ranges, condition, and sort straight from natural language; results come back normalized, deduped, and ranked in one schema. Price scales with the marketplaces searched: ~$0.02 USDC for all three, less for a subset (floor $0.005). Paid through the normal x402 flow, so guardrail caps apply (if your profile restricts allowedHosts, api.xona-agent.com must be on the list):
shop search runs the free quote automatically before asking for confirmation, and refuses to pay when the parser says the query is not a product search (a paid search for such a query charges but returns zero results).
MCP: xpay_shop_search (paid) / xpay_shop_quote (free preflight: agents should quote first when a query is ambiguous). MCP results are compacted for context (image/position/scoring fields dropped); xpay shop search --json keeps the full payload. Endpoint override: XPAY_SHOP_ENDPOINT.
Shop lens: image-based discovery
The same partner also answers "what is this, and where do I buy it" from a photo. Give /shop/lens an image and Google Lens identifies the product and the retailers selling it, normalized into the same schema as /shop/search. Two modes: identify (default, $0.02 USDC) returns the visual matches plus a derived product name; $0.04 for all three marketplaces) additionally runs that name through Google Shopping, Amazon, and eBay for a price comparison.shop (
The lens engine itself only accepts a publicly reachable http(s) URL (SerpAPI fetches the image; data URIs are rejected), so the MCP tool takes the image as exactly one of three inputs: image_url (used as-is), image_path (local file), or image_base64 (raw or data URI). Local files and base64 are first uploaded, free, to xona's public image host (JPEG/PNG/GIF/WebP, type sniffed from magic bytes, 25MB cap) and the hosted URL is echoed back as hosted_image_url for reuse. This is what makes images from chat clients that upload attachments (Hermes and friends) work: bytes in, public URL bridged automatically.
MCP: xpay_shop_lens (paid) / xpay_shop_lens_quote (free preflight: validates an image URL is publicly reachable and reports the exact price, no wallet). Agents should quote first when passing image_url, since the paid door charges even when the URL turns out to be unusable; uploads need no preflight because the hosted URL is always reachable. If the response flags the image as not a product photo, a mode=shop retry will not help.
Multi-network
init configures Solana and Base by default. Add or change via ~/.xpay/<name>/config.json:
Public RPCs work for development but rate-limit hard. Production deployments should configure dedicated RPC endpoints.
Stable chain
Stable (chain 988, Tether/Bitfinex's payments L1) is supported as a first-class wallet network. It settles USDT0 (the LayerZero OFT at 0x779Ded0c9e1022225f8E0630b35a9b54bE713736, 6 decimals as an ERC-20), not USDC.
The same derived EVM key covers it, so a Stable signer is registered on every profile whether or not stable is in networks. You get it without re-running xpay init:
Notes:
- Payments are gasless. x402 calls on Stable sign an EIP-3009
transferWithAuthorizationand the facilitator broadcasts, so the wallet needs USDT0 only - no native gas. Directxpay transferis broadcast from your wallet, so that path needs a little native USDT for gas. - The EIP-712 domain is
USDT0/1, not the USDC default. xpay never hardcodes it: the domain is read fromextraon the live 402 challenge, which is the only reliable source (version()andeip712Domain()both revert on this contract). - Two tokens share a name. The native gas coin is USDT at 18 decimals; the ERC-20 that x402 settles is USDT0 at 6.
xpay balancelists them separately. - Routing is automatic. A 402 quoting
eip155:988resolves to the Stable signer, anduse()compares USDT0 balance against the price when several chains are offered. - RPC override: profile
rpcs.stable(defaulthttps://rpc.stable.xyz). Explorer: stablescan.xyz.
How it works
- Keys: One BIP-39 mnemonic per profile derives Solana (
m/44'/501'/0'/0', Phantom-compatible) and EVM (m/44'/60'/0'/0/0, MetaMask-compatible) keypairs. Encrypted at rest with scrypt + AES-256-GCM. - Discovery: the catalog spans 21k+ x402 endpoints across multiple chains (Solana, Base, BNB Chain, and other EVM networks) plus AgenC marketplace listings, merged from independent sources (
Promise.allSettled, so one source failing never kills discovery). The fetcher walks each API's pagination, validates every entry against a Zod schema, and persists to~/.xpay/cache/so repeat lookups skip the cold-fetch tax. (Filter with--network/discover({ networks }); pick sources withdiscover({ sources })orXPAY_DISCOVERY_SOURCES.) - Pay:
use()anduseByUrl()both go: guardrail check → signer.pay(USDC) on the right network →X-Paymentheader → retry. The signer abstraction means the same code path works for Solana SPL transfers and EVM ERC-20 transfers. AgenC resources are detected by theiragenc-hirepayment scheme and routed to the on-chain escrow flow instead - sameuse()call, different rail. - Report: Comprehensive USDC activity (daily / weekly / monthly) fetched from the OrbitX402 API. On-chain data is resolved server-side - no RPC calls from xpay, no rate-limiting, no RPC key required.
Project status
v0.2.14 (current):
- ✅ CLI: init, accounts, balance, discover, pay, agenc, token, swap, x, zauth, shop, transfer, report, guardrail, mcp
- ✅ SDK: full parity with CLI; tool exporters for Claude / OpenAI / Gemini
- ✅ MCP server on stdio with 23 tools (incl. the Bento intent firewall)
- ✅ Solana token discovery + native Jupiter swaps (
xpay token find,xpay swap) - ✅ Realtime X (Twitter) data at cost via x402 (
xpay x user|posts) - ✅ zauth repo security scans via x402 (
xpay zauth reposcan) - ✅ xona shop product discovery via x402 (
xpay shop search), free quote preflight - ✅ Standing stock orders (
xpay orders): recurring buys + conditional one-shots, human-approved, idempotent runs - ✅ ERC-8004 merchant trust on Solana (
xpay trust, trust lines inxpay discover) - ✅ RWA discovery on Solana (
xpay token rwa): tokenized stocks/ETFs + USDY, swappable viaxpay swap - ✅ Solana + Base mainnet with disk caching
- ✅ Optional Sana agent card integration (
xpay sana link) - 8 additionalsana_*tools - ✅ AgenC marketplace as a discovery source + smart-routed SOL escrow hires (
xpay agenc hire|status)
Planned:
bridge, USDC EVM ↔ SVM via CCTP (Circle's native burn/mint)link / unlink, opt-in cloud sync (audit log, dashboard)- Pay catalog + xona-labs catalog as additional discovery sources
xpay agenc accept|rate- review AgenC hire results without leaving the CLI
License
MIT - see LICENSE.
来源:README.md,提交 55374a4
工具
0版本历史
4- v0.2.38最新Oct 5, 2026
- v0.2.36Sep 28, 2026
- v0.2.34Sep 21, 2026
- v0.2.30Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分