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

Server definition

Hash
sha256:0e687ed682e95444b2e4f61a163afac7e3a5f50c1689525c15c3865ed4e7856b
What it is
What a remote MCP server returned when asked what it offers: 11 tools

The blob, as servednamed by its sha256

{ "instructions": null, "tools": [ { "description": "Drive a headless browser: open a URL and run an ordered list of steps — click, type, press keys, wait, extract text and screenshot. For flows the plain scraper can't reach (logins, forms, multi-step pages).", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "screenshot": { "description": "Also return a final full-page PNG screenshot (base64).", "type": "boolean" }, "steps": { "description": "Ordered actions to perform after the page loads.", "items": { "additionalProperties": false, "properties": { "action": { "description": "What to do.", "enum": [ "click", "type", "press", "wait", "extract_text", "screenshot" ], "type": "string" }, "ms": { "description": "Milliseconds to wait (wait, when no selector given).", "maximum": 10000, "minimum": 0, "type": "integer" }, "selector": { "description": "CSS selector (for click/type/wait-for/extract_text).", "type": "string" }, "text": { "description": "Text to type (type), or key to press (press, e.g. 'Enter').", "type": "string" } }, "required": [ "action" ], "type": "object" }, "maxItems": 20, "type": "array" }, "url": { "description": "Starting URL to open in a headless browser.", "format": "uri", "type": "string" } }, "required": [ "url" ], "type": "object" }, "name": "browser", "outputSchema": null }, { "description": "Crawl multiple pages of a site, respecting link depth and domain limits. Returns async job_id; results include markdown or HTML per page. Use it to fetch and process many pages of content at once.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "formats": { "description": "Output formats per page (default ['markdown']). 'html' adds raw HTML.", "items": { "enum": [ "markdown", "html" ], "type": "string" }, "type": "array" }, "limit": { "description": "Maximum pages to crawl (default 100, max 100 per call). Returns 202 with job_id for async processing. For larger sites, issue several calls: each one is priced the same, so 1.000 pages cost ten calls.", "exclusiveMinimum": 0, "maximum": 100, "type": "integer" }, "max_depth": { "description": "Maximum link depth from root (default 2, max 10). Depth 0 = root only, depth 1 = root + direct children.", "exclusiveMinimum": 0, "maximum": 10, "type": "integer" }, "same_domain": { "description": "Only crawl URLs on the same domain (default true). Subdomain links are excluded when false.", "type": "boolean" }, "url": { "description": "Root domain URL to crawl (e.g., https://example.com).", "format": "uri", "type": "string" } }, "required": [ "url" ], "type": "object" }, "name": "crawl", "outputSchema": null }, { "description": "Check the status of a crawl started with crawl, and retrieve its pages once finished. Free: the crawl itself was already paid for when it was queued.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "job_id": { "description": "Job ID returned from POST /v1/crawl, used to check status and retrieve results.", "type": "string" } }, "required": [ "job_id" ], "type": "object" }, "name": "crawl_status", "outputSchema": null }, { "description": "Fetch any public web page and return its main content as clean, token-efficient Markdown (title, description, headings, links, lists). Set render:true to execute JavaScript first for single-page apps or JS-heavy pages that would otherwise come back empty. Built for RAG and for agents that need to read the contents of a URL.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "include_images": { "description": "Keep images as markdown (default false).", "type": "boolean" }, "include_links": { "description": "Keep hyperlinks in the markdown output (default true).", "type": "boolean" }, "max_chars": { "description": "Truncate the markdown to at most this many characters (sets truncated:true).", "exclusiveMinimum": 0, "type": "integer" }, "render": { "description": "Render JavaScript with a headless browser before extracting (default false). Enable for SPAs / JS-heavy pages that return empty content otherwise. Slower.", "type": "boolean" }, "url": { "description": "Full http/https URL of the page to extract.", "format": "uri", "type": "string" } }, "required": [ "url" ], "type": "object" }, "name": "extract", "outputSchema": null }, { "description": "AI-powered structured extraction: give a URL plus a natural-language prompt and/or a JSON Schema, and get back clean structured JSON (e.g. product name, price, rating). Renders the page in a headless browser first, so it works on SPAs.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "prompt": { "description": "Natural-language instruction of what to extract, e.g. 'the product name, price and rating'. Provide this and/or a schema.", "type": "string" }, "schema": { "additionalProperties": {}, "description": "Optional JSON Schema object describing the exact shape of the data to return. When given, the output is constrained to it.", "type": "object" }, "url": { "description": "Full http/https URL of the page to extract data from.", "format": "uri", "type": "string" } }, "required": [ "url" ], "type": "object" }, "name": "extract_structured", "outputSchema": null }, { "description": "Return every hyperlink on a JavaScript-rendered page as a list of absolute URLs, with options to keep only visible links or only same-site links. Backed by a headless browser. Use it to map a site or seed a crawler.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "exclude_external": { "description": "Drop links pointing to other domains, keeping only same-site links (default false).", "type": "boolean" }, "url": { "description": "Full http/https URL of the page to read links from.", "format": "uri", "type": "string" }, "visible_only": { "description": "Return only links visible in the rendered layout (default false).", "type": "boolean" } }, "required": [ "url" ], "type": "object" }, "name": "links", "outputSchema": null }, { "description": "Discover all URLs reachable from a domain within a link depth limit. Returns a flat list of absolute URLs, respects robots.txt crawl delays. Use it to map a site's structure before crawling.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "include_subdomains": { "description": "Include URLs from subdomains (default false, same domain only).", "type": "boolean" }, "limit": { "description": "Maximum URLs to return (default 100, max 200 per call). Respects robots.txt crawl-delay.", "exclusiveMinimum": 0, "maximum": 200, "type": "integer" }, "search": { "description": "Optional regex or plain string to filter results (case-insensitive).", "type": "string" }, "url": { "description": "Root domain URL to map (e.g., https://example.com).", "format": "uri", "type": "string" } }, "required": [ "url" ], "type": "object" }, "name": "map", "outputSchema": null }, { "description": "Render a public URL or a raw HTML string into a PDF document, returned base64-encoded. Backed by a headless browser. Use for invoices, reports, receipts and any HTML-to-PDF need.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "format": { "description": "Paper size (default A4).", "enum": [ "A4", "Letter", "Legal", "A3", "A5", "Tabloid" ], "type": "string" }, "html": { "description": "Raw HTML string to render to PDF. Provide this OR url.", "type": "string" }, "landscape": { "description": "Landscape orientation (default false = portrait).", "type": "boolean" }, "url": { "description": "Public http/https URL to render to PDF. Provide this OR html.", "format": "uri", "type": "string" } }, "type": "object" }, "name": "pdf", "outputSchema": null }, { "description": "Extract specific elements from a JavaScript-rendered page by CSS selector. Give a list of selectors (e.g. 'h1', '.price', 'a.product') and get back the text and attributes of every match. Backed by a headless browser, so it works on SPAs and JS-heavy pages.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "selectors": { "description": "CSS selectors to extract, e.g. ['h1', 'a.product', '.price']. Returns the text and attributes of every match per selector.", "items": { "minLength": 1, "type": "string" }, "maxItems": 20, "minItems": 1, "type": "array" }, "url": { "description": "Full http/https URL of the page to scrape.", "format": "uri", "type": "string" } }, "required": [ "url", "selectors" ], "type": "object" }, "name": "scrape", "outputSchema": null }, { "description": "Capture a PNG screenshot of any public URL — full page or just the viewport, at a chosen size — returned base64-encoded. Backed by a headless browser.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "full_page": { "description": "Capture the entire scrollable page instead of just the viewport (default false).", "type": "boolean" }, "height": { "description": "Viewport height in pixels (default 800).", "exclusiveMinimum": 0, "type": "integer" }, "url": { "description": "Public http/https URL to capture.", "format": "uri", "type": "string" }, "width": { "description": "Viewport width in pixels (default 1280).", "exclusiveMinimum": 0, "type": "integer" } }, "required": [ "url" ], "type": "object" }, "name": "screenshot", "outputSchema": null }, { "description": "Capture several representations of a page in one call — rendered HTML plus a PNG screenshot by default, and optionally Markdown and the accessibility tree. Backed by a headless browser. Saves round-trips when an agent needs both the content and a visual of a page.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "formats": { "description": "Which representations to return (default ['html','screenshot']). Add 'markdown' and/or 'accessibilityTree' as needed.", "items": { "enum": [ "html", "screenshot", "markdown", "accessibilityTree" ], "type": "string" }, "type": "array" }, "full_page": { "description": "Capture the full scrollable page in the screenshot instead of just the viewport (default false).", "type": "boolean" }, "height": { "description": "Viewport height in pixels (default 800).", "exclusiveMinimum": 0, "type": "integer" }, "url": { "description": "Full http/https URL to capture.", "format": "uri", "type": "string" }, "width": { "description": "Viewport width in pixels (default 1280).", "exclusiveMinimum": 0, "type": "integer" } }, "required": [ "url" ], "type": "object" }, "name": "snapshot", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:0e687ed682e95444b2e4f61a163afac7e3a5f50c1689525c15c3865ed4e7856b | sha256sum