{"name":"qrcode-pub","title":"QRCode.Pub tools","version":"1.0.0","protocolVersion":"2025-06-18","transport":"streamable-http","endpoint":"https://qrcode.pub/mcp","registry":"pub.qrcode/tools","docs":"https://qrcode.pub/qr-code-api#mcp","instructions":"qr_code is free. page_to_markdown, page_metadata and host_file are paid per call with x402 (USDC on Base or Solana, no account or API key): call the tool without `payment` to receive the 402 payload (price in `accepts`), sign it with any x402 client (@x402/fetch, x402-axios, the Solana `pay` MCP server, …), then call again with the base64 payment payload as `payment`. The same tools are plain HTTP endpoints at https://qrcode.pub/x402 (catalog) for clients that already speak x402. Docs: https://qrcode.pub/qr-code-api#mcp","tools":[{"name":"qr_code","title":"QR code image (free)","description":"Generate a QR code image (PNG or SVG) for any text or link. Free, no account. The answer carries the image and a permanent image URL you can embed or print.","inputSchema":{"type":"object","properties":{"data":{"type":"string","description":"Text or URL to encode (max 2000 chars)"},"size":{"type":"integer","minimum":32,"maximum":2000,"description":"Pixels (default 300)"},"format":{"type":"string","enum":["png","svg"],"description":"Image format (default png)"},"ecc":{"type":"string","enum":["L","M","Q","H"],"description":"Error correction (default M)"},"margin":{"type":"integer","minimum":0,"maximum":20,"description":"Quiet zone in modules (default 4)"},"color":{"type":"string","description":"Foreground hex, e.g. 1a237e (default 000000)"},"bgcolor":{"type":"string","description":"Background hex, e.g. ffffff"}},"required":["data"]},"annotations":{"readOnlyHint":true,"idempotentHint":true,"openWorldHint":false}},{"name":"page_to_markdown","title":"Web page → Markdown ($0.01/call)","description":"Fetch a public web page and return its title, description, clean Markdown (scripts, styles, nav chrome removed) and the list of links. No model call, deterministic. Price: $0.01 USDC per call via x402 (USDC on Base or Solana, no account; nothing is charged for a bad input).","inputSchema":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"Public http(s) page to fetch"},"payment":{"type":"string","description":"x402 payment: the base64 PAYMENT-SIGNATURE value (x402 v2 payment payload signed for one entry of the `accepts` list returned when this tool is called without it). Omit to get the price and payment requirements."}},"required":["url"]},"annotations":{"readOnlyHint":true,"openWorldHint":true}},{"name":"page_metadata","title":"Web page metadata ($0.005/call)","description":"Fetch a public web page and return its metadata: title, description, canonical URL, language, OpenGraph and Twitter card tags, icons and parsed JSON-LD blocks. Price: $0.005 USDC per call via x402 (USDC on Base or Solana, no account; nothing is charged for a bad input).","inputSchema":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"Public http(s) page to fetch"},"payment":{"type":"string","description":"x402 payment: the base64 PAYMENT-SIGNATURE value (x402 v2 payment payload signed for one entry of the `accepts` list returned when this tool is called without it). Omit to get the price and payment requirements."}},"required":["url"]},"annotations":{"readOnlyHint":true,"openWorldHint":true}},{"name":"host_file","title":"Host a file at a public URL for 30 days ($0.01/call)","description":"Upload a file (≤ 5 MB; png, jpeg, webp, gif, pdf, json, txt, md or csv) and get a stable public URL https://qrcode.pub/f/<id> that any agent, tool or browser can fetch for 30 days. Nothing executable is accepted. The answer includes a delete token. Price: $0.01 USDC per call via x402 (USDC on Base or Solana, no account; nothing is charged for a bad input).","inputSchema":{"type":"object","properties":{"content":{"type":"string","description":"The file: plain text, or base64 when encoding is \"base64\" (binary types must be base64)"},"encoding":{"type":"string","enum":["text","base64"],"description":"How `content` is encoded (default text)"},"content_type":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif","application/pdf","application/json","text/plain","text/markdown","text/csv"],"description":"MIME type of the file"},"name":{"type":"string","description":"Optional file name (letters, digits, . - _; max 80 chars)"},"payment":{"type":"string","description":"x402 payment: the base64 PAYMENT-SIGNATURE value (x402 v2 payment payload signed for one entry of the `accepts` list returned when this tool is called without it). Omit to get the price and payment requirements."}},"required":["content","content_type"]},"annotations":{"readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}}]}