xytara MCP Executor
Measured conclusion: Deep-tested. L2 outcome: tools_ok.
Pay-per-call MCP tools and signed on-chain attestations: 20 free/day, then $0.01+ via x402 or a key.
| Author | com.naxytra |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Deep-tested |
| L1 liveness | alive |
| L1 latency | 250 ms |
| Last measured | 2026-10-24 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"xytara MCP Executor": {
"url": "https://xytara-mcp-executor.onrender.com/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (17)
summarizeread-onlyExtractive summary: returns the first sentences of the text (default 3, up to 10) capped at max_chars (default 600, 50-2000), taken from the first 4000 characters. Deterministic; it does not paraphrase. `truncated` is true when the source was longer than the considered window. Price: $0.01 USDC per call on Base mainnet ($0.001 on Base Sepolia), paid with x402; failed calls are not charged.
Parameters:
text(required) — string — Plain text to summarize (non-empty).max_chars— integer — Upper bound on summary length (default 600).max_sentences— integer — Sentences to keep (default 3).
Hints: read-only yes · destructive no · idempotent yes · open-world no
zones.lookupread-onlyLive DNS lookup of A, AAAA, CNAME, MX, NS and TXT records for a domain (a URL is accepted; its hostname is used; IDNs are punycoded). 2 s per query, ~5 s total. Per-record errors are reported in record_errors; if no record resolves at all the call fails and is not charged. Price: $0.01 USDC per call on Base mainnet ($0.001 on Base Sepolia), paid with x402; failed calls are not charged.
Parameters:
hostname(required) — string — Domain name or URL, for example example.com or https://example.com/page.
Hints: read-only yes · destructive no · idempotent no · open-world yes
catalogread-onlyLists the enabled tools with titles, descriptions and the price. Same information as tools/list. Free: never requires payment.
Hints: read-only yes · destructive no · idempotent yes · open-world no
reply.draftread-onlyBuilds a structured reply to a message: greeting to the sender (name detected from the sign-off, or sender_name), acknowledgement, every question and request found in the message listed with an answer placeholder, deadlines noted, and a tone-matched sign-off. Deterministic template: it organizes the reply but does not invent the answers (placeholders in [brackets]). Input up to 20000 characters. Price: $0.01 USDC per call on Base mainnet ($0.001 on Base Sepolia), paid with x402; failed calls are not charged.
Parameters:
text(required) — string — The message you are replying to.tone— string — clear (default), concise, warm, friendly, or formal.your_name— string — Name to sign with (otherwise a [Your name] placeholder).sender_name— string — Name to greet (otherwise detected from the sign-off).
Hints: read-only yes · destructive no · idempotent yes · open-world no
json.validateread-onlyValidates a JSON payload (any JSON value, or JSON text as a string) against a JSON Schema and returns valid plus every error with its JSON Pointer path. Supported keywords: type, required, properties, additionalProperties, items/prefixItems, enum, const, minimum/maximum, exclusiveMinimum/exclusiveMaximum, multipleOf, minLength/maxLength, pattern, minItems/maxItems, uniqueItems, min/maxProperties, allOf. A schema using other keywords ($ref, anyOf, oneOf, not, if/then) is rejected (not charged) rather than half-checked. Without a schema only well-formedness is checked. Price: $0.01 USDC per call on Base mainnet ($0.001 on Base Sepolia), paid with x402; failed calls are not charged.
Parameters:
payload(required) — The JSON value to validate; a string is parsed as JSON text unless parse_string is false.schema— ['object', 'boolean', 'string'] — JSON Schema (object, or JSON text).schema_name— string — Optional label echoed back.parse_string— boolean — Parse a string payload as JSON text (default true).
Hints: read-only yes · destructive no · idempotent yes · open-world no
text.extractread-onlyExtracts emails, URLs (trailing punctuation stripped), IPv4 addresses, EVM addresses, transaction hashes, @mentions, #hashtags, prices, ISO/slash dates and phone numbers (dates, IPs and plain numbers are not reported as phones). Input up to 200000 characters; linear-time. Price: $0.01 USDC per call on Base mainnet ($0.001 on Base Sepolia), paid with x402; failed calls are not charged.
Parameters:
text(required) — string — Text to extract entities from.
Hints: read-only yes · destructive no · idempotent yes · open-world no
html.to-textread-onlyConverts HTML to readable plain text: drops scripts/styles/comments and all attribute text, keeps paragraph and list structure, separates table cells with " | ", decodes numeric and common named entities, and returns the <title> separately. Input up to 250000 characters; single linear pass. Price: $0.01 USDC per call on Base mainnet ($0.001 on Base Sepolia), paid with x402; failed calls are not charged.
Parameters:
html(required) — string — HTML markup to convert.
Hints: read-only yes · destructive no · idempotent yes · open-world no
text.chunkread-onlySplits text into chunks of at most max_chars (100-20000, default 2000) preferring paragraph, line, sentence and word boundaries, with optional overlap (up to half of max_chars). Sizes are UTF-16 code units; surrogate pairs (emoji) are never split. Input up to 250000 characters. Price: $0.01 USDC per call on Base mainnet ($0.001 on Base Sepolia), paid with x402; failed calls are not charged.
Parameters:
text(required) — string — Text to split into chunks.overlap— integer — Characters repeated between consecutive chunks (default 0, capped at max_chars/2).max_chars— integer — Maximum characters per chunk (default 2000).
Hints: read-only yes · destructive no · idempotent yes · open-world no
x402.decoderead-onlyDecodes an x402 payment challenge (base64 PAYMENT-REQUIRED header, or the JSON; v2 `amount` and v1 `maxAmountRequired`) into networks, assets, human amounts and payTo. A challenge with no payment options fails (not charged). Price: $0.01 USDC per call on Base mainnet ($0.001 on Base Sepolia), paid with x402; failed calls are not charged.
Parameters:
challenge(required) — ['string', 'object'] — Base64 PAYMENT-REQUIRED value, challenge JSON text, or the challenge object.
Hints: read-only yes · destructive no · idempotent yes · open-world no
keccak256read-onlyEthereum keccak256 of the input: returns the 32-byte digest and the 4-byte selector. encoding auto (default) hashes 0x-hex input as bytes and anything else as UTF-8 text; force utf8 or hex explicitly. The empty string is allowed. Up to 250000 bytes. Price: $0.01 USDC per call on Base mainnet ($0.001 on Base Sepolia), paid with x402; failed calls are not charged.
Parameters:
data(required) — string — Data to hash, e.g. transfer(address,uint256) or 0xdeadbeef.encoding— string — auto (default), utf8, or hex.
Hints: read-only yes · destructive no · idempotent yes · open-world no
address.validateread-onlyChecks an EVM address: format (0x + 40 hex), EIP-55 checksum (for mixed-case input), zero address, and returns the checksummed form. Price: $0.01 USDC per call on Base mainnet ($0.001 on Base Sepolia), paid with x402; failed calls are not charged.
Parameters:
address(required) — string — EVM address to validate (0x-prefixed).
Hints: read-only yes · destructive no · idempotent yes · open-world no
x402.verify-receiptread-onlyDecodes an x402 PAYMENT-RESPONSE receipt and checks Base / Base Sepolia: settlement_confirmed is true only if the tx succeeded and its logs contain a USDC Transfer to the expected payTo (pay_to, else this server's) for the expected amount (amount, else this server's price) from the stated payer. RPC unavailable, unknown network or a receipt without a tx fails (not charged). Price: $0.02 USDC per call on Base mainnet ($0.002 on Base Sepolia), paid with x402 or 6 credits with a spend key; failed calls are not charged. The result carries a signed attestation (naxytra-attestation/1, in result._meta["naxytra.com/attestation"]) of what was observed on-chain — verified true or false — that you can hand to a third party; keys at /.well-known/delivery-receipt-keys.
Parameters:
receipt(required) — ['string', 'object'] — Base64 PAYMENT-RESPONSE value, settlement JSON text, or the object.payer— string — Expected payer (default: the receipt's payer).amount— ['string', 'integer'] — Expected amount in USDC base units (default: this server's price when pay_to is this server).pay_to— string — Expected merchant address (default: this server's payTo).confirm— boolean — false = decode only, no on-chain check (default true).
Hints: read-only yes · destructive no · idempotent no · open-world yes
tx.statusread-onlyLooks up a transaction by hash on Base mainnet (default) or Base Sepolia: success/failed/pending, block, confirmations, from, to, value and gas. network accepts eip155:8453, base, 8453, eip155:84532, base-sepolia, 84532. A hash unknown to the chain is reported clearly as found:false. ~5 s budget; RPC unavailable fails (not charged). Price: $0.02 USDC per call on Base mainnet ($0.002 on Base Sepolia), paid with x402 or 6 credits with a spend key; failed calls are not charged. The result carries a signed attestation (naxytra-attestation/1, in result._meta["naxytra.com/attestation"]) of what was observed on-chain — verified true or false — that you can hand to a third party; keys at /.well-known/delivery-receipt-keys.
Parameters:
tx_hash(required) — string — 0x-prefixed 32-byte transaction hash.network— ['string', 'integer'] — Network (default eip155:8453 Base mainnet).
Hints: read-only yes · destructive no · idempotent no · open-world yes
abi.encoderead-onlySolidity ABI encoding (like abi.encode): address, bool, uint8-256, int8-256, bytes1-32, bytes, string, dynamic T[] and fixed T[k] arrays, and tuples written (uint256,address), nested to any depth. Strict: exact 20-byte (checksum-valid) addresses, range-checked integers, exact bytesN length, JSON true/false for bool, JSON arrays for arrays and tuples. Integers as decimal strings (or safe JSON numbers). Price: $0.01 USDC per call on Base mainnet ($0.001 on Base Sepolia), paid with x402; failed calls are not charged.
Parameters:
types(required) — array — Solidity ABI types, e.g. ["address","uint256","(uint256,bool)[]"].values(required) — array — Values matching types.
Hints: read-only yes · destructive no · idempotent yes · open-world no
abi.decoderead-onlyDecodes ABI-encoded hex for the given types (same type support as abi.encode). Strict: every length and offset is bounded by the data present, dirty padding bits and trailing bytes are rejected, and calldata with a 4-byte selector is flagged. Integers are returned as decimal strings, addresses checksummed. Price: $0.01 USDC per call on Base mainnet ($0.001 on Base Sepolia), paid with x402; failed calls are not charged.
Parameters:
types(required) — array — Solidity ABI types to decode into.data(required) — string — 0x-prefixed ABI-encoded data (no function selector).
Hints: read-only yes · destructive no · idempotent yes · open-world no
merkle.verifyread-onlyVerifies a keccak256 Merkle proof. leaf, root and every proof entry must be 0x 32-byte hashes (hash_leaf:true keccak-hashes a raw leaf first). sorted:true (default) is OpenZeppelin MerkleProof (sorted pairs); sorted:false needs leaf_index or positions to order each pair. Up to 256 proof entries. Price: $0.01 USDC per call on Base mainnet ($0.001 on Base Sepolia), paid with x402; failed calls are not charged.
Parameters:
leaf(required) — string — 0x 32-byte leaf hash (or raw data with hash_leaf:true).proof(required) — array — Sibling hashes from leaf to root.root(required) — string — Expected 0x 32-byte root.sorted— boolean — Sorted-pair hashing (OpenZeppelin, default true).hash_leaf— boolean — keccak256 the leaf before verifying (default false).positions— array — For sorted:false: the side of each sibling.leaf_index— integer — Leaf position for sorted:false trees.
Hints: read-only yes · destructive no · idempotent yes · open-world no
eip712.hashread-onlyComputes the EIP-712 digest, domain separator, struct hash and encodeType from domain, types, primaryType and message (what wallets sign, including the x402 USDC TransferWithAuthorization). Every field is type-checked; a missing field fails with missing_field:<path> (not charged). Price: $0.01 USDC per call on Base mainnet ($0.001 on Base Sepolia), paid with x402; failed calls are not charged.
Parameters:
domain(required) — object — EIP-712 domain: name, version, chainId, verifyingContract, salt.types(required) — object — Typed-data types (EIP712Domain optional).primaryType(required) — string — The primary struct type to hash.message(required) — object — The message values.
Hints: read-only yes · destructive no · idempotent yes · open-world no
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.