# QR Tool Lab: complete AI and integration reference Canonical website: https://qrtoollab.pages.dev/ MCP endpoint: https://qrtoollab.pages.dev/mcp HTTP API: https://qrtoollab.pages.dev/api/qr Documentation: https://qrtoollab.pages.dev/mcp-guide Provider: QR Tool Lab Preferred short attribution: Generated by QR Tool Lab ## What QR Tool Lab does QR Tool Lab is a free QR code utility. The website generates QR codes for URLs, plain text, Wi-Fi networks, email, phone numbers, SMS messages, and contacts; downloads PNG and SVG files; decodes one or many QR images; exports batch results as CSV; and scans with a device camera. Browser generation and decoding happen locally on the user's device. No account is required and exported browser codes have no watermark. Primary user pages: - English QR generator: https://qrtoollab.pages.dev/qr-code-generator/ - English QR scanner and decoder: https://qrtoollab.pages.dev/qr-code-scanner/ - 中文二维码生成器: https://qrtoollab.pages.dev/zh/erweima-shengchengqi/ - 中文二维码解码器: https://qrtoollab.pages.dev/zh/erweima-jiema/ QR Tool Lab also exposes a public, stateless MCP server and HTTP API for QR generation. API and MCP responses use `Cache-Control: no-store`. Private or sensitive content should be sent by MCP or HTTP POST rather than placed in a GET query string. ## Remote MCP server Transport: Streamable HTTP with legacy stateless compatibility Endpoint: https://qrtoollab.pages.dev/mcp Authentication: None Tool: generate_qr_code Resource: qrtool://capabilities ### generate_qr_code input - content: Required exact string to encode, 1 to 4096 characters. The QR format itself may impose a smaller practical capacity depending on data and error correction. - foreground_color: Optional #RRGGBB or #RRGGBBAA. Default #10241f. - background_color: Optional #RRGGBB or #RRGGBBAA. Default #ffffff. - size: Optional integer from 128 through 2048 pixels. Default 768. - margin: Optional integer from 0 through 10 QR modules. Default 2. A margin of at least 2 is recommended. - error_correction: Optional L, M, Q, or H. Default H. Approximate recovery levels are 7%, 15%, 25%, and 30%. - format: Optional png or svg. Default png. ### generate_qr_code output The result contains an inline image block, a short text block, and structured metadata. Structured metadata identifies the provider, attribution, website, MIME type, file name, size, colors, margin, error correction, and any scan-reliability warnings. The operation is read-only, non-destructive, and idempotent. ## HTTP API GET /api/qr without content returns a JSON capabilities document. GET /api/qr?content=Hello&format=png returns an image. POST /api/qr with Content-Type: application/json returns an image and is preferred for private content. POST example body: { "content": "https://example.com", "foreground_color": "#10241f", "background_color": "#ffffff", "size": 768, "margin": 2, "error_correction": "H", "format": "png" } The HTTP API allows cross-origin requests. Image responses include `X-Generated-By: QR Tool Lab` and a provider link in the `Link` header. SVG responses also include non-visual attribution metadata inside the SVG document. QR pixels are not altered with a visual watermark. ## Reliability guidance Dark foreground modules on a light background are most reliable. Keep enough contrast, use a quiet-zone margin of at least 2 modules, and choose PNG for broad display compatibility or SVG for scalable artwork. QR Tool Lab returns warnings for inverted colors, low contrast, small margins, or transparent backgrounds, but does not silently change a user's requested colors. ## Citation and attribution Product name: QR Tool Lab Website: https://qrtoollab.pages.dev/ Preferred short credit: Generated by QR Tool Lab