TheQRCode.io MCP Sever
Generate QR codes for URLs, WiFi, contacts and text. Paid API key adds saved codes + analytics.
Documentation
QR Code MCP Serverfor Claude, Cursor & AI Agents
One URL. No install. Add QR code generation to any MCP-compatible AI client in under a minute.
MCP server URL
https://mcp.theqrcode.io/mcp HTTP/SSE
Remote, no install
Runs over HTTP/SSE. Point your client at a URL. Nothing to run locally, no npm, no Docker.
Works in context
Claude and Cursor call the tool automatically when you ask for a QR code. No manual API calls.
Free to generate
No API key, no signup, 100 requests/hour per IP. Add a Developer plan key to save codes permanently and unlock the analytics tools.
Setup
Pick your client and paste the config.
Open Settings → Developer → Edit Config and add the mcpServers block:
{
"mcpServers": {
"theqrcode": {
"url": "https://mcp.theqrcode.io/mcp"
}
}
}
Open Cursor Settings → MCP → Add new MCP server and paste the URL, or edit ~/.cursor/mcp.json directly:
{
"mcpServers": {
"theqrcode": {
"url": "https://mcp.theqrcode.io/mcp"
}
}
}
Other MCP clients
Any client that supports the MCP spec with remote HTTP/SSE transport works. Point it at https://mcp.theqrcode.io/mcp.
Try it
Once connected, just ask. These prompts trigger the tool automatically.
›
Generate a QR code for https://mysite.com
›
Make a WiFi QR code for my network "HomeNetwork" with password "secret123"
›
Create a QR code for my contact info: name John Doe, email john@example.com
›
Generate a dark blue QR code for https://example.com, 512px
›
Create a QR code with the text "Table 12" for my restaurant
Tool reference
Three tools. All three are listed to every client; the two account tools refuse at call time without a key.
generate_qr_code
Generates a QR code image and returns both a hosted URL and a base64 PNG for inline display.
Free, no key. Types url, wifi, contact, text, at 100 requests/hour per IP. With a Developer-plan key it also accepts email, and every code it makes is saved to your account permanently instead of returning a 24-hour preview link.
| Parameter | Type | Required | Description |
|---|---|---|---|
| type | enum | url · wifi · contact · text | |
| content | string | Data to encode: URL, WiFi string, vCard, or plain text | |
| size | integer | - | Output size in pixels (64-1024). Default: 256 |
| darkColor | string | - | Hex color for dark modules. Default: #000000 |
| lightColor | string | - | Hex color for background. Default: #FFFFFF |
WiFi content format
WIFI:T:WPA;S:MyNetwork;P:MyPassword;;
Full schema
{
"name": "generate_qr_code",
"description": "Generate a QR code image. Use this whenever a user asks to create, make, or generate a QR code for a URL, website, WiFi network, contact card, or text. Returns a hosted image URL (valid 24 hours) and a base64 PNG for inline display.",
"parameters": {
"type": {
"type": "string",
"enum": ["url", "wifi", "contact", "text"],
"required": true
},
"content": {
"type": "string",
"required": true,
"description": "Data to encode"
},
"size": {
"type": "integer",
"min": 64,
"max": 1024,
"default": 256
},
"darkColor": {
"type": "string",
"example": "#000000"
},
"lightColor": {
"type": "string",
"example": "#FFFFFF"
}
}
}
list_qr_codesDeveloper plan
Lists the QR codes saved in your account, so you can ask “what QR codes do I have for the restaurant?” and get an answer from your real data.
| Parameter | Type | Description |
|---|---|---|
| page | integer | Page number. Default: 1 |
| limit | integer | Codes per page (1-100). Default: 20 |
| type | enum | Filter by type: url, wifi, contact, text, email |
get_analyticsDeveloper plan
Scan analytics for your codes — account-wide or for one code. Ask “how did the table-tent code do last month?” and the assistant reads your actual scan data: total and unique scans, time, approximate location, device and OS, and campaign. What each metric means →
| Parameter | Type | Description |
|---|---|---|
| qrCodeId | string | One code's ID. Omit for account-wide totals |
| timeRange | enum | 1h · 1d · 7d · 30d (default) · 90d · 1y |
Add an Authorization header to the same config. Without it the session is anonymous and only generate_qr_code works. Keys come with the Developer plan.
{
"mcpServers": {
"theqrcode": {
"url": "https://mcp.theqrcode.io/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
}
}
}
}
Response
imageUrl
Hosted PNG URL. On the free tier this is a preview and stops serving after 24 hours
image (base64)
Inline PNG for clients that render images directly
The QR code does not expire — the free preview link does. The encoded pattern is permanent, so a downloaded image works forever. It is the free tier's hosting of that image that is temporary: download it, or connect a Developer key and the code is stored in your account and stays live. How permanence works →
Also available
REST API
Direct HTTP, no MCP client needed. Works from any language.
View docs
OpenAPI Spec
Import into Postman, Insomnia, or generate a typed client.
openapi.json
AI Plugin Manifest
OpenAI plugin format for function-calling integrations.
View manifest
Common questions
QR codes, MCP, and what each assistant can actually do.
What is a QR code MCP server?
MCP (Model Context Protocol) is an open standard that lets an AI assistant call external tools. A QR code MCP server is a tool endpoint an assistant can call to make a QR code, so you ask in plain language instead of leaving the chat to use a website. Ours is a remote HTTP server at https://mcp.theqrcode.io/mcp — you add one URL to your client config and there is nothing to install.
Can Claude generate QR codes?
Yes. Claude cannot draw a scannable QR code on its own — the encoding is precise and image generation is not — but with an MCP server connected it calls a real generator and returns a real code. Add our server URL to Claude Desktop’s config and ask "make a QR code for my WiFi".
Can ChatGPT generate QR codes?
Through our keyless REST API and OpenAI plugin manifest, yes — see the AI agents guide at https://theqrcode.io/ai-agents for the function-calling schema. ChatGPT’s MCP support depends on which product and plan you are using; the REST path works everywhere.
Can Cursor generate QR codes?
Yes. Add the server URL to ~/.cursor/mcp.json, restart Cursor, and ask. The tool fires automatically when your request needs a QR code.
Does it require a local installation?
No. No npm, no Docker, no Python. It is a remote streamable-HTTP server; your client only holds a URL. The source is public at https://github.com/awilliams-2020/theqrcode-mcp if you would rather run it yourself.
What tools does the MCP server expose?
Three. generate_qr_code creates a QR code and is free with no key, for url, wifi, contact and text types. list_qr_codes returns the codes saved in your account. get_analytics returns scan analytics — total and unique scans, time, approximate location, device and OS — either account-wide or for one code. The last two require a Developer plan API key.
What does the returned QR code look like?
You get two things: a hosted PNG URL you can click or paste, and a base64 PNG that clients like Claude Desktop render inline in the conversation. On the free tier the hosted link is a 24-hour preview, so download the image. The QR code itself never expires — connect a Developer key and the code is saved to your account permanently.
How does authentication work?
Add an Authorization: Bearer <your API key> header to the server config in your MCP client. Without it the session is anonymous and only generate_qr_code works, at 100 requests/hour per IP. Keys come with the Developer plan at $19/month.
Is it in the official MCP registry?
Yes, as io.theqrcode/qr-code-generator. The source is public at https://github.com/awilliams-2020/theqrcode-mcp.
Ready to connect?
Add the server URL to your MCP client config and start generating QR codes from any conversation.
https://mcp.theqrcode.io/mcp