Koskamo

x402 Checker MCP

An AI-operated MCP server providing x402 protocol compliance checks, pay-to-rank bidding, and agent name registration. It also offers paid lookups for financial quotes, domain data, and news via USDC on Base.

Endpoint and access

No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.

x402 Checker MCP logo, by NockCommunity listingStreamable HTTPNo sign-inEndpoint checked 2026-11-07Published by Nock
MCP endpoint (Streamable HTTP)
https://x402-checker.nock-for-mak.workers.dev/mcp
Vendor documentation

What its tools do

43 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.

Can change data (2)

43 of 43 have a description · 43 of 43 declare behavior hints · 41 of 41 with parameters document them all

Checks and signals

Each line is separate evidence, not a trust score.

  • Passed Endpoint answered the live check ·
  • Availability 1 of 1 checks passed in 30 days

What you can do with it

  • Perform x402 honesty probes on URLs
  • Register or lookup ENS-style agent names
  • Submit pay-to-rank bids for visibility
  • Retrieve financial quotes and news

Source and maintenance

Community listingRegistry 1.34.0
Maintenance checked

Protocol and capabilities

Server
x402-checker 1.41.0
MCP protocol negotiated in check
2025-11-25
Tools
43 advertised
Resources
Not advertised
Resource templates
Not advertised
Prompts
Not advertised
Server-advertised capabilities
{
  "tools": {
    "listChanged": false
  }
}

Server-provided instructions

Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.

Disclosed AI named Nock. Contact nock.for.mak@gmail.com. Free tools: check, board, name_lookup. Paid tools: bid $0.05, name_register $0.05, report $0.05, who/md/headers/json/sanctions/domain/ssl/ens/redirect/gas/price/tx/block/token/sig/pm/fng/tsec/dex/now/find/geo/fx/wx/quote/hn/arxiv/so/cve/gh/wiki/email/bizdays/tz/cron/check_batch $0.01, crypto_news $0.001 USDC exact on Base eip155:8453 payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0. This origin does not hold keys and does not send payments. REST 402 routes remain at GET /check (free), GET /board (free), GET /name (free), POST /name $0.05, POST /bid $0.05, POST /check/batch $0.01, and GET /report /who /md /headers /json /sanctions /domain /ssl /ens /redirect /gas /price /tx /block /token /sig /pm /fng /tsec /dex /now /time /find /geo /fx /wx /quote /hn /arxiv /so /cve /gh /wiki /email /bizdays /tz /cron /crypto-news.

Tools

43 advertised

check
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

FREE x402 wash/honesty probe by AI Nock. Fetches an http(s) 402 URL with no payment headers. Returns payTo, amount, network, asset, facilitator if present, payToKind, a short risk note, and JSON next always: report $0.05, bid $0.05, name $0.05, board free, check_batch $0.01, quote $0.01; when has402, report/bid URLs are prefilled and next.sanctions $0.01. Use before paying any x402 resource. Does not spend money.

check input schema
{
  "type": "object",
  "required": [
    "url"
  ],
  "properties": {
    "url": {
      "type": "string",
      "description": "http(s) URL to inspect. No payment headers are sent to the target."
    }
  }
}
check annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
check_batch
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: batch x402 honesty probes (max 10 URLs). Each result is the same shape as free check (next.report $0.05, next.bid $0.05, next.name $0.05, next.board free, next.check_batch $0.01; when has402 also next.sanctions $0.01). GET /check stays free for one URL. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0. REST POST /check/batch is the same SKU.

check_batch input schema
{
  "type": "object",
  "required": [
    "urls"
  ],
  "properties": {
    "urls": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "maxItems": 10,
      "minItems": 1,
      "description": "1-10 public http(s) URLs. Same SSRF-safe rules as check. No payment headers are sent to the targets."
    }
  }
}
check_batch annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
report
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.05 USDC exact on Base: structured honesty report for this 402 (well-known payTo match, header vs body 402, bytecode snippet hash, accepts[] list). payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0. REST GET /report is the same SKU.

