{"format":"mcp-tools-list","server":{"name":"webcap","version":"0.1.0","url":"https://webcap.shoutsid.fyi","openapi":"https://webcap.shoutsid.fyi/openapi.json","skill":"https://webcap.shoutsid.fyi/skill.md"},"mcp":{"transport":"streamable-http","url":"https://webcap.shoutsid.fyi/mcp","method":"POST","note":"JSON-RPC 2.0 (initialize, tools/list, tools/call). No install, no session, no API key. Paid tool calls return the x402 402 challenge."},"payment":"Paid endpoints settle gasless USDC via x402 (HTTP 402); every 409/402 response carries a paidNext pointer.","tools":[{"name":"webcap_service_catalog","description":"Free service catalog (no payment): every paid endpoint with its exact price in USDC, the settlement network, USDC asset, payTo address, facilitator and the step-by-step x402 how-to-pay flow, plus the free allowance this caller has left. Call this first to learn what webcap sells and what it costs.","inputSchema":{"type":"object","properties":{}},"endpoint":{"method":"GET","path":"/v1/x402/service"}},{"name":"webcap_preview","description":"Free bounded preview of a page: title, description, headings, links, word count and a truncated markdown slice. Use it to peek before the full extract. Rate-limited per IP. This is a teaser, not the product: the real products are free too inside the rolling per-IP allowance.","inputSchema":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"Absolute http(s) URL of the page to process, e.g. https://example.com/"}},"required":["url"]},"endpoint":{"method":"GET","path":"/v1/extract/preview?url=..."}},{"name":"webcap_og","description":"Free Open Graph metadata for a URL: title, description, image, icon. No payment.","inputSchema":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"Absolute http(s) URL of the page to process, e.g. https://example.com/"}},"required":["url"]},"endpoint":{"method":"GET","path":"/v1/og?url=..."}},{"name":"webcap_capture","description":"PAID ($0.001): turn a URL into a persistent public artifact. Image/PDF formats (png, jpeg, pdf) are $0.001 and include free OG metadata; video formats (mp4, webm) are $0.005 and scroll-record the page. Settles gasless USDC over x402 — but an unpaid call runs free while the rolling per-IP allowance lasts, so just call it.","inputSchema":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"Absolute http(s) URL of the page to process, e.g. https://example.com/"},"format":{"type":"string","enum":["png","jpeg","pdf","mp4","webm"],"default":"png","description":"Artifact format, default png. png/jpeg/pdf = screenshot/PDF at $0.001 (POST /v1/x402/capture); mp4/webm = scroll video at $0.005 (POST /v1/x402/video). The 402 challenge states the exact price for the format you chose."},"fullPage":{"type":"boolean","default":false,"description":"Image/PDF only. true captures the whole scrollable page (default false: viewport only)."},"durationMs":{"type":"integer","minimum":1,"maximum":30000,"default":5000,"description":"Video formats only. Scroll duration in milliseconds, 1-30000; default 5000."}},"required":["url"]},"endpoint":{"method":"POST","path":"/v1/x402/capture"}},{"name":"webcap_extract","description":"PAID ($0.01): structured content as JSON: title, headings, paragraphs, links, images, document-order markdown. One payment covers a batch of up to 50 URLs. Provide exactly one of \"url\" (single page) or \"urls\" (batch).","inputSchema":{"type":"object","oneOf":[{"required":["url"]},{"required":["urls"]}],"properties":{"url":{"type":"string","format":"uri","description":"A single page to extract, e.g. https://example.com/. Shorthand for \"urls\": [\"<url>\"]. Mutually exclusive with \"urls\" — sending both is an error."},"urls":{"type":"array","items":{"type":"string","format":"uri"},"maxItems":50,"description":"Batch of pages for one payment, at most 50 items; a batch of one is allowed. Mutually exclusive with \"url\" — sending both is an error."},"schema":{"type":"string","description":"Optional natural-language description of the JSON to extract. Omit it to get the default page structure."}}},"endpoint":{"method":"POST","path":"/v1/x402/extract"}},{"name":"webcap_audit","description":"PAID ($0.002): SEO basics plus link and Open Graph health for one URL in a single call. Returns issues with severity, not just raw tags.","inputSchema":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"Absolute http(s) URL of the page to process, e.g. https://example.com/"}},"required":["url"]},"endpoint":{"method":"POST","path":"/v1/x402/audit"}},{"name":"webcap_map_lite","description":"PAID ($0.002): discover a site's URLs from its sitemap and robots.txt plus a 1-hop same-host crawl, and return them as a JSON list. Cheaper than crawling each page with webcap_extract.","inputSchema":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"Absolute http(s) URL of the page to process, e.g. https://example.com/"},"maxUrls":{"type":"integer","minimum":1,"maximum":50,"default":20,"description":"Maximum number of URLs to return. Integer 1-50; default 20 when omitted."}},"required":["url"]},"endpoint":{"method":"POST","path":"/v1/x402/map-lite"}},{"name":"webcap_analyze","description":"PAID ($0.01): AI analysis of one URL. Pick the task that matches the question you are answering.","inputSchema":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"Absolute http(s) URL of the page to process, e.g. https://example.com/"},"task":{"type":"string","enum":["classification","accessibility","layout","entities","sentiment"],"description":"What to analyze (required, no default): classification = page type, accessibility = a11y issues, layout = structure and regions, entities = named entities and facts, sentiment = tone."}},"required":["url","task"]},"endpoint":{"method":"POST","path":"/v1/x402/analyze"}}]}