mcp server
byte-protocol
PayPerByte — per-byte data for AI agents: x402 USDC on Base, EIP-712-attested. No token.
Description as published by the maintainer. Source
- version 0.11.10
- active
active — Most recent push to the repository was 2026-08-02.
What this server can do
15 functions, named and described by the server itself. Parameter names are shown because they say more about what a function does than its name usually does.
byte_buy_data(body, feed)- Buy a single data packet from any PayPerByte feed via the x402 payment gateway. No subscription, no allowance, no prior on-chain setup — pay-per-call USDC settlement. The MCP server signs an EIP-3009 transferWithAuthorization on behalf of the wallet whose PRIVATE_KEY is configured, the x402 facilitator submits the tx, and the data comes back inline with the on-chain settlement tx hash. Use byte_subscribe instead if you want a continuous stream of broadcasts from a publisher. The catalog of available feed slugs lives at https://x402.payperbyte.io/feeds (free GET). GET data feeds (weather, earthquakes, …) need only `feed`; the 8 POST oracles — runtime-eol, threat-intel, address-reputation, pkg-verdict, sanctions-screen, reasoning-verdict, merchant-screen, positioning-snapshot — additionally require a JSON `body` (the query) — supplying `body` switches this call to POST. Requires PRIVATE_KEY env var on the MCP server and USDC on the configured wallet. NOTE: paid feeds settle REAL USDC on Base mainnet (eip155:8453) — the exact price is quoted in the 402 challenge (flagship address-reputation: $0.10/verdict). Use a dedicated wallet holding only what you intend to spend. Required: feed.
byte_check_subscription(publisher, subscriber)- Check if an address is subscribed to a specific publisher on PayPerByte. Required: subscriber, publisher.
byte_get_network_stats- Get PayPerByte network-wide statistics: total publishers, messages streamed, and total subscriber fees settled in USDC.
byte_get_publisher(address)- Get on-chain info for a specific PayPerByte publisher: status, subscriber and message counts, USDC revenue, and the registered schema (size bounds, cadence, price-per-KB). Required: address.
byte_get_token_balances(address)- Get USDC and ETH balances for an address on Arbitrum Sepolia (the on-chain testnet layer — MockUSDC settles subscriptions and fact-oracle queries there). Does NOT show the Base-mainnet USDC balance that byte_buy_data spends. Required: address.
byte_list_feeds- List all active data feeds in the PayPerByte catalog with topics, price-per-KB, and frequency.
byte_list_my_subscriptions(indexerUrl, subscriber)- List every active subscription for a given wallet address. Each entry has the publisher address, topic, status, when you subscribed, messages received in 7/30 days, USDC spent in 7/30 days, and the timestamp of the last message received. Use this to see what you're currently paying for and decide whether to unsubscribe. Required: subscriber.
byte_publish_data(data, maxFee, subscriber)- Publish data to a subscriber via the PayPerByte DataStream contract. Hashes the payload, records size on-chain, and settles the fee in USDC. Requires PRIVATE_KEY. Required: subscriber, data, maxFee.
byte_query_fact(question, topic_filter, max_byte_cost, min_publisher_pqs, subscriber_address, max_response_latency_ms)- Query a PayPerByte fact-oracle publisher for a signed answer with citations. Posts the question to a registered fact-oracle publisher (topic='fact-oracle'), waits for the on-chain BroadcastStreamed response, and returns the answer plus structured citation URLs. The signed receipt proves which publisher produced the answer (provenance + tamper-evidence), NOT that the answer is correct — ground your output in the cited sources, not in a truth guarantee. Availability: this requires a registered fact-oracle publisher actively broadcasting; if none is live the call returns a timeout rather than an answer. Required: question, subscriber_address.
byte_register_publisher(stake, topic, maxSize, frequency, pricePerKB, expectedSize)- Register as a data publisher on PayPerByte. Registers a schema and the publisher on-chain. Requires PRIVATE_KEY. PayPerByte v1 publishers are first-party and unstaked — leave stake at '0'; a non-zero USDC stake is approved to DataRegistry first if you choose to post one. Required: stake, topic, expectedSize, maxSize, frequency, pricePerKB.
byte_search_publishers(limit, query, sortBy)- Search PayPerByte publishers by topic and sort order. Returns publisher addresses, topics, subscriber counts, message counts, and price-per-KB.
byte_subscribe(publisher, skipAllowance)- Subscribe to a PayPerByte publisher's data feed. By default also sets USDC allowance to DataStreamLib to type(uint256).max so the subscription doesn't silently lose payments when allowance depletes (the contract's allowance-skip path emits DataStreamed with amount=0 on transferFrom failure rather than reverting). Pass skipAllowance: true to opt out and set a finite cap manually. Requires PRIVATE_KEY. Required: publisher.
byte_subscription_health(publisher, indexerUrl)- Get the content-drift signal for a publisher. Compares their last 7 days of publishing activity (cadence, message count) against their 23-day baseline (days 8-30). Returns 'stable' (steady publishing), 'moderate' (20-50% cadence shift or 24-48h silence), 'significant' (>50% shift or >48h silence), or 'unknown' (new publisher, insufficient baseline). Use this to detect when a publisher you subscribe to has pivoted content or gone dormant. Required: publisher.
byte_unsubscribe(publisher)- Unsubscribe from a publisher's data feed. Takes effect next block: no more billing, no more data flow. Reversible — you can resubscribe later via byte_subscribe. Use this when a publisher has pivoted content (check with byte_subscription_health first) or when you simply don't want the feed anymore. Requires PRIVATE_KEY for the connected wallet. Required: publisher.
byte_verify_payload(data, txHash, hashMode, expectedHash)- Verify-before-act: confirm a data payload an agent is about to act on actually matches what the publisher cryptographically attested to on-chain. Recomputes keccak256 of the received bytes and compares it to the on-chain EIP-712 PayloadAttestation hash. ALWAYS call this on BYTE-sourced data before acting on it; if verified=false the bytes were tampered/corrupted in transit and MUST NOT be used. Anchor the check with EITHER expectedHash (an on-chain payloadHash you already hold, e.g. from byte_query_fact / byte_buy_data) OR txHash (the settlement tx — also recovers the attestation signer and confirms it is the named publisher). Read-only; no wallet or payment required. Required: data.
Last successful function declaration observed on . Source: https://mcp.payperbyte.io/mcp. We list what the server declared; we do not call any of these functions.
Endpoint status observed on . Source: https://mcp.payperbyte.io/mcp.
Signals
These are separate measurements of different things. They are deliberately not combined into one score, because a popularity number that mixes website traffic with saves and stars cannot be checked or acted on.
| Signal | Value | What it measures | Window | Observed | Source |
|---|---|---|---|---|---|
| GitHub stars | 1 | Number of GitHub accounts that bookmarked this repository since it was created. It is a bookmark count, not installs, not active users and not quality. | cumulative, all time | GitHub | |
| Last commit | 2026-08-02 | Date of the most recent push to any branch. This is the strongest cheap indicator of whether the project is still maintained. | point in time | GitHub | |
| Open issues | 1 | Open issues plus open pull requests, as GitHub counts them together. A high number can mean an active project or an abandoned one. | as of fetch | GitHub | |
| Latest published version | 0.11.10 | Latest version string the maintainer published to the registry. | as of fetch | Model Context Protocol | |
| Registry record last updated | 2026-07-03 | When the registry record was last updated by its maintainer. | point in time | Model Context Protocol | |
| License | MIT | Licence GitHub detected in the repository. Detection can be wrong; the LICENSE file is authoritative. | as of fetch | GitHub | |
| First listed in the MCP Registry | 2026-07-03 | Date this server was first published to the official MCP Registry. Not a usage or quality measure. | point in time | Model Context Protocol | |
| repository status | active | The repository exists on GitHub and is not archived. This says nothing about how recently it was worked on. | as of fetch | GitHub | |
| mcp tools declared | 15 tools | Number of functions the server itself declared when asked to list them. This is what the server offers an agent, not a measure of how well any of them work. | as of probe | mcp.payperbyte.io | |
| mcp endpoint status | ok | The server listed 15 functions when asked. | as of probe | mcp.payperbyte.io |
Where to get it
Related, by what their authors tagged them
-
AI Proof of Us
— last commit 2026-08-05, shares base, eip-712, web3
Private signed AI task receipts with replay checks and optional validated AIPOU claims.
-
Haiku DeFi MCP
— last commit 2026-05-09, shares arbitrum, base, web3
DeFi execution for AI agents — swap, lend, bridge, and yield across 22 chains.
-
io.github.GeiserX/cashpilot-mcp
— last commit 2026-08-01, shares depin
MCP server for CashPilot — monitor passive income, bandwidth sharing, and DePIN earnings
-
io.github.clawdbotworker/coinopai-mcp
— last commit 2026-06-26, shares agent-commerce, base, x402
Kronos crypto signals + trade decisions + 819 automation prompts. x402 micropayments, USDC/Base.
-
io.github.clicksprotocol/mcp-server
— last commit 2026-07-21, shares agent-commerce, base, x402
Agent commerce settlement tools on Base: treasury setup, payment splits, yield and attribution.
-
DDG Agent Services
— last commit 2026-07-27, shares agent-commerce, base, x402
Pay-per-call x402 gateway: agent tools, OpenAI-compatible LLM, market data, RPC, security audits.
-
io.github.forgemeshlabs/affiliate-router-mcp
— last commit 2026-06-17, shares agent-commerce, base, x402
Route x402 payments, Pyrimid affiliate splits, and referral links. Vendor-neutral, adapter-based.
-
Agent Commerce Guard
— last commit 2026-07-29, shares agent-commerce, base, x402
Policy review and purchase discovery for AI-agent commerce actions.
-
Agent Broker
— last commit 2026-08-04, shares agent-commerce, x402
AI agents find, message & book SMBs; pay per call in USDC on Base via x402. 14 tools, compliant.
-
Kenwea Marketplace
— last commit 2026-07-28, shares agent-commerce
Agents sell, humans buy. Self-register in one call, publish keyless, get a real sandbox verdict.
These share tags the maintainers applied themselves, such as base, eip-712, web3, arbitrum. Common tags like "mcp" or "ai" are ignored for this: agreeing with six hundred other projects is not a similarity.
This is not a recommendation and not a test result. It is a map of what the authors said their work is about.
How the author describes it
Topics the maintainer set on GitHub: agent-commerce, ai-agents, arbitrum, base, data-marketplace, depin, eip-712, mcp, mcp-server, model-context-protocol, web3, x402.
This record as data
Every field on this page, with its source and observation date, is in the catalog JSON. Fetch the whole kind at once instead of parsing this HTML.
GET /api/v1/entries/mcp_server.json