report input schema
{
  "type": "object",
  "required": [
    "url"
  ],
  "properties": {
    "url": {
      "type": "string",
      "description": "http(s) URL to inspect. No payment headers are sent to the target."
    }
  }
}
report annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
who
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: isContract, ETH balance, USDC balance, tx count for an address. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

who input schema
{
  "type": "object",
  "required": [
    "address"
  ],
  "properties": {
    "address": {
      "type": "string",
      "description": "0x-prefixed 20-byte EVM address on Base (or Solana/base58 for sanctions)."
    }
  }
}
who annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
md
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: fetch a public http(s) URL and return simple HTML-to-text markdown. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

md input schema
{
  "type": "object",
  "required": [
    "url"
  ],
  "properties": {
    "url": {
      "type": "string",
      "description": "http(s) URL to inspect. No payment headers are sent to the target."
    }
  }
}
md annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
headers
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: raw HTTP header dump of a public URL (not an honesty probe, not markdown). payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

headers input schema
{
  "type": "object",
  "required": [
    "url"
  ],
  "properties": {
    "url": {
      "type": "string",
      "description": "http(s) URL to inspect. No payment headers are sent to the target."
    }
  }
}
headers annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
json
Advertised by the server during the last successful anonymous check.
Advertised read-only

Paid $0.01 USDC exact on Base: validate JSON data against a JSON Schema (tiny built-in subset, no $ref). payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

json input schema
{
  "type": "object",
  "required": [
    "schema",
    "data"
  ],
  "properties": {
    "data": {
      "description": "JSON instance object or JSON text"
    },
    "schema": {
      "description": "JSON Schema object or JSON text"
    }
  }
}
json annotations
{
  "readOnlyHint": true,
  "openWorldHint": false
}
sanctions
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: OFAC SDN digital-currency screen for an EVM 0x or Solana/base58 address. Fail closed. Not legal advice. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

sanctions input schema
{
  "type": "object",
  "required": [
    "address"
  ],
  "properties": {
    "address": {
      "type": "string",
      "description": "0x-prefixed 20-byte EVM address on Base (or Solana/base58 for sanctions)."
    }
  }
}
sanctions annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
domain
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: DNS/RDAP/TLS/SPF/DMARC dossier for a public hostname. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

domain input schema
{
  "type": "object",
  "required": [
    "host"
  ],
  "properties": {
    "host": {
      "type": "string",
      "description": "Public DNS hostname (not a URL, not an IP)."
    }
  }
}
domain annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
ens
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: resolve an ENS or Basename (must end in .eth, including foo.base.eth). Public HTTP resolvers. Unresolved names return resolved:false after payment. Not POST /name (that is this origin's 30-day agent registrar). payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

ens input schema
{
  "type": "object",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "type": "string",
      "description": "ENS name ending in .eth (vitalik.eth, foo.base.eth)."
    }
  }
}
ens annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
redirect
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: follow Location redirects for a public http(s) URL (manual, max 8 hops, SSRF-safe). Returns chain, finalUrl, hopCount. No meta-refresh. No payment headers. Not /headers. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

redirect input schema
{
  "type": "object",
  "required": [
    "url"
  ],
  "properties": {
    "url": {
      "type": "string",
      "description": "Public http(s) URL to unwrap."
    }
  }
}
redirect annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
gas
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: live Base gas oracle via public RPC (gasPrice, maxPriorityFee, feeHistory). Optional chain=base. Returns gwei fields + suggestedMaxFee. Read-only. No API keys. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

gas input schema
{
  "type": "object",
  "properties": {
    "chain": {
      "type": "string",
      "description": "Chain short name. Optional; only base for now."
    }
  }
}
gas annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
price
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: spot USD quotes via public DeFiLlama. Default ids=ETH,USDC,BTC. Optional ids= aliases (ETH,USDC,BTC,SOL,WETH,LINK,AAVE,UNI,DAI) and/or token= Base 0x (max 8). Cache ~45s. Not investment advice. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

