xytara MCP Executor
Pay-per-call MCP tools and signed on-chain attestations: 20 free/day, then x402 or a spend key.
作者による説明(英語の原文)
Ethereum mainnet JSON-RPC paid per call in USDC on Base. No account, no API key: the wallet pays.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
作者はレジストリにインストール情報を載せていません。下にある作者のREADMEをご覧ください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月10日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント ffboers で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(1.0.0)がレジストリに届いたのは2 か月前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。
同じカテゴリには:xytara MCP Executor, FairAgent, A2A Gateway — Base Token Guard & x402 Settlement
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Pay-per-call MCP tools and signed on-chain attestations: 20 free/day, then x402 or a spend key.
Live state and unsigned mint/claim tx builder for FairAgent AI-agent NFTs on BNB Chain.
Pre-trade Base token risk verdicts, EVM route simulation and code audits, paid per call over x402.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
A Cloudflare Worker that sells JSON-RPC access to your own Ethereum node, one request at a time, over x402. No accounts, no API keys, no invoices: a caller signs a USDC authorization on Base and gets the answer in the same exchange.
Running in production at 402rpc.com.
Selling RPC access normally means building signup, billing, key rotation and rate plans before you serve a single request. x402 removes all of it — but a naive gateway that simply charges per call creates two new problems, and this template solves both.
Callers must never pay for an answer you cannot give. Every request is checked *before* the paywall. A blocked namespace, a block below your history floor, a log range that is too wide — all return HTTP 400, and x402 does not settle on a response of 400 or higher. Node failures return 502 for the same reason.
Flat pricing loses money. eth_getLogs across ten thousand blocks costs your node hundreds of times more than eth_blockNumber. Prices here scale with the work a method actually costs.
Your node's own refusals arrive as HTTP 200. A node that says "no state available at that block" or "too many logs in one response" returns a JSON-RPC error with a 200 status — and x402 settles on a 200. Left alone, your customers pay for answers you could not give. This template translates that class of error into a 4xx so nothing settles. Errors that are a real answer, execution reverted for instance, stay chargeable.
Accept headernpm install
cp wrangler.jsonc.example wrangler.jsonc # edit the vars npx wrangler deploy
At minimum, set PAY_TO_ADDRESS, ORIGIN_URL and PUBLIC_URL. Everything else has a working default.
For a mainnet network you need Coinbase CDP credentials — the public x402.org facilitator serves testnets only:
npx wrangler secret put CDP_API_KEY_ID
npx wrangler secret put CDP_API_KEY_SECRET
Without them the Worker deliberately answers 503 rather than issuing payment challenges it cannot settle.
The facilitator has an undocumented floor. Amounts around $0.0002 are rejected with amount_too_low; $0.001 goes through. Price differentiation therefore only works upward from roughly a tenth of a cent.
The Bazaar only indexes x402 version 2. Every one of the twenty resources I checked runs v2; none run v1. If you build on the v1 packages (x402-hono, x402-fetch — last published April 2026) your service works but is invisible to the discovery layer agents actually query. This template uses v2 throughout.
Pin `resource` to your public URL. Left to derive it from the request, the middleware puts your Worker's internal hostname — which contains your Cloudflare account name — into every payment challenge, right next to your receiving address.
Everything this template puts in your payment terms and landing page is a promise to a paying stranger. Test them against what your node actually does, not against what you believe it does. Three that bit us:
nodeRefusal in policy.ts.Ranking in the Bazaar is driven by measured usage — l30DaysTotalCalls and l30DaysUniquePayers — not by how well you write your description. Worth knowing before you spend an afternoon on copy.
Worth knowing too: as of August 2026 the entire visible Bazaar handled roughly 1,200 paid calls in thirty days across eighty services. The busiest Ethereum RPC among them served fourteen. Build for the market this becomes, not the one it is.
What this template does for you anyway: a bazaar discovery extension so you are indexed at all, an iconUrl, and payment accepted on Base, Polygon and Arbitrum so more wallets can reach you. What it deliberately does not do is inflate your own call count — that buys a position in a list nobody reads yet, with your own money.
Set ORIGIN_TOKEN as a secret and have your origin require the matching X-Origin-Token header. Without it, anyone who learns your origin hostname uses your node for free and the paywall is decorative. A minimal reference proxy is in examples/origin-proxy.py.
The receiving address is necessarily public: it is in every payment challenge. Your node's IP is also public, because it takes part in the peer-to-peer network. The link between the two is what you protect.
Someone who submits a transaction through your gateway and watches which IP broadcasts it first learns where your service physically runs. Setting RELAY_URLS sends raw transactions out through public endpoints instead, and that trail disappears. Every other method only returns answers and reveals nothing.
Any x402 client pays and retries automatically:
import { wrapFetchWithPayment, x402Client } from "@x402/fetch";
import { ExactEvmScheme } from "@x402/evm";
const x402 = new x402Client().register("eip155:8453", new ExactEvmScheme(account)); const fetchWithPay = wrapFetchWithPayment(fetch, x402); await fetchWithPay("https://your-gateway/rpc", { method: "POST", body });
As a paid fallback behind your own node — see examples/fallback.mjs:
transport: fallback([
http(YOUR_OWN_RPC), http("https://your-gateway/rpc", { fetchFn: fetchWithPay }), ], { retryCount: 0 })
A standby you never use costs nothing. That is the property a subscription cannot offer, and it is the strongest reason to run one of these.
MIT.