API & MCP
Everything a person can do on QR Code Generator (print-ready), a program or AI agent can do with the same inputs and get the identical result.
HTTP API
POST https://printshopqrcode.usefulweb.app/api/v1/calculate– run QR Code Generator (print-ready)GET https://printshopqrcode.usefulweb.app/api/v1/tool– inputs, output schema, examples- OpenAPI 3.1: /openapi.json · /openapi.yaml
- Errors:
application/problem+json;422includes per-fielderrors.
QR Code Generator (print-ready)
Encode a link, text, Wi-Fi login, contact card, e-mail, phone, SMS or map location as a QR code following ISO/IEC 18004 (versions 1–40, error correction L/M/Q/H, optimal mode switching, all eight masks scored). Get a print page with a test square, the code alone as SVG and PNG, a sheet of copies or Wi-Fi guest cards.
| Field | Type | Default | Description |
|---|---|---|---|
content | select (url, text, wifi, email, phone, sms, geo) | "url" | Content type |
text | textarea | "https://usefulweb.site/" | Content. The address, text, e-mail address, phone number or "latitude, longitude". Not used for Wi-Fi. |
ssid | text | — | Wi-Fi network name (SSID) |
password | text | — | Wi-Fi password. Only used for the code; it is not shown in the result or stored in the share link. |
security | select (WPA, WEP, nopass) | "WPA" | Wi-Fi security |
hidden | boolean | false | Hidden network |
layout | select (one, sheet, wifi-card) | "one" | Print layout |
ecc | select (L, M, Q, H) | "M" | Error correction |
size | number | 60 | Code width (mm, with quiet zone) |
quiet | integer | 4 | Quiet zone (modules) |
dark | text | "#000000" | Dark colour |
light | text | "#ffffff" | Light colour |
logo | number | 0 | Logo-safe area (% of the code width). Leaves an empty square in the centre for a logo and checks it against the error correction. |
caption | text | — | Caption under the code |
paper | select (a3, a4, a5, a6, b5, letter, legal, tabloid, halfletter) | "a4" | Paper size |
orientation | select (portrait, landscape) | "portrait" | Orientation |
Example request
Link to a website
curl -X POST https://printshopqrcode.usefulweb.app/api/v1/calculate -H 'content-type: application/json' -d '{"content":"url","text":"https://usefulweb.site/","ecc":"M","size":60}'
Every result contains
inputs (normalised, defaults applied), summary, result (validated against the published schema), units, assumptions, sources, warnings, computedAt and links.
MCP (Model Context Protocol)
- Streamable HTTP endpoint:
https://printshopqrcode.usefulweb.app/mcp– protocol revisions 2026-07-28 (stateless) and 2025-11-25 / 2025-06-18 / 2025-03-26 (initialize handshake). - Tools:
printshop_qr_code - Local stdio connector:
node src/mcp-stdio.ts --tool=printshop-qr-code
{
"mcpServers": {
"printshop-qr-code": { "type": "http", "url": "https://printshopqrcode.usefulweb.app/mcp" }
}
}