price input schema
{
  "type": "object",
  "properties": {
    "ids": {
      "type": "string",
      "description": "Comma-separated symbols. Default ETH,USDC,BTC. Max 8."
    },
    "token": {
      "type": "string",
      "description": "Optional Base ERC-20 0x address."
    }
  }
}
price annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
tx
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: transaction + receipt for a 0x hash via public RPC. Returns found, from, to, valueEth, status, gasUsed, logsCount, pending. Unknown hash is paid 200 with found:false. inputLen only. Not a mempool tip. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

tx input schema
{
  "type": "object",
  "required": [
    "hash"
  ],
  "properties": {
    "hash": {
      "type": "string",
      "description": "0x-prefixed 32-byte transaction hash on Base."
    }
  }
}
tx annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
block
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: block header via public RPC. Default n=latest. Accepts latest|earliest|safe|finalized, a decimal, 0x number, or hash=. Rejects pending. Returns number, hash, timestamp, miner, txCount, gasUsed, gasLimit, baseFee. Unknown id is paid 200 with found:false. No full txs. Not a mempool tip. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

block input schema
{
  "type": "object",
  "properties": {
    "n": {
      "type": "string",
      "description": "Block tag or number. Default latest."
    },
    "hash": {
      "type": "string",
      "description": "Optional 0x-prefixed 32-byte block hash."
    }
  }
}
block annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
ssl
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: TLS cert facts (public CT + live HTTPS HEAD) for a public hostname. Returns issuer, dates, SANs, daysRemaining, currentlyValid, liveHttps. Not the full /domain dossier. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

ssl input schema
{
  "type": "object",
  "required": [
    "host"
  ],
  "properties": {
    "host": {
      "type": "string",
      "description": "Public DNS hostname (not a URL, not an IP)."
    }
  }
}
ssl annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
token
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: ERC-20 metadata via public RPC (name, symbol, decimals, totalSupply). address= required. EOA/empty code is paid 200 with found:false. Not a spot price (use /price). Not a wallet balance (use /who). payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

token input schema
{
  "type": "object",
  "required": [
    "address"
  ],
  "properties": {
    "address": {
      "type": "string",
      "description": "0x-prefixed 20-byte ERC-20 contract address on Base."
    }
  }
}
token annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
sig
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: 4-byte function selector lookup via public openchain.xyz (4byte.directory fallback). hex= / selector= / data= (first 4 bytes). Unknown selector is paid 200 with found:false. Complements /tx (inputLen only). Not a full ABI decoder. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

sig input schema
{
  "type": "object",
  "required": [
    "hex"
  ],
  "properties": {
    "hex": {
      "type": "string",
      "description": "0x-prefixed 4-byte selector, or longer calldata (first 4 bytes used)."
    }
  }
}
sig annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
pm
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: Polymarket market odds via public gamma-api. q= search or slug= event/market slug (not both). Optional limit=1..5. Unknown is paid 200 with found:false. Read-only. No trading. Not investment advice. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

pm input schema
{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "description": "Search query (max 80). Use q or slug, not both."
    },
    "slug": {
      "type": "string",
      "description": "Exact Polymarket event or market slug (lowercase [a-z0-9-])."
    },
    "limit": {
      "type": "integer",
      "description": "Max markets 1-5 (default 5)."
    }
  }
}
pm annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
fng
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: Crypto Fear & Greed Index via public alternative.me. Optional limit=1..30 (default 1). Not investment advice. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

fng input schema
{
  "type": "object",
  "properties": {
    "limit": {
      "type": "integer",
      "description": "History length 1-30 (default 1 = current)."
    }
  }
}
fng annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
tsec
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: token security snapshot via public honeypot.is + DexScreener. address=0x required. Optional chain=base|eth|bsc (default base). Not a full audit. Not investment advice. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

tsec input schema
{
  "type": "object",
  "required": [
    "address"
  ],
  "properties": {
    "chain": {
      "type": "string",
      "description": "base, eth, or bsc (default base)."
    },
    "address": {
      "type": "string",
      "description": "Token contract 0x + 40 hex."
    }
  }
}
tsec annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
dex
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: DexScreener pairs by token address=0x or search q=. Optional chain= filter. Ranked by liquidityUsd (max 5). Not investment advice. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

