Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,071Paid calls: 1,551Letters: 14Defects: 1,323counted 2 min ago
teppi

Server definition

Hash
sha256:d7e73638b0fd768193344cbe7e70ec413315d069c057299f03cf68345a4dd072
What it is
What a remote MCP server returned when asked what it offers: 15 tools

The blob, as servednamed by its sha256

{ "instructions": "Bundle of pay-per-call x402 resources: page reading, browser rendering, and x402 marketplace rankings. Paid tools cost $0.01-$0.02/call in USDC on Base via the x402 protocol: call once without x_payment to get the payment challenge, complete it with your x402 wallet tooling (e.g. agentcash), then retry with x_payment set. list_rank_categories is free.", "tools": [ { "description": "Audit the on-page SEO fundamentals search engines and social platforms actually read: title and meta-description length, canonical tag, Open Graph and Twitter Card tags, heading structure, robots directives, viewport, and whether robots.txt and sitemap.xml exist. Returns a prioritised plain-English issue list and a 0-100 score per URL. Takes up to 10 URLs in one call, so competitors can be audited alongside your own page. No browser is used, so it is fast. Paid: $0.01 per call in USDC on Base via x402 — call once without x_payment to receive the payment challenge.", "inputSchema": { "properties": { "checkRobotsAndSitemap": { "default": true, "description": "Also HEAD-check /robots.txt and /sitemap.xml at each site root", "type": "boolean" }, "descriptionLengthRange": { "description": "Ideal meta-description length window (default 70-160)", "properties": { "max": { "type": "integer" }, "min": { "type": "integer" } }, "type": "object" }, "titleLengthRange": { "description": "Ideal title length window (default 30-60)", "properties": { "max": { "type": "integer" }, "min": { "type": "integer" } }, "type": "object" }, "urls": { "description": "Public http/https URLs to audit (max 10)", "items": { "type": "string" }, "type": "array" }, "x_payment": { "description": "Optional X-PAYMENT header value from a completed x402 payment. Omit on first call to receive the payment challenge; complete the payment with your x402 wallet tooling, then retry with this set.", "type": "string" } }, "required": [ "urls" ], "type": "object" }, "name": "audit_seo", "outputSchema": null }, { "description": "Run a COMPLETE health check on a page behind a single payment, and the tool to reach for when someone asks 'is this page any good?' rather than one narrow question. Covers on-page SEO and meta tags, JSON-LD structured data and social preview tags, and WCAG accessibility -- optionally plus broken links and robots.txt/sitemap crawlability. Returns one overall score, every finding in a single worst-first list with the check that produced it, and the full per-check detail. Cheaper and far simpler than calling audit_seo, validate_structured_data and scan_accessibility separately and paying three times. Paid: $0.05 per call in USDC on Base via x402 -- call once without x_payment to receive the payment challenge.", "inputSchema": { "properties": { "includeLinks": { "default": false, "description": "Also check every link on the page (slower)", "type": "boolean" }, "includeSitemap": { "default": false, "description": "Also audit robots.txt and the XML sitemap (slower)", "type": "boolean" }, "url": { "description": "Page to audit", "type": "string" }, "x_payment": { "description": "Optional X-PAYMENT header value from a completed x402 payment. Omit on first call to receive the payment challenge; complete the payment with your x402 wallet tooling, then retry with this set.", "type": "string" } }, "required": [ "url" ], "type": "object" }, "name": "audit_site_health", "outputSchema": null }, { "description": "Audit a site's crawlability from robots.txt and its XML sitemaps: whether robots.txt exists, whether it blocks all crawlers, which sitemaps it declares, whether those parse as valid XML, how many URLs they list, whether entries carry lastmod dates, and whether a live sample of those URLs actually respond. Returns a 0-100 score, a letter grade, a severity and a prioritised issue list. Accepts a bare domain. Up to 2 sites per call. Paid: $0.02 per call in USDC on Base via x402 -- call once without x_payment to receive the payment challenge.", "inputSchema": { "properties": { "maxUrlsToSample": { "default": 10, "description": "How many sitemap URLs to spot-check for a live response", "maximum": 10, "minimum": 0, "type": "integer" }, "sites": { "description": "Sites to audit (max 2); a bare domain is fine", "items": { "type": "string" }, "type": "array" }, "x_payment": { "description": "Optional X-PAYMENT header value from a completed x402 payment. Omit on first call to receive the payment challenge; complete the payment with your x402 wallet tooling, then retry with this set.", "type": "string" } }, "required": [ "sites" ], "type": "object" }, "name": "audit_sitemap", "outputSchema": null }, { "description": "Run a mix of read_page/watch_page/verify_claim/compare_pages/extract_tables operations behind a SINGLE payment instead of paying for each one separately — use this whenever you need to process more than one URL, since it saves you multiple payment negotiations. Each item needs an 'op' (\"read\", \"watch\", \"verify\", \"compare\", or \"tables\") plus that op's required fields (url for read/watch/verify/tables, urlA+urlB for compare, claim for verify). Sized by weight, not item count: read/watch/verify/tables = 1 unit each, compare = 2 units (it loads two pages); total weight per call must be ≤ 6. Paid: $0.05 flat per call (a discount vs paying per-item) in USDC on Base via x402 — call once without x_payment to receive the payment challenge.", "inputSchema": { "properties": { "items": { "items": { "properties": { "claim": { "description": "verify only — required", "type": "string" }, "includeImages": { "default": false, "type": "boolean" }, "includeLinks": { "default": false, "type": "boolean" }, "key": { "type": "string" }, "maxDiffItems": { "default": 10, "maximum": 50, "minimum": 1, "type": "integer" }, "maxLength": { "default": 50000, "maximum": 200000, "minimum": 1000, "type": "integer" }, "maxRowsPerTable": { "default": 100, "maximum": 500, "minimum": 1, "type": "integer" }, "maxTables": { "default": 10, "maximum": 20, "minimum": 1, "type": "integer" }, "op": { "enum": [ "read", "watch", "verify", "compare", "tables" ], "type": "string" }, "selector": { "type": "string" }, "url": { "description": "read/watch/verify/tables only", "type": "string" }, "urlA": { "description": "compare only", "type": "string" }, "urlB": { "description": "compare only", "type": "string" }, "waitMs": { "default": 0, "maximum": 5000, "minimum": 0, "type": "integer" } }, "required": [ "op" ], "type": "object" }, "maxItems": 6, "minItems": 1, "type": "array" }, "x_payment": { "description": "Optional X-PAYMENT header value from a completed x402 payment. Omit on first call to receive the payment challenge; complete the payment with your x402 wallet tooling, then retry with this set.", "type": "string" } }, "required": [ "items" ], "type": "object" }, "name": "batch_pages", "outputSchema": null }, { "description": "Check every link on a page and report which are broken. Each anchor is resolved to an absolute URL, de-duplicated, and checked with a HEAD request (falling back to GET where the server rejects HEAD), returning its status code, whether it redirected, response time and a severity. Gives a 0-100 score and a letter grade per page. Anchors, mailto: and tel: links are excluded because they cannot be broken. Up to 5 pages and 40 link checks per call. Paid: $0.02 per call in USDC on Base via x402 — call once without x_payment to receive the payment challenge.", "inputSchema": { "properties": { "checkExternalLinks": { "default": true, "description": "Also check links pointing off-site", "type": "boolean" }, "maxLinksPerPage": { "default": 40, "maximum": 40, "minimum": 1, "type": "integer" }, "urls": { "description": "Pages to check (max 5)", "items": { "type": "string" }, "type": "array" }, "x_payment": { "description": "Optional X-PAYMENT header value from a completed x402 payment. Omit on first call to receive the payment challenge; complete the payment with your x402 wallet tooling, then retry with this set.", "type": "string" } }, "required": [ "urls" ], "type": "object" }, "name": "check_links", "outputSchema": null }, { "description": "Compare two URLs' content and report what's different: paragraphs unique to each side, word count delta, whether they're identical. Paid: $0.02 per call in USDC on Base via x402 — call once without x_payment to receive the payment challenge.", "inputSchema": { "properties": { "maxDiffItems": { "default": 10, "maximum": 50, "minimum": 1, "type": "integer" }, "selector": { "description": "Optional CSS selector applied to both pages before comparing", "type": "string" }, "urlA": { "description": "First public http/https URL", "type": "string" }, "urlB": { "description": "Second public http/https URL", "type": "string" }, "x_payment": { "description": "Optional X-PAYMENT header value from a completed x402 payment. Omit on first call to receive the payment challenge; complete the payment with your x402 wallet tooling, then retry with this set.", "type": "string" } }, "required": [ "urlA", "urlB" ], "type": "object" }, "name": "compare_pages", "outputSchema": null }, { "description": "Extract every HTML table on a page as structured JSON — headers, row arrays, and (when headers exist and are unique) row objects keyed by header name, plus a best-effort caption for each table. Saves hand-parsing pricing tables, spec sheets, and schedules out of raw HTML. Paid: $0.01 per call in USDC on Base via x402 — call once without x_payment to receive the payment challenge.", "inputSchema": { "properties": { "maxRowsPerTable": { "default": 100, "maximum": 500, "minimum": 1, "type": "integer" }, "maxTables": { "default": 10, "maximum": 20, "minimum": 1, "type": "integer" }, "selector": { "description": "Optional CSS selector to scope the search for tables to", "type": "string" }, "url": { "description": "Public http/https URL to extract tables from", "type": "string" }, "x_payment": { "description": "Optional X-PAYMENT header value from a completed x402 payment. Omit on first call to receive the payment challenge; complete the payment with your x402 wallet tooling, then retry with this set.", "type": "string" } }, "required": [ "url" ], "type": "object" }, "name": "extract_tables", "outputSchema": null }, { "description": "List the currently available x402 service ranking categories. Free, no payment required.", "inputSchema": { "properties": {}, "type": "object" }, "name": "list_rank_categories", "outputSchema": null }, { "description": "Get a ranked list of the best x402 pay-per-call services for a task category (scored by price, usage volume, and recency, from the live Coinbase Bazaar feed). Use list_rank_categories first to see valid categories. Paid: $0.02 per call in USDC on Base via x402 — call once without x_payment to receive the payment challenge.", "inputSchema": { "properties": { "category": { "description": "Category name from list_rank_categories", "type": "string" }, "x_payment": { "description": "Optional X-PAYMENT header value from a completed x402 payment. Omit on first call to receive the payment challenge; complete the payment with your x402 wallet tooling, then retry with this set.", "type": "string" } }, "required": [ "category" ], "type": "object" }, "name": "rank_x402_services", "outputSchema": null }, { "description": "Extract clean readable markdown/text from any public URL (title, byline, excerpt, body content with nav/ads/scripts stripped). Handles JS-rendered pages. Paid: $0.01 per call in USDC on Base via x402 — call once without x_payment to receive the payment challenge.", "inputSchema": { "properties": { "includeImages": { "default": false, "type": "boolean" }, "includeLinks": { "default": false, "type": "boolean" }, "maxLength": { "default": 50000, "maximum": 200000, "minimum": 1000, "type": "integer" }, "selector": { "description": "Optional CSS selector to scope extraction to", "type": "string" }, "url": { "description": "Public http/https URL to read", "type": "string" }, "x_payment": { "description": "Optional X-PAYMENT header value from a completed x402 payment. Omit on first call to receive the payment challenge; complete the payment with your x402 wallet tooling, then retry with this set.", "type": "string" } }, "required": [ "url" ], "type": "object" }, "name": "read_page", "outputSchema": null }, { "description": "Render any public URL in a real headless browser and get back a screenshot (PNG image), PDF, or the JavaScript-rendered HTML. Paid: $0.02 per call in USDC on Base via x402 — call once without x_payment to receive the payment challenge.", "inputSchema": { "properties": { "format": { "default": "screenshot", "enum": [ "screenshot", "pdf", "html" ], "type": "string" }, "fullPage": { "default": false, "type": "boolean" }, "height": { "default": 800, "maximum": 1080, "minimum": 240, "type": "integer" }, "url": { "description": "Public http/https URL to render", "type": "string" }, "waitMs": { "default": 0, "maximum": 5000, "minimum": 0, "type": "integer" }, "width": { "default": 1280, "maximum": 1920, "minimum": 320, "type": "integer" }, "x_payment": { "description": "Optional X-PAYMENT header value from a completed x402 payment. Omit on first call to receive the payment challenge; complete the payment with your x402 wallet tooling, then retry with this set.", "type": "string" } }, "required": [ "url" ], "type": "object" }, "name": "render_url", "outputSchema": null }, { "description": "Quick WCAG-oriented accessibility scan of a page's markup: images with no alt attribute, form fields with no accessible label, a missing lang or viewport, links with no accessible name, duplicate ids, and skipped heading levels. Returns a 0-100 score, a letter grade, a severity and a prioritised issue list. This is STATIC analysis of the served HTML, so it does not check colour contrast, focus order, keyboard traps or runtime ARIA state -- the response names those exclusions explicitly rather than implying they passed. Up to 10 URLs per call. Paid: $0.01 per call in USDC on Base via x402 -- call once without x_payment to receive the payment challenge.", "inputSchema": { "properties": { "urls": { "description": "Pages to scan (max 10)", "items": { "type": "string" }, "type": "array" }, "x_payment": { "description": "Optional X-PAYMENT header value from a completed x402 payment. Omit on first call to receive the payment challenge; complete the payment with your x402 wallet tooling, then retry with this set.", "type": "string" } }, "required": [ "urls" ], "type": "object" }, "name": "scan_accessibility", "outputSchema": null }, { "description": "Validate a page's JSON-LD structured data and its social preview tags. Reports which schema.org types are present, whether each carries the fields Google's rich results require, whether any JSON-LD block fails to parse as JSON, and whether Open Graph and Twitter Card tags are complete. Useful before publishing, or to diagnose why a page renders no preview card when shared. Returns a 0-100 score, a letter grade and a prioritised issue list. Up to 10 URLs per call. Paid: $0.01 per call in USDC on Base via x402 -- call once without x_payment to receive the payment challenge.", "inputSchema": { "properties": { "urls": { "description": "Pages to validate (max 10)", "items": { "type": "string" }, "type": "array" }, "x_payment": { "description": "Optional X-PAYMENT header value from a completed x402 payment. Omit on first call to receive the payment challenge; complete the payment with your x402 wallet tooling, then retry with this set.", "type": "string" } }, "required": [ "urls" ], "type": "object" }, "name": "validate_structured_data", "outputSchema": null }, { "description": "Check whether a claimed quote or fact actually appears on a URL — a cheap citation/hallucination checker. Returns verdict exact_match, close_match (with a confidence score and the closest matching passage), or not_found. Paid: $0.01 per call in USDC on Base via x402 — call once without x_payment to receive the payment challenge.", "inputSchema": { "properties": { "claim": { "description": "The quote or fact to verify appears on the page (max 2000 chars)", "type": "string" }, "selector": { "description": "Optional CSS selector to scope the search to", "type": "string" }, "url": { "description": "Public http/https URL to check the claim against", "type": "string" }, "x_payment": { "description": "Optional X-PAYMENT header value from a completed x402 payment. Omit on first call to receive the payment challenge; complete the payment with your x402 wallet tooling, then retry with this set.", "type": "string" } }, "required": [ "url", "claim" ], "type": "object" }, "name": "verify_claim", "outputSchema": null }, { "description": "Check whether a URL's content has changed since the last check (paragraph-level diff). First call for a URL establishes a baseline (changed comes back null); later calls report true/false plus what was added or removed. Baselines are shared across callers by default for the same URL — pass a unique 'key' for a private baseline. Paid: $0.01 per call in USDC on Base via x402 — call once without x_payment to receive the payment challenge.", "inputSchema": { "properties": { "key": { "description": "Optional private namespace for your own baseline", "type": "string" }, "selector": { "description": "Optional CSS selector to scope the watched content to", "type": "string" }, "url": { "description": "Public http/https URL to watch", "type": "string" }, "x_payment": { "description": "Optional X-PAYMENT header value from a completed x402 payment. Omit on first call to receive the payment challenge; complete the payment with your x402 wallet tooling, then retry with this set.", "type": "string" } }, "required": [ "url" ], "type": "object" }, "name": "watch_page", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:d7e73638b0fd768193344cbe7e70ec413315d069c057299f03cf68345a4dd072 | sha256sum