{"name":"Grokzilla micro pay","description":"Pay-per-call x402 tools on Base (USDC). Free skill discovery over MCP.","url":"https://grokzilla.shop/mcp","provider":{"organization":"grokzilla.shop","url":"https://grokzilla.shop"},"version":"0.1.0","documentationUrl":"https://grokzilla.shop/agents","capabilities":{"streaming":false,"pushNotifications":false},"defaultInputModes":["application/json"],"defaultOutputModes":["application/json"],"additionalInterfaces":[{"transport":"mcp-streamable-http","url":"https://grokzilla.shop/mcp"}],"payment":{"protocol":"x402","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0xc22f9CAEBAc37fE72D5142f35f21f6696Ea9Ef69"},"skills":[{"id":"osint_graph","name":"Public OSINT Graph","description":"Resolves one public name on Wikidata and returns a relationship graph from a fixed property list (instance of, country, headquarters, founder, chief executive, ownership, employer, education, membership, and similar), up to two hops. People include only notable public roles. If nothing matches, the graph is empty and reason explains why. Price $0.01 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"seo","name":"SEO Optimizer","description":"Fetches a URL and returns an on-page SEO score from real checks (title, meta, headings, alt text, keywords, and more). If the page cannot be fetched, returns an error status (403/404/5xx), is a CDN/WAF challenge page, or times out (7 s cap), it answers 422 with score null, the reason, and charged:false; no payment is taken. Price $0.012 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"ai_detector","name":"AI Content Detector","description":"Estimate whether text (or a web page's text) is AI-written using a trained classifier: about 78% accurate on a held-out benchmark (not a guarantee). Uncertain results suggest a rerun on a longer section (300+ words); tell phrases are only a secondary 'possible AI influence' signal. Price $0.01 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"json_flatten","name":"JSON Flattener","description":"Deterministic nested JSON to flat path-value map. Arrays, custom separators, depth limits. Price $0.006 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"json_sort","name":"JSON Key Sorter","description":"Recursively sort object keys and return canonical compact JSON. Deterministic, no network. Price $0.003 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"text_diff","name":"Text Diff","description":"Lightweight deterministic line/word/char diff. Structured ops plus a one-line delta summary. Price $0.006 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"url_normalize","name":"URL Normalizer","description":"Canonicalize URLs: strip tracking params, force HTTPS, sort query, extract components. Price $0.005 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"html_clean","name":"HTML Cleaner","description":"Strip scripts/styles and return readable text or markdown from HTML. mode normalized: text with NFKC and zero-width/bidi characters stripped. Price $0.008 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"json_schema_validate","name":"JSON Schema Validator","description":"Cheap schema gate: type, required, properties, array items, plus format checks (email, date, date-time, uri, ipv4, ipv6, uuid, hostname). Price $0.006 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"keyword_extract","name":"Keyword Extractor","description":"Deterministic term ranking from free text. Stopword-filtered. ngrams 2-3 adds scored multi-word phrases. Price $0.008 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"token_count","name":"Token Counter","description":"Approximate cl100k/o200k token counts for budget decisions. Price $0.004 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"sha256","name":"SHA-256 Hash","description":"Hash a string (SHA-256 by default; algo: sha512, sha3_256 or blake2b_256) and return hex plus a short prefix. Deterministic, no network. Price $0.003 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"uuid_mint","name":"UUID Minter","description":"Mint 1-32 IDs for agent job IDs and idempotency keys: UUID v4 (default), v7 or v1 (time-ordered), or ULID (format: ulid). v7 and ULID batches sort in mint order. Price $0.003 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"slugify","name":"Slugify","description":"Turn free text into a URL-safe lowercase slug. Deterministic, no network. Price $0.003 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"pii_redact","name":"PII Redactor","description":"Redact emails, phone numbers, SSN-shaped strings, Luhn-valid card numbers and IPv4 addresses with typed placeholders. Deterministic, no network. Price $0.003 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"csv_normalize","name":"CSV Normalizer","description":"Parse CSV into JSON rows keyed by trimmed snake_case headers, plus a type hint per column (integer, number, boolean, date, datetime, string). Deterministic, no network. Price $0.003 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"base64","name":"Base64 Encode/Decode","description":"Encode UTF-8 text or decode it back: base64 (default; standard or URL-safe), base32, base58 (Bitcoin alphabet), hex or URI percent-encoding (codec). Deterministic, no network. Price $0.003 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"epoch_convert","name":"Epoch Converter","description":"Convert epoch seconds or milliseconds (detected by magnitude) or an ISO-8601 string into epoch_s, epoch_ms, UTC ISO and ISO in any IANA time zone. Deterministic, no network. Price $0.003 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"url_to_markdown","name":"URL to Markdown","description":"Fetch one public web page and return its title and clean Markdown (headings, links, lists, code, tables). Honors robots.txt, SSRF-guarded, HTML only, 1 MB / 5 s caps. No JavaScript rendering. Price $0.003 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"token_risk","name":"Token Risk (Base)","description":"Heuristic risk checks for a Base ERC-20: contract code, metadata, proxy, owner/renounced, mint/blacklist/pause/fee selectors, deepest Uniswap/Aerodrome pool, and simulated sell/buy transfers with measured tax. Read-only public RPC. Not financial advice. Price $0.005 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"json_repair","name":"JSON Repair","description":"Repair malformed or truncated JSON from LLMs, JS or Python: strips ```json fences and comments, fixes trailing commas, single quotes, unquoted keys, True/False/None, missing commas and unclosed strings/brackets. Returns the parsed JSON, a compact repaired JSON string and the list of fixes. Deterministic, no network. Price $0.0041 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"cron_next","name":"Cron Next Runs","description":"Validate a 5-field cron expression (lists, ranges, steps, JAN-DEC/SUN-SAT names, @daily/@hourly macros) and return its next 1-20 run times in any IANA time zone (DST-aware), as local ISO, UTC ISO and epoch seconds. Deterministic, no network. Price $0.0031 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"token_price","name":"Verified Token Price (Base)","description":"Verified USD price for a Base ERC-20: DeFiLlama cross-checked against the deepest on-chain Uniswap/Aerodrome pool. Returns price, spread, staleness, confidence. Refused, not charged, if sources disagree over 2.5% or one is missing. Data only, not investment advice. Price $0.002 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"email_check","name":"Email Deliverability Check","description":"Check an email address for deliverability: syntax, canonical form, MX, SPF, DMARC, disposable domain. One verdict with reasons and sources. DNS-over-HTTPS only, no mailbox probing. Not charged if the DNS lookup fails. Price $0.0032 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"news_brief","name":"News Brief with Sources","description":"Topic in, deduplicated story clusters out: headline, every outlet URL and first-seen time, from GDELT and publisher RSS. Headlines and links only, no article text. Not charged when nothing matches or sources fail. Price $0.0101 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"ip_intel","name":"IP & CIDR Intel","description":"One public IP or CIDR in: normalized network, size, membership checks, plus holder, abuse contact and origin ASN from RIR RDAP and RIPEstat, and country from DB-IP Lite (CC BY 4.0, attributed). Private ranges refused before payment. Not charged if registries fail. Price $0.0033 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"llm_cost_quote","name":"LLM Cost Quote","description":"Text or token counts in, cost per model out, cheapest first, from OpenRouter's public price list with a price-fetched-at timestamp. Applies time-of-day pricing. Not charged if the price list is unavailable or no model matches. Price $0.0034 USDC via x402.","tags":["x402","pay-per-call"]},{"id":"phone_normalize","name":"Phone Normalize & Validate","description":"Parse and validate one phone number with full libphonenumber metadata: valid/possible, number type, region, E.164, national and international formats. Offline. No owner or carrier lookup. Unparseable numbers refused before payment. Price $0.0021 USDC via x402.","tags":["x402","pay-per-call"]}],"partner_resale":{"group":"partner_resale","description":"Resold partner services (provider x402-mcp.onrender.com, not ours). GET with query params, paid per call via x402 on Base. Your payment settles first; if the partner then fails you get charged:true plus a full refund record. Output is normalized to grokzilla.partner-resale.v1. Separate from the native skills list.","count":4,"output_schema_id":"grokzilla.partner-resale.v1","services":[{"id":"base-tx-decision","group":"partner_resale","name":"Base tx decision (partner resale)","description":"Resold partner service: submit-or-wait verdict and EIP-1559 fee suggestion for a Base mainnet transaction, from live Base RPC block data.","url":"https://grokzilla.shop/api/resale/base/tx-decision","path":"/api/resale/base/tx-decision","method":"GET","price":"0.020001","price_usd":0.020001,"amount_atomic":"20001","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","network":"eip155:8453","payTo":"0xc22f9CAEBAc37fE72D5142f35f21f6696Ea9Ef69","mimeType":"application/json","provider":"x402-mcp.onrender.com","resold":true,"tags":["base","gas","partner"],"input":{"type":"http","method":"GET","queryParams":{"type":"object","properties":{"gas":{"type":"string","description":"Transaction kind, e.g. eth, usdc, x402","default":"usdc"},"urgency":{"type":"string","description":"e.g. flexible, normal, urgent","default":"flexible"}},"required":[]},"example":{"gas":"usdc","urgency":"flexible"}},"output_schema_id":"grokzilla.partner-resale.v1","output_schema":{"description":"Normalized base-tx-decision response (grokzilla.partner-resale.v1).","type":"object","properties":{"ok":{"description":"Always true on a 200 response.","type":"boolean"},"schema":{"description":"Schema id, currently grokzilla.partner-resale.v1.","type":"string"},"route":{"description":"Our route id, e.g. base-tx-decision.","type":"string"},"provider":{"description":"Upstream data provider we resell (attribution).","type":"string"},"subject":{"description":"What was checked.","type":"object","properties":{"kind":{"description":"base_network | base_tx | street_address.","type":"string"},"value":{"description":"The subject as the provider resolved it (tx hash, normalized address); null for network-wide checks.","type":["string","null"]},"jurisdiction":{"description":"base | nyc | minneapolis.","type":"string"}},"required":["kind","value","jurisdiction"],"additionalProperties":false},"verdict":{"description":"Provider verdict, lower snake case (settle_now, safe, registered_with_violations, licensed_clean, unlicensed...).","type":["string","null"]},"status":{"description":"ok, or no_records when a property lookup matched nothing (then a negative verdict may mean 'not found', not a confirmed negative).","type":"string"},"summary":{"description":"Provider's one-line explanation, when it sends one.","type":["string","null"]},"risk_flags":{"description":"Machine-readable flags derived only from returned fields (see per-route list).","type":"array","items":{"type":"string"}},"evidence":{"description":"Records backing the verdict (capped at 25).","type":"array","items":{"type":"object","properties":{"type":{"description":"Record kind, e.g. block, tx_block, hpd_registration, hpd_violation, rental_license, code_case.","type":"string"},"id":{"description":"Record identifier as issued by the source (block number, registration id, case number).","type":["string","null"]},"date":{"description":"Most relevant date for the record (YYYY-MM-DD, or ISO 8601 for chain data).","type":["string","null"]},"status":{"description":"Record status as reported by the source.","type":["string","null"]},"code":{"description":"Source classification code (HPD class, Minneapolis violation code, license tier).","type":["string","null"]},"detail":{"description":"Short source text for the record (violation description, inspection type).","type":["string","null"]}},"required":["type","id","date","status","code","detail"],"additionalProperties":false}},"sources":{"description":"Source dataset URLs reported by the provider; null when the provider names none.","type":["array","null"],"items":{"type":"string"}},"disclaimer":{"description":"Provider's disclaimer, passed through verbatim.","type":["string","null"]},"checked_at":{"description":"When the provider computed the result (ISO 8601, UTC).","type":["string","null"]},"upstream_tx":{"description":"Base tx hash of our payment to the provider for this call (receipt).","type":["string","null"]},"data":{"description":"Route-specific fields for base-tx-decision.","type":"object","properties":{"submit":{"description":"True = submit now, false = wait.","type":["boolean","null"]},"urgency":{"description":"Urgency the decision was computed for (echo of input).","type":["string","null"]},"fee":{"description":"Fee suggestion.","type":"object","properties":{"max_fee_per_gas_gwei":{"description":"Suggested EIP-1559 maxFeePerGas, gwei.","type":["number","null"]},"max_priority_fee_per_gas_gwei":{"description":"Suggested maxPriorityFeePerGas, gwei.","type":["number","null"]},"current_base_fee_gwei":{"description":"Base fee of the latest block, gwei.","type":["number","null"]},"next_base_fee_gwei":{"description":"Projected base fee of the next block, gwei.","type":["number","null"]}},"required":["max_fee_per_gas_gwei","max_priority_fee_per_gas_gwei","current_base_fee_gwei","next_base_fee_gwei"],"additionalProperties":false},"estimated_cost":{"description":"Estimated cost of the transaction.","type":"object","properties":{"gas":{"description":"Gas units assumed for the transaction kind.","type":["integer","null"]},"eth":{"description":"Estimated fee in ETH.","type":["number","null"]},"usd":{"description":"Estimated fee in USD.","type":["number","null"]}},"required":["gas","eth","usd"],"additionalProperties":false},"recheck_in_s":{"description":"Seconds until a recheck is suggested; null when not needed.","type":["integer","null"]},"as_of_block":{"description":"Base block the decision is based on.","type":["integer","null"]},"chain":{"description":"CAIP-2 chain id.","type":["string","null"]}},"required":["submit","urgency","fee","estimated_cost","recheck_in_s","as_of_block","chain"],"additionalProperties":false}},"required":["ok","schema","route","provider","subject","verdict","status","summary","risk_flags","evidence","sources","disclaimer","checked_at","upstream_tx","data"],"additionalProperties":false,"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://grokzilla.shop/schemas/grokzilla.partner-resale.v1/base-tx-decision.json"},"example_response":{"ok":true,"schema":"grokzilla.partner-resale.v1","route":"base-tx-decision","provider":"x402-mcp.onrender.com","subject":{"kind":"base_network","value":null,"jurisdiction":"base"},"verdict":"settle_now","status":"ok","summary":"Blockspace is 4.5% full at 0.0050 gwei - settlement is at or near the floor with ~22.1x headroom. No congestion premium; a stablecoin transfer settles for a fraction of a cent.","risk_flags":[],"evidence":[{"type":"block","id":"52702618","date":"2026-10-16T23:49:46.011831+00:00","status":null,"code":null,"detail":null}],"sources":null,"disclaimer":null,"checked_at":"2026-10-16T23:49:46.011831+00:00","upstream_tx":"0x954459f45d1427ddf187d34bd5d17f6e637030e920080ef106efeb10222b46ce","data":{"submit":true,"urgency":"flexible","fee":{"max_fee_per_gas_gwei":0.011,"max_priority_fee_per_gas_gwei":0.001,"current_base_fee_gwei":0.005,"next_base_fee_gwei":0.004432},"estimated_cost":{"gas":55000,"eth":3.3e-07,"usd":0.000799},"recheck_in_s":null,"as_of_block":52702618,"chain":"eip155:8453"}}},{"id":"base-finality-check","group":"partner_resale","name":"Base finality check (partner resale)","description":"Resold partner service: inclusion, confirmations and safe/finalized status for a Base transaction hash.","url":"https://grokzilla.shop/api/resale/base/finality-check","path":"/api/resale/base/finality-check","method":"GET","price":"0.020002","price_usd":0.020002,"amount_atomic":"20002","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","network":"eip155:8453","payTo":"0xc22f9CAEBAc37fE72D5142f35f21f6696Ea9Ef69","mimeType":"application/json","provider":"x402-mcp.onrender.com","resold":true,"tags":["base","finality","partner"],"input":{"type":"http","method":"GET","queryParams":{"type":"object","properties":{"tx":{"type":"string","pattern":"^0x[0-9a-fA-F]{64}$","description":"Base tx hash"}},"required":["tx"]},"example":{"tx":"0xeb43b522a462fa251ba7d6eb8f47dcc7cf0a5bc6cc53bce48cbeb685a79f480e"}},"output_schema_id":"grokzilla.partner-resale.v1","output_schema":{"description":"Normalized base-finality-check response (grokzilla.partner-resale.v1).","type":"object","properties":{"ok":{"description":"Always true on a 200 response.","type":"boolean"},"schema":{"description":"Schema id, currently grokzilla.partner-resale.v1.","type":"string"},"route":{"description":"Our route id, e.g. base-tx-decision.","type":"string"},"provider":{"description":"Upstream data provider we resell (attribution).","type":"string"},"subject":{"description":"What was checked.","type":"object","properties":{"kind":{"description":"base_network | base_tx | street_address.","type":"string"},"value":{"description":"The subject as the provider resolved it (tx hash, normalized address); null for network-wide checks.","type":["string","null"]},"jurisdiction":{"description":"base | nyc | minneapolis.","type":"string"}},"required":["kind","value","jurisdiction"],"additionalProperties":false},"verdict":{"description":"Provider verdict, lower snake case (settle_now, safe, registered_with_violations, licensed_clean, unlicensed...).","type":["string","null"]},"status":{"description":"ok, or no_records when a property lookup matched nothing (then a negative verdict may mean 'not found', not a confirmed negative).","type":"string"},"summary":{"description":"Provider's one-line explanation, when it sends one.","type":["string","null"]},"risk_flags":{"description":"Machine-readable flags derived only from returned fields (see per-route list).","type":"array","items":{"type":"string"}},"evidence":{"description":"Records backing the verdict (capped at 25).","type":"array","items":{"type":"object","properties":{"type":{"description":"Record kind, e.g. block, tx_block, hpd_registration, hpd_violation, rental_license, code_case.","type":"string"},"id":{"description":"Record identifier as issued by the source (block number, registration id, case number).","type":["string","null"]},"date":{"description":"Most relevant date for the record (YYYY-MM-DD, or ISO 8601 for chain data).","type":["string","null"]},"status":{"description":"Record status as reported by the source.","type":["string","null"]},"code":{"description":"Source classification code (HPD class, Minneapolis violation code, license tier).","type":["string","null"]},"detail":{"description":"Short source text for the record (violation description, inspection type).","type":["string","null"]}},"required":["type","id","date","status","code","detail"],"additionalProperties":false}},"sources":{"description":"Source dataset URLs reported by the provider; null when the provider names none.","type":["array","null"],"items":{"type":"string"}},"disclaimer":{"description":"Provider's disclaimer, passed through verbatim.","type":["string","null"]},"checked_at":{"description":"When the provider computed the result (ISO 8601, UTC).","type":["string","null"]},"upstream_tx":{"description":"Base tx hash of our payment to the provider for this call (receipt).","type":["string","null"]},"data":{"description":"Route-specific fields for base-finality-check.","type":"object","properties":{"tx":{"description":"Transaction hash checked.","type":["string","null"]},"included":{"description":"Whether the tx is in a block.","type":["boolean","null"]},"finality":{"description":"Provider finality status (e.g. safe, finalized).","type":["string","null"]},"tx_block":{"description":"Block containing the tx.","type":["integer","null"]},"confirmations":{"description":"Blocks on top of tx_block.","type":["integer","null"]},"latest_block":{"description":"Latest block at check time.","type":["integer","null"]},"safe_block":{"description":"Latest 'safe' (L1-attested) block.","type":["integer","null"]},"finalized_block":{"description":"Latest finalized block.","type":["integer","null"]}},"required":["tx","included","finality","tx_block","confirmations","latest_block","safe_block","finalized_block"],"additionalProperties":false}},"required":["ok","schema","route","provider","subject","verdict","status","summary","risk_flags","evidence","sources","disclaimer","checked_at","upstream_tx","data"],"additionalProperties":false,"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://grokzilla.shop/schemas/grokzilla.partner-resale.v1/base-finality-check.json"},"example_response":{"ok":true,"schema":"grokzilla.partner-resale.v1","route":"base-finality-check","provider":"x402-mcp.onrender.com","subject":{"kind":"base_tx","value":"0xeb43b522a462fa251ba7d6eb8f47dcc7cf0a5bc6cc53bce48cbeb685a79f480e","jurisdiction":"base"},"verdict":"safe","status":"ok","summary":"Block 52702514 is at or behind the 'safe' block (52702610) but ahead of 'finalized' (52702040) -- L1-attested, reorg risk is extremely low but not yet finalized.","risk_flags":["not_finalized"],"evidence":[{"type":"tx_block","id":"52702514","date":null,"status":"safe","code":null,"detail":null}],"sources":null,"disclaimer":null,"checked_at":"2026-10-16T23:49:48+00:00","upstream_tx":"0x50a2a223bd29271107677d756e8f72ae480cd7f02ac445908d77d3e99376361d","data":{"tx":"0xeb43b522a462fa251ba7d6eb8f47dcc7cf0a5bc6cc53bce48cbeb685a79f480e","included":true,"finality":"safe","tx_block":52702514,"confirmations":107,"latest_block":52702620,"safe_block":52702610,"finalized_block":52702040}}},{"id":"nyc-property-check","group":"partner_resale","name":"NYC property check (partner resale)","description":"Resold partner service: NYC HPD registration and housing-violation lookup for a street address.","url":"https://grokzilla.shop/api/resale/us/nyc/property-check","path":"/api/resale/us/nyc/property-check","method":"GET","price":"0.020003","price_usd":0.020003,"amount_atomic":"20003","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","network":"eip155:8453","payTo":"0xc22f9CAEBAc37fE72D5142f35f21f6696Ea9Ef69","mimeType":"application/json","provider":"x402-mcp.onrender.com","resold":true,"tags":["real-estate","nyc","partner"],"input":{"type":"http","method":"GET","queryParams":{"type":"object","properties":{"address":{"type":"string","minLength":3,"description":"NYC street address incl. borough"}},"required":["address"]},"example":{"address":"225 EAST 19 STREET MANHATTAN"}},"output_schema_id":"grokzilla.partner-resale.v1","output_schema":{"description":"Normalized nyc-property-check response (grokzilla.partner-resale.v1).","type":"object","properties":{"ok":{"description":"Always true on a 200 response.","type":"boolean"},"schema":{"description":"Schema id, currently grokzilla.partner-resale.v1.","type":"string"},"route":{"description":"Our route id, e.g. base-tx-decision.","type":"string"},"provider":{"description":"Upstream data provider we resell (attribution).","type":"string"},"subject":{"description":"What was checked.","type":"object","properties":{"kind":{"description":"base_network | base_tx | street_address.","type":"string"},"value":{"description":"The subject as the provider resolved it (tx hash, normalized address); null for network-wide checks.","type":["string","null"]},"jurisdiction":{"description":"base | nyc | minneapolis.","type":"string"}},"required":["kind","value","jurisdiction"],"additionalProperties":false},"verdict":{"description":"Provider verdict, lower snake case (settle_now, safe, registered_with_violations, licensed_clean, unlicensed...).","type":["string","null"]},"status":{"description":"ok, or no_records when a property lookup matched nothing (then a negative verdict may mean 'not found', not a confirmed negative).","type":"string"},"summary":{"description":"Provider's one-line explanation, when it sends one.","type":["string","null"]},"risk_flags":{"description":"Machine-readable flags derived only from returned fields (see per-route list).","type":"array","items":{"type":"string"}},"evidence":{"description":"Records backing the verdict (capped at 25).","type":"array","items":{"type":"object","properties":{"type":{"description":"Record kind, e.g. block, tx_block, hpd_registration, hpd_violation, rental_license, code_case.","type":"string"},"id":{"description":"Record identifier as issued by the source (block number, registration id, case number).","type":["string","null"]},"date":{"description":"Most relevant date for the record (YYYY-MM-DD, or ISO 8601 for chain data).","type":["string","null"]},"status":{"description":"Record status as reported by the source.","type":["string","null"]},"code":{"description":"Source classification code (HPD class, Minneapolis violation code, license tier).","type":["string","null"]},"detail":{"description":"Short source text for the record (violation description, inspection type).","type":["string","null"]}},"required":["type","id","date","status","code","detail"],"additionalProperties":false}},"sources":{"description":"Source dataset URLs reported by the provider; null when the provider names none.","type":["array","null"],"items":{"type":"string"}},"disclaimer":{"description":"Provider's disclaimer, passed through verbatim.","type":["string","null"]},"checked_at":{"description":"When the provider computed the result (ISO 8601, UTC).","type":["string","null"]},"upstream_tx":{"description":"Base tx hash of our payment to the provider for this call (receipt).","type":["string","null"]},"data":{"description":"Route-specific fields for nyc-property-check.","type":"object","properties":{"address_queried":{"description":"Address as the provider normalized it.","type":["string","null"]},"parsed_address":{"description":"Address parts the provider parsed.","type":"object","properties":{"house_number":{"description":"House number.","type":["string","null"]},"street":{"description":"Street name.","type":["string","null"]},"borough":{"description":"NYC borough.","type":["string","null"]}},"required":["house_number","street","borough"],"additionalProperties":false},"registered":{"description":"Has an HPD multiple-dwelling registration.","type":["boolean","null"]},"registrations":{"description":"HPD registrations (no owner/agent names).","type":"array","items":{"type":"object","properties":{"registration_id":{"description":"HPD registration id.","type":["string","null"]},"building_id":{"description":"HPD building id.","type":["string","null"]},"bin":{"description":"NYC Building Identification Number.","type":["string","null"]},"block":{"description":"Tax block.","type":["string","null"]},"lot":{"description":"Tax lot.","type":["string","null"]},"borough":{"description":"Borough.","type":["string","null"]},"zip":{"description":"ZIP code.","type":["string","null"]},"last_registration_date":{"description":"Last registration date (YYYY-MM-DD).","type":["string","null"]},"registration_end_date":{"description":"Registration expiry (YYYY-MM-DD).","type":["string","null"]}},"required":["registration_id","building_id","bin","block","lot","borough","zip","last_registration_date","registration_end_date"],"additionalProperties":false}},"violations":{"description":"HPD housing-maintenance violations.","type":"object","properties":{"total":{"description":"Total violations on record.","type":["integer","null"]},"open_count":{"description":"Provider's count of not-closed violations ('openish_count').","type":["integer","null"]},"recent":{"description":"Most recent violations as returned (provider caps the list).","type":"array","items":{"type":"object","properties":{"violation_id":{"description":"HPD violation id.","type":["string","null"]},"class":{"description":"HPD class A/B/C (C = immediately hazardous).","type":["string","null"]},"inspection_date":{"description":"Inspection date (YYYY-MM-DD).","type":["string","null"]},"status":{"description":"HPD status text.","type":["string","null"]},"apartment":{"description":"Apartment, if unit-specific.","type":["string","null"]},"description":{"description":"HPD violation text.","type":["string","null"]}},"required":["violation_id","class","inspection_date","status","apartment","description"],"additionalProperties":false}}},"required":["total","open_count","recent"],"additionalProperties":false}},"required":["address_queried","parsed_address","registered","registrations","violations"],"additionalProperties":false}},"required":["ok","schema","route","provider","subject","verdict","status","summary","risk_flags","evidence","sources","disclaimer","checked_at","upstream_tx","data"],"additionalProperties":false,"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://grokzilla.shop/schemas/grokzilla.partner-resale.v1/nyc-property-check.json"},"example_response":{"ok":true,"schema":"grokzilla.partner-resale.v1","route":"nyc-property-check","provider":"x402-mcp.onrender.com","subject":{"kind":"street_address","value":"225 EAST 19 STREET MANHATTAN","jurisdiction":"nyc"},"verdict":"registered_with_violations","status":"ok","summary":null,"risk_flags":["has_violations","open_violations","class_c_in_recent"],"evidence":[{"type":"hpd_registration","id":"144626","date":"2027-09-01","status":null,"code":null,"detail":null},{"type":"hpd_violation","id":"18829417","date":"2026-04-29","status":"VIOLATION DISMISSED","code":"A","detail":"(A) § HMC:FILE ANNUAL BEDBUG REPORT IN ACCORDANCE WITH HPD RULE AS DESCRIBED ON THE BACK OF THIS NOTICE OF VIOLATION OR AS DESCRIBED ON HPD'S WEBSITE, WWW.NYC.GOV\\HPD, SEARCH BED BUGS."}],"sources":["https://data.cityofnewyork.us/resource/tesw-yqqr.json","https://data.cityofnewyork.us/resource/wvxf-dwi5.json"],"disclaimer":"Public records from New York City open data, served as-is; not legal advice. Verify with the city before acting.","checked_at":"2026-10-16T23:49:58+00:00","upstream_tx":"0xe69884d253d6618bd4e9f99695b60239618a8275b3dbf1508e87e3926c71943f","data":{"address_queried":"225 EAST 19 STREET MANHATTAN","parsed_address":{"house_number":"225","street":"EAST 19 STREET","borough":"MANHATTAN"},"registered":true,"registrations":[{"registration_id":"144626","building_id":"12374","bin":"1090879","block":"900","lot":"7501","borough":"MANHATTAN","zip":"10003","last_registration_date":"2026-07-30","registration_end_date":"2027-09-01"}],"violations":{"total":26,"open_count":15,"recent":[{"violation_id":"18829417","class":"A","inspection_date":"2026-04-29","status":"VIOLATION DISMISSED","apartment":null,"description":"(A) § HMC:FILE ANNUAL BEDBUG REPORT IN ACCORDANCE WITH HPD RULE AS DESCRIBED ON THE BACK OF THIS NOTICE OF VIOLATION OR AS DESCRIBED ON HPD'S WEBSITE, WWW.NYC.GOV\\HPD, SEARCH BED BUGS."},{"violation_id":"17944892","class":"A","inspection_date":"2025-06-04","status":"VIOLATION DISMISSED","apartment":null,"description":"(A) § HMC:FILE ANNUAL BEDBUG REPORT IN ACCORDANCE WITH HPD RULE AS DESCRIBED ON THE BACK OF THIS NOTICE OF VIOLATION OR AS DESCRIBED ON HPD'S WEBSITE, WWW.NYC.GOV\\HPD, SEARCH BED BUGS."}]}}}},{"id":"mn-property-check","group":"partner_resale","name":"Minneapolis property check (partner resale)","description":"Resold partner service: Minneapolis rental-license and code-enforcement case lookup for a street address.","url":"https://grokzilla.shop/api/resale/mn/property-check","path":"/api/resale/mn/property-check","method":"GET","price":"0.020004","price_usd":0.020004,"amount_atomic":"20004","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","network":"eip155:8453","payTo":"0xc22f9CAEBAc37fE72D5142f35f21f6696Ea9Ef69","mimeType":"application/json","provider":"x402-mcp.onrender.com","resold":true,"tags":["real-estate","minneapolis","partner"],"input":{"type":"http","method":"GET","queryParams":{"type":"object","properties":{"address":{"type":"string","minLength":3,"description":"Minneapolis street address"}},"required":["address"]},"example":{"address":"1700 Penn Ave N"}},"output_schema_id":"grokzilla.partner-resale.v1","output_schema":{"description":"Normalized mn-property-check response (grokzilla.partner-resale.v1).","type":"object","properties":{"ok":{"description":"Always true on a 200 response.","type":"boolean"},"schema":{"description":"Schema id, currently grokzilla.partner-resale.v1.","type":"string"},"route":{"description":"Our route id, e.g. base-tx-decision.","type":"string"},"provider":{"description":"Upstream data provider we resell (attribution).","type":"string"},"subject":{"description":"What was checked.","type":"object","properties":{"kind":{"description":"base_network | base_tx | street_address.","type":"string"},"value":{"description":"The subject as the provider resolved it (tx hash, normalized address); null for network-wide checks.","type":["string","null"]},"jurisdiction":{"description":"base | nyc | minneapolis.","type":"string"}},"required":["kind","value","jurisdiction"],"additionalProperties":false},"verdict":{"description":"Provider verdict, lower snake case (settle_now, safe, registered_with_violations, licensed_clean, unlicensed...).","type":["string","null"]},"status":{"description":"ok, or no_records when a property lookup matched nothing (then a negative verdict may mean 'not found', not a confirmed negative).","type":"string"},"summary":{"description":"Provider's one-line explanation, when it sends one.","type":["string","null"]},"risk_flags":{"description":"Machine-readable flags derived only from returned fields (see per-route list).","type":"array","items":{"type":"string"}},"evidence":{"description":"Records backing the verdict (capped at 25).","type":"array","items":{"type":"object","properties":{"type":{"description":"Record kind, e.g. block, tx_block, hpd_registration, hpd_violation, rental_license, code_case.","type":"string"},"id":{"description":"Record identifier as issued by the source (block number, registration id, case number).","type":["string","null"]},"date":{"description":"Most relevant date for the record (YYYY-MM-DD, or ISO 8601 for chain data).","type":["string","null"]},"status":{"description":"Record status as reported by the source.","type":["string","null"]},"code":{"description":"Source classification code (HPD class, Minneapolis violation code, license tier).","type":["string","null"]},"detail":{"description":"Short source text for the record (violation description, inspection type).","type":["string","null"]}},"required":["type","id","date","status","code","detail"],"additionalProperties":false}},"sources":{"description":"Source dataset URLs reported by the provider; null when the provider names none.","type":["array","null"],"items":{"type":"string"}},"disclaimer":{"description":"Provider's disclaimer, passed through verbatim.","type":["string","null"]},"checked_at":{"description":"When the provider computed the result (ISO 8601, UTC).","type":["string","null"]},"upstream_tx":{"description":"Base tx hash of our payment to the provider for this call (receipt).","type":["string","null"]},"data":{"description":"Route-specific fields for mn-property-check.","type":"object","properties":{"address_queried":{"description":"Address as queried.","type":["string","null"]},"licensed":{"description":"Has an active Minneapolis rental license.","type":["boolean","null"]},"rental_licenses":{"description":"Rental licenses (owner names removed).","type":"array","items":{"type":"object","properties":{"license_number":{"description":"License number.","type":["string","null"]},"status":{"description":"License status.","type":["string","null"]},"tier":{"description":"Minneapolis license tier.","type":["string","null"]},"category":{"description":"License category code.","type":["string","null"]},"licensed_units":{"description":"Licensed units.","type":["integer","null"]},"issue_date":{"description":"Issue date (YYYY-MM-DD).","type":["string","null"]},"expiration_date":{"description":"Expiry (YYYY-MM-DD).","type":["string","null"]},"ward":{"description":"City ward.","type":["string","null"]},"neighborhood":{"description":"Neighborhood.","type":["string","null"]},"community":{"description":"Community.","type":["string","null"]},"short_term_rental":{"description":"Short-term rental flag.","type":["boolean","null"]},"apn":{"description":"Parcel number.","type":["string","null"]},"address":{"description":"Licensed address.","type":["string","null"]}},"required":["license_number","status","tier","category","licensed_units","issue_date","expiration_date","ward","neighborhood","community","short_term_rental","apn","address"],"additionalProperties":false}},"violations":{"description":"Code-enforcement cases.","type":"object","properties":{"total":{"description":"Total violation cases.","type":["integer","null"]},"open":{"description":"Open cases.","type":["integer","null"]},"abated":{"description":"Abated cases.","type":["integer","null"]},"recent":{"description":"Most recent cases as returned.","type":"array","items":{"type":"object","properties":{"case_number":{"description":"Case number.","type":["string","null"]},"case_type":{"description":"Case type.","type":["string","null"]},"case_group":{"description":"Case group.","type":["string","null"]},"case_status":{"description":"Case status.","type":["string","null"]},"inspection_result":{"description":"Inspection result.","type":["string","null"]},"inspection_type":{"description":"What was cited.","type":["string","null"]},"violation_code":{"description":"Violation code.","type":["string","null"]},"start_date":{"description":"Opened (YYYY-MM-DD).","type":["string","null"]},"completed_date":{"description":"Closed (YYYY-MM-DD).","type":["string","null"]}},"required":["case_number","case_type","case_group","case_status","inspection_result","inspection_type","violation_code","start_date","completed_date"],"additionalProperties":false}}},"required":["total","open","abated","recent"],"additionalProperties":false},"condemned_or_boarded":{"description":"Condemned/boarded registry.","type":"object","properties":{"flagged":{"description":"On the condemned/boarded list.","type":["boolean","null"]},"record_count":{"description":"Number of registry records returned.","type":["integer","null"]}},"required":["flagged","record_count"],"additionalProperties":false}},"required":["address_queried","licensed","rental_licenses","violations","condemned_or_boarded"],"additionalProperties":false}},"required":["ok","schema","route","provider","subject","verdict","status","summary","risk_flags","evidence","sources","disclaimer","checked_at","upstream_tx","data"],"additionalProperties":false,"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://grokzilla.shop/schemas/grokzilla.partner-resale.v1/mn-property-check.json"},"example_response":{"ok":true,"schema":"grokzilla.partner-resale.v1","route":"mn-property-check","provider":"x402-mcp.onrender.com","subject":{"kind":"street_address","value":"1700 Penn Ave N","jurisdiction":"minneapolis"},"verdict":"licensed_clean","status":"ok","summary":null,"risk_flags":["has_violations"],"evidence":[{"type":"rental_license","id":"LIC394217","date":"2027-03-01","status":"Active","code":"Tier 1","detail":null},{"type":"code_case","id":"CE1284448","date":"2022-03-02","status":"Closed","code":"HIS158","detail":"Install, Replace Or Repair Handrails"}],"sources":["https://services.arcgis.com/afSMGVsC7QlRK1kZ/ArcGIS/rest/services/Active_Rental_Licenses/FeatureServer/0","https://services.arcgis.com/afSMGVsC7QlRK1kZ/ArcGIS/rest/services/CaseViolations/FeatureServer/0","https://services.arcgis.com/afSMGVsC7QlRK1kZ/ArcGIS/rest/services/Condemned_by_Boarding/FeatureServer/0"],"disclaimer":"Public records from City of Minneapolis Open Data, served as-is; not legal advice. Verify with the city before acting.","checked_at":"2026-10-16T23:44:15+00:00","upstream_tx":"0x6501e1bd0c6c3491563b65e9a91c45d2820db1ff12474380bf316b508af7ae67","data":{"address_queried":"1700 Penn Ave N","licensed":true,"rental_licenses":[{"license_number":"LIC394217","status":"Active","tier":"Tier 1","category":"CONV","licensed_units":1,"issue_date":"2021-05-24","expiration_date":"2027-03-01","ward":"5","neighborhood":"Willard - Hay","community":"Near North","short_term_rental":false,"apn":"1602924320087","address":"1700 PENN AVE N"}],"violations":{"total":12,"open":0,"abated":12,"recent":[{"case_number":"CE1284448","case_type":"HIS","case_group":"HISRENTAL","case_status":"Closed","inspection_result":"Abate","inspection_type":"Install, Replace Or Repair Handrails","violation_code":"HIS158","start_date":"2022-03-02","completed_date":"2022-12-06"},{"case_number":"CE1284447","case_type":"HIS","case_group":"HISRENTAL","case_status":"Closed","inspection_result":"Abate","inspection_type":"Windows Must Be Operational","violation_code":"HIS713","start_date":"2022-03-02","completed_date":"2022-03-02"}]},"condemned_or_boarded":{"flagged":false,"record_count":0}}}}]}}