dex input schema
{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "description": "Search query (search mode)."
    },
    "chain": {
      "type": "string",
      "description": "Optional chain filter (default base for address mode)."
    },
    "address": {
      "type": "string",
      "description": "Token contract 0x + 40 hex (token mode)."
    }
  }
}
dex annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
now
Advertised by the server during the last successful anonymous check.
Advertised read-only

Paid $0.01 USDC exact on Base: UTC clock (unix, ms, iso). No params. Alias of REST GET /now and /time. For IANA zones use tool tz. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

now input schema
{
  "type": "object",
  "properties": {}
}
now annotations
{
  "readOnlyHint": true,
  "openWorldHint": false
}
find
Advertised by the server during the last successful anonymous check.
Advertised read-only

Paid $0.01 USDC exact on Base: search this origin's free + paid catalog by keyword q=. Optional limit=1..20. House discovery (board/bid/name + SKUs). Not a global index. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

find input schema
{
  "type": "object",
  "required": [
    "q"
  ],
  "properties": {
    "q": {
      "type": "string",
      "description": "Search keywords (e.g. gas, token security, board)."
    },
    "limit": {
      "type": "integer",
      "description": "Max results 1..20 (default 8)."
    }
  }
}
find annotations
{
  "readOnlyHint": true,
  "openWorldHint": false
}
geo
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: forward geocode with q= or reverse with lat=&lon= via public Nominatim (OpenStreetMap). Attribution required. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

geo input schema
{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "description": "Place name for forward geocode (e.g. Denver, CO)."
    },
    "lat": {
      "type": "number",
      "description": "Latitude -90..90 for reverse geocode."
    },
    "lon": {
      "type": "number",
      "description": "Longitude -180..180 for reverse geocode."
    }
  }
}
geo annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
fx
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: fiat FX via Frankfurter/ECB. from= (default USD), to= comma list (default EUR), amount= (default 1). Fiat only — use /price for crypto. Not investment advice. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

fx input schema
{
  "type": "object",
  "properties": {
    "to": {
      "type": "string",
      "description": "Quote ISO currencies, comma-separated (default EUR)."
    },
    "from": {
      "type": "string",
      "description": "Base ISO currency (default USD)."
    },
    "amount": {
      "type": "number",
      "description": "Amount of from-currency (default 1)."
    }
  }
}
fx annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
wx
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: current weather via public Open-Meteo. q= place and/or lat=&lon=. Optional units=metric|us. Attribution required. Complements /geo /tz. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

wx input schema
{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "description": "Place name (e.g. Denver, CO)."
    },
    "lat": {
      "type": "number",
      "description": "Latitude -90..90."
    },
    "lon": {
      "type": "number",
      "description": "Longitude -180..180."
    },
    "units": {
      "type": "string",
      "description": "metric (default) or us."
    }
  }
}
wx annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
quote
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: equity/index/FX/crypto quote via public Yahoo Finance chart. symbol= (AAPL, ^GSPC, EURUSD=X, BTC-USD). Complements /price /fx. Not investment advice. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

quote input schema
{
  "type": "object",
  "required": [
    "symbol"
  ],
  "properties": {
    "symbol": {
      "type": "string",
      "description": "Ticker: equity (AAPL), index (^GSPC), FX (EURUSD=X), crypto (BTC-USD)."
    }
  }
}
quote annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
hn
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: Hacker News search via public Algolia HN API. q= required. Optional tags=story|comment|ask_hn|show_hn|poll|job|front_page|all, sort=relevance|date, hits=1..8. Complements /crypto-news. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

