Scan QRCode MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Scan QRCode MCP Server decode this QR code from https://example.com/qr.png"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Scan QRCode MCP Server
MCP server that decodes QR codes from either a data URL (base64) or an HTTP(S) image URL and returns the decoded text.
Features
Two precise tools for decoding:
decode_qrcode_data_url— acceptsimageDataUrldecode_qrcode_image_url— acceptsimageUrl
Decodes common image formats (PNG, JPEG, etc.).
Deterministic behavior with clear errors for invalid inputs.
Related MCP server: mcp-qrcode
Getting Started
Configure this MCP server in your client using either npx (recommended) or the global binary.
Standard config (recommended, uses npx):
{
"mcpServers": {
"qrcode": {
"command": "npx",
"args": [
"scan-qrcode-mcp@latest"
]
}
}
}Alternative using the global binary (after npm i -g scan-qrcode-mcp):
{
"mcpServers": {
"qrcode": {
"command": "scan-qrcode-mcp",
"args": []
}
}
}Follow the MCP install guide: https://modelcontextprotocol.io/quickstart/user
Use the Standard config JSON above (name it qrcode).
Use the Claude Code CLI to add the QR MCP server:
claude mcp add qrcode npx scan-qrcode-mcp@latestFollow: https://code.visualstudio.com/docs/copilot/chat/mcp-servers#_add-an-mcp-server Or install via VS Code CLI (npx example):
code --add-mcp '{"name":"qrcode","command":"npx","args":["scan-qrcode-mcp@latest"]}'Edit ~/.codex/config.toml and add one of the following:
[mcp_servers.qrcode]
command = "npx"
args = ["scan-qrcode-mcp@latest"]or, if you installed globally:
[mcp_servers.qrcode]
command = "scan-qrcode-mcp"Settings -> MCP -> Add new MCP Server.
Name: qrcode. Either use npx scan-qrcode-mcp@latest or the global binary.
Notes:
Requires Node.js 18.17+.
If using the global binary but
scan-qrcode-mcpis not found, ensure your global npm bin is on PATH and restart the client.
Project Structure
src/
server.ts
services/
qrcode-service.ts
utils/
data-url.ts
tests/
services/
qrcode.spec.tsScripts
npm i: Install dependencies.npm run dev: Start MCP server in watch mode (stdio transport).npm run build: Compile TypeScript todist/.npm start: Run compiled server fromdist/.npm test: Run unit tests with coverage (Vitest).npm run lint/npm run format: Lint and format.
Usage
The server uses stdio transport and exposes two tools:
decode_qrcode_data_urlInput:
{ imageDataUrl: string }—data:<mime>;base64,<data>URL for the QR image
decode_qrcode_image_urlInput:
{ imageUrl: string }—http(s)URL to the QR image
Examples (pseudo-JSON-RPC over MCP):
Decode from data URL
{
"method": "tools/call",
"params": {
"name": "decode_qrcode_data_url",
"arguments": { "imageDataUrl": "data:image/png;base64,..." }
}
}Decode from image URL
{
"method": "tools/call",
"params": {
"name": "decode_qrcode_image_url",
"arguments": { "imageUrl": "https://example.com/qr.png" }
}
}Response text content contains the decoded string.
Configuration
Requires Node.js 18.17+ for built-in
fetch.No environment variables are required.
Security Notes
Only
http(s)is allowed forimageUrl. Data URLs must be base64-encoded.Do not pass untrusted remote URLs without appropriate allowlisting in your environment.
License
MIT
Available Tools
2 toolsdecode_qrcode_data_urlC
Decode a QR code from a data URL (data:;base64,...)
Inputs: imageDataUrl (required).
decode_qrcode_image_urlC
Decode a QR code from an HTTP(S) image URL
Inputs: imageUrl (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 2 tools
The two tools have clearly distinct purposes: one decodes QR codes from data URLs, while the other decodes from HTTP(S) image URLs. There is no overlap or ambiguity between them, making it easy for an agent to select the correct tool based on the input source.
Both tools follow a consistent verb_noun pattern with 'decode_qrcode_' as a prefix, followed by 'data_url' and 'image_url'. The naming is uniform and predictable, using snake_case throughout without any deviations.
With only two tools, the server feels thin for a QR code decoding domain, as it might lack operations like encoding QR codes or handling local file inputs. However, the count is reasonable for a minimal decoding-focused server, though it borders on being too limited.
The server is severely incomplete for QR code operations, as it only provides decoding from two specific input types (data URLs and image URLs). There are significant gaps, such as no encoding tools, no support for local files, and no error handling or validation tools, which could lead to agent failures in broader use cases.
Maintenance
Related MCP Connectors
Generate QR codes for URLs, PIX, Wi-Fi, vCards, WhatsApp and more. For AI agents.
Generate static QR codes (URL, WiFi, vCard, pixel art) and decode QR images. Codes never expire.
Make, re-point and track QR codes and short links, and read QR images, from your AI assistant.
Edit images in one call: resize, convert, compress, crop, metadata, favicons, QR codes, OCR.
Related MCP Servers
- FlicenseNot gradedqualityFmaintenanceEnables image analysis and recognition through multiple LLM vision models (Gemini, GPT-4o, Qwen-VL, Doubao) by accepting image URLs or Base64 data and returning text descriptions or answers to questions about the images.1-
- AlicenseNot gradedqualityCmaintenanceEnables decoding QR code images to extract embedded text or URLs via api.qrserver.com.290 npmMIT
- AlicenseNot gradedqualityDmaintenanceEnables barcode decoding from URLs, uploaded files, or raw bytes via HTTP and MCP, supporting formats like EAN13, QRCode, and DataMatrix.MIT
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to generate QR codes from text and scan QR codes from images, supporting multiple codes per image and customizable output paths.-