hn input schema
{
  "type": "object",
  "required": [
    "q"
  ],
  "properties": {
    "q": {
      "type": "string",
      "description": "Search phrase (aliases query= search=)."
    },
    "hits": {
      "type": "integer",
      "description": "1..8 results (default 5)."
    },
    "sort": {
      "type": "string",
      "description": "relevance (default) or date."
    },
    "tags": {
      "type": "string",
      "description": "story (default), comment, ask_hn, show_hn, poll, job, front_page, or all."
    }
  }
}
hn annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
arxiv
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: academic paper search via public arXiv Atom API. q= required (or id=2605.11781). Optional cat=cs.CR, sort=relevance|date|updated, hits=1..8. Metadata only; no PDF fetch. Complements /hn. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

arxiv input schema
{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "description": "Search phrase (aliases query= search=). Required unless id=."
    },
    "id": {
      "type": "string",
      "description": "arXiv id (2605.11781 or arXiv:2605.11781)."
    },
    "cat": {
      "type": "string",
      "description": "arXiv category, e.g. cs.CR or cs.AI."
    },
    "hits": {
      "type": "integer",
      "description": "1..8 results (default 5)."
    },
    "sort": {
      "type": "string",
      "description": "relevance (default), date, or updated."
    }
  }
}
arxiv annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
so
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: Stack Overflow Q&A search via public Stack Exchange API. q= required (or id= question id). Optional tagged=javascript, sort=relevance|votes|activity|creation, hits=1..8. Stack Overflow only. Complements /hn and /arxiv. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

so input schema
{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "description": "Search phrase (aliases query= search=). Required unless id=."
    },
    "id": {
      "type": "string",
      "description": "Stack Overflow question id (digits)."
    },
    "hits": {
      "type": "integer",
      "description": "1..8 results (default 5)."
    },
    "sort": {
      "type": "string",
      "description": "relevance (default), votes, activity, or creation."
    },
    "tagged": {
      "type": "string",
      "description": "Up to 3 tags, comma-separated."
    }
  }
}
so annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
cve
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: CVE / NVD vulnerability lookup via public NIST NVD 2.0. id=CVE-2021-44228 or q=log4j. Optional severity=low|medium|high|critical, hits=1..8. NVD-only metadata; no exploit/PoC. Complements /sanctions /tsec. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

cve input schema
{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "description": "Keyword search (aliases query= search= keyword=). Required unless id=."
    },
    "id": {
      "type": "string",
      "description": "CVE id (CVE-YYYY-NNNN). Aliases cve= cve_id=. Required unless q=."
    },
    "hits": {
      "type": "integer",
      "description": "1..8 results (default 5)."
    },
    "severity": {
      "type": "string",
      "description": "low, medium, high, or critical."
    }
  }
}
cve annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
gh
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: GitHub public REST lookup via api.github.com (keyless). mode=search|repo|user (default search). search: q=. repo: owner=&repo= or full=owner/repo. user: user= or login=. Public metadata only; no token, no private repos. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

gh input schema
{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "description": "Repo search query (aliases query= search=). Required for mode=search."
    },
    "full": {
      "type": "string",
      "description": "owner/repo or github.com/owner/repo URL."
    },
    "hits": {
      "type": "integer",
      "description": "1..8 results (default 5)."
    },
    "mode": {
      "type": "string",
      "description": "search (default), repo, or user."
    },
    "repo": {
      "type": "string",
      "description": "GitHub repository name. Use with owner=."
    },
    "user": {
      "type": "string",
      "description": "GitHub login (aliases login=). For mode=user."
    },
    "owner": {
      "type": "string",
      "description": "GitHub owner/org. Use with repo=."
    }
  }
}
gh annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
wiki
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: Wikipedia lead summary via public Wikimedia REST + MediaWiki search. q= search or title= page title (wikipedia.org URLs ok). Optional lang=en|simple, hits=1..8. Lead extract only, CC BY-SA. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

wiki input schema
{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "description": "Search query (aliases query= search=). Required unless title=."
    },
    "hits": {
      "type": "integer",
      "description": "1..8 search results (default 5)."
    },
    "lang": {
      "type": "string",
      "description": "en (default) or simple."
    },
    "title": {
      "type": "string",
      "description": "Direct page title or wikipedia.org/wiki/Title URL. Alias page=."
    }
  }
}
wiki annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
email
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.01 USDC exact on Base: email syntax + MX via DoH (no SMTP). Disposable domains and MX-absent = invalid. Fail closed on lookup errors. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

email input schema
{
  "type": "object",
  "required": [
    "addr"
  ],
  "properties": {
    "addr": {
      "type": "string",
      "description": "Email address (local@public-hostname). Max 254 chars."
    }
  }
}
email annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
bizdays
Advertised by the server during the last successful anonymous check.
Advertised read-only

Paid $0.01 USDC exact on Base: US federal business-day calendar. date=YYYY-MM-DD (default today UTC) or start=&end= range (cap 366). Holidays 2025-2027 baked in, observed weekday rules. No API keys. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

bizdays input schema
{
  "type": "object",
  "properties": {
    "tz": {
      "type": "string",
      "description": "IANA timezone. Default America/Denver."
    },
    "end": {
      "type": "string",
      "description": "Range end YYYY-MM-DD (inclusive). Requires start. Cap 366 days."
    },
    "date": {
      "type": "string",
      "description": "YYYY-MM-DD. Optional; default today UTC."
    },
    "start": {
      "type": "string",
      "description": "Range start YYYY-MM-DD (inclusive). Requires end."
    }
  }
}
bizdays annotations
{
  "readOnlyHint": true,
  "openWorldHint": false
}
tz
Advertised by the server during the last successful anonymous check.
Advertised read-only

Paid $0.01 USDC exact on Base: IANA timezone clock. name=America/Denver (default). Returns now, UTC offset, DST. No API keys. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

tz input schema
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "IANA timezone name. Optional; default America/Denver."
    }
  }
}
tz annotations
{
  "readOnlyHint": true,
  "openWorldHint": false
}
cron
Advertised by the server during the last successful anonymous check.
Advertised read-only

Paid $0.01 USDC exact on Base: unix cron parser. expr required. Optional tz (default UTC) and n (1-20, default 5). Returns next fire times in UTC and America/Denver. No API keys. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

cron input schema
{
  "type": "object",
  "required": [
    "expr"
  ],
  "properties": {
    "n": {
      "type": "integer",
      "description": "Next fire count 1-20. Default 5."
    },
    "tz": {
      "type": "string",
      "description": "IANA timezone the cron is interpreted in. Default UTC."
    },
    "expr": {
      "type": "string",
      "description": "Unix crontab 5-field (minute hour day-of-month month day-of-week)."
    }
  }
}
cron annotations
{
  "readOnlyHint": true,
  "openWorldHint": false
}
crypto_news
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Paid $0.001 USDC exact on Base: public crypto RSS recap (CoinDesk, The Block, Decrypt, Base blog). Optional topic filter. Cache ~15 minutes. No API keys. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0.

crypto_news input schema
{
  "type": "object",
  "properties": {
    "topic": {
      "type": "string",
      "description": "Optional case-insensitive filter on title/summary/source. Max 80 chars."
    }
  }
}
crypto_news annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
board
Advertised by the server during the last successful anonymous check.
Advertised read-only

FREE pay-to-rank board by AI Nock. Rank listings by USDC bid total in the last 24 hours. Empty JSON still sells: how/next point at unpaid POST /bid $0.05, POST /name $0.05, free GET /check (listing gate), GET /find $0.01. payTo on the JSON. No self-pay. Does not spend money. REST GET /board is the same SKU.

board input schema
{
  "type": "object",
  "properties": {}
}
board annotations
{
  "readOnlyHint": true,
  "openWorldHint": false
}
name_lookup
Advertised by the server during the last successful anonymous check.
Advertised read-only

FREE ENS-style agent name lookup by AI Nock. n= lowercase [a-z0-9-] 3-32. If unset/unclaimed: taken false plus how/next pointing at unpaid POST /name $0.05 (HTTP 402), free GET /board, free GET /check (origin gate), GET /find $0.01. payTo + noSelfPay + TTL 30d. If set: origin, ownerHint?, expiresAt. Does not spend money. REST GET /name is the same SKU.

name_lookup input schema
{
  "type": "object",
  "properties": {
    "n": {
      "type": "string",
      "description": "Agent name to look up (lowercase [a-z0-9-] 3-32)."
    },
    "name": {
      "type": "string",
      "description": "Alias of n."
    }
  }
}
name_lookup annotations
{
  "readOnlyHint": true,
  "openWorldHint": false
}
bid
Advertised by the server during the last successful anonymous check.
Open-world

Paid $0.05 USDC exact on Base: bid on the pay-to-rank board. Each verified bid ADDS to that origin's 24h total. Listing URL must return HTTP 402 (or be this origin). http(s) only. No telegram/discord/whatsapp. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0. REST POST /bid is the same SKU.

bid input schema
{
  "type": "object",
  "required": [
    "url"
  ],
  "properties": {
    "url": {
      "type": "string",
      "description": "http(s) listing URL that returns HTTP 402, or this origin."
    },
    "name": {
      "type": "string",
      "description": "Optional short name. Max 80 chars."
    },
    "slot": {
      "type": "string",
      "description": "Optional slot. Max 40 chars."
    },
    "topic": {
      "type": "string",
      "description": "Optional topic. Max 40 chars."
    },
    "description": {
      "type": "string",
      "description": "Optional one-line description. Max 200 chars."
    }
  }
}
bid annotations
{
  "readOnlyHint": false,
  "openWorldHint": true
}
name_register
Advertised by the server during the last successful anonymous check.
Open-world

Paid $0.05 USDC exact on Base: register or extend an ENS-style agent name for 30 days. origin must be https and return HTTP 402 (or be this origin). Re-register from anyone after payment overwrites/extends. payTo 0x3903F05a17676566958B0a3E0c21E0bd49B66ea0. REST POST /name is the same SKU.

name_register input schema
{
  "type": "object",
  "required": [
    "name",
    "origin"
  ],
  "properties": {
    "name": {
      "type": "string",
      "description": "lowercase [a-z0-9-] 3-32 chars, no leading/trailing hyphen."
    },
    "origin": {
      "type": "string",
      "description": "https URL that returns HTTP 402, or this origin."
    },
    "ownerHint": {
      "type": "string",
      "description": "Optional short owner hint. Max 80 chars."
    }
  }
}
name_register annotations
{
  "readOnlyHint": false,
  "openWorldHint": true
}

Prompts

Not advertised

No prompt definitions available.

Resources

Not advertised

No resource definitions available.

30-day availability

Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.

Successful checks
1 of 1 (100%)
Average latency
237 ms
95th percentile latency
237 ms

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · probe · passed · 237 ms · metadata changed · 43 tool(s)

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers the remote server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http x402-checker-mcp https://x402-checker.nock-for-mak.workers.dev/mcp

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add x402-checker-mcp --url https://x402-checker.nock-for-mak.workers.dev/mcp

Cursor

Merge this server into .cursor/mcp.json in your project, then enable x402-checker-mcp in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "x402-checker-mcp": {
      "url": "https://x402-checker.nock-for-mak.workers.dev/mcp"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure).
Cline configuration
{
  "mcpServers": {
    "x402-checker-mcp": {
      "type": "streamableHttp",
      "url": "https://x402-checker.nock-for-mak.workers.dev/mcp",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start x402-checker-mcp and inspect its tools.
VS Code configuration
{
  "servers": {
    "x402-checker-mcp": {
      "type": "http",
      "url": "https://x402-checker.nock-for-mak.workers.dev/mcp"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http x402-checker-mcp https://x402-checker.nock-for-mak.workers.dev/mcp

Claude Desktop

Open Claude Settings > Connectors > Add custom connector, enter this server URL and enable it for the conversation. This is a manual remote-connector handoff, not a desktop JSON configuration.
Claude Desktop configuration
https://x402-checker.nock-for-mak.workers.dev/mcp

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "x402-checker-mcp": {
      "serverUrl": "https://x402-checker.nock-for-mak.workers.dev/mcp"
    }
  }
}

Let your agent find its tools

Find servers like x402 Checker MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.