Back to Catalog

Python
Development
mcp tool to generate qrcode
MCP Trust Score
Based on our comprehensive evaluation criteria
🤖 Evaluated by gemini-2.5-flashFix
Trust Score42/100
- • Basic MCP protocol features implemented (16/40)
- • Room for improvement in GitHub community
- • Optimal dependency management (20/20)
- • Room for improvement in deployment maturity
- • Documentation (8/8)
- • Archestra MCP Trust score badge is missing
GitHub Metrics
Repository statistics and activity
⭐ GitHub Stars:6
👥 Contributors:1
📋 Total Issues:0
📦 Has Releases:No
🔧 Has CI/CD Pipeline:No
Configuration
Configuration example extracted from README.md for Claude Desktop and other clients.
🤖 Evaluated by gemini-2.5-flashFix
{
"qrcode-mcp-docker-sse-default": {
"command": "docker",
"args": [
"run",
"-p",
"8008:8008",
"qrcode-mcp"
],
"env": {}
},
"qrcode-mcp-docker-http": {
"command": "docker",
"args": [
"run",
"-p",
"8008:8008",
"-e",
"TRANSPORT_MODE=http",
"qrcode-mcp"
],
"env": {
"TRANSPORT_MODE": "http"
}
},
"qrcode-mcp-docker-stdio": {
"command": "docker",
"args": [
"run",
"-e",
"TRANSPORT_MODE=stdio",
"qrcode-mcp"
],
"env": {
"TRANSPORT_MODE": "stdio"
}
},
"qrcode-mcp-docker-http-custom-port": {
"command": "docker",
"args": [
"run",
"-p",
"9000:9000",
"-e",
"TRANSPORT_MODE=http",
"-e",
"HOST=0.0.0.0",
"-e",
"PORT=9000",
"qrcode-mcp"
],
"env": {
"TRANSPORT_MODE": "http",
"HOST": "0.0.0.0",
"PORT": "9000"
}
},
"qrcode-mcp-server-stdio": {
"command": "python",
"args": [
"qrcode_mcp_server.py"
],
"env": {}
},
"qrcode-mcp-server-http": {
"command": "python",
"args": [
"qrcode_mcp_server.py",
"--http",
"--host",
"127.0.0.1",
"--port",
"8008"
],
"env": {}
},
"qrcode-mcp-server-sse": {
"command": "python",
"args": [
"qrcode_mcp_server.py",
"--sse",
"--host",
"127.0.0.1",
"--port",
"8008"
],
"env": {}
},
"qrcode-mcp-server-stdio-claude-config": {
"command": "python",
"args": [
"/ABSOLUTE/PATH/TO/qrcode_mcp/qrcode_mcp_server.py"
],
"env": {}
}
}MCP Protocol Support
Implemented MCP protocol features
🤖 Evaluated by gemini-2.5-flashFix
Tools:✓
Prompts:✗
Resources:✗
Sampling:✗
Roots:✗
Logging:✗
STDIO Transport:✓
HTTP Transport:✓
OAuth2 Auth:✗
Dependencies
4 dependencies
Libraries and frameworks used by this MCP server
🤖 Evaluated by gemini-2.5-flashFix
README.md
QR Code Generation MCP Server
A QR code generation MCP server implemented using FastMCP, supporting text-to-QR code conversion with base64 encoding output.
Features
- Support for any text to QR code conversion (including Chinese characters)
- Customizable colors and styles
- Base64 encoding
- Support for STDIO, HTTP, and SSE transport modes
Installation
uv sync
# or
pip install qrcode Pillow mcp
Usage
0. Docker Usage
Build Image
docker build -t qrcode-mcp .
Run Container
# Default SSE mode
docker run -p 8008:8008 qrcode-mcp
# HTTP mode
docker run -p 8008:8008 -e TRANSPORT_MODE=http qrcode-mcp
# STDIO mode (for testing)
docker run -e TRANSPORT_MODE=stdio qrcode-mcp
# Custom host and port
docker run -p 9000:9000 -e TRANSPORT_MODE=http -e HOST=0.0.0.0 -e PORT=9000 qrcode-mcp
Environment Variables
TRANSPORT_MODE: Transport mode (sse,http,stdio), default:sseHOST: Host address to bind, default:0.0.0.0PORT: Port to bind, default:8008
Docker Compose
version: '3.8'
services:
qrcode-mcp:
build: .
ports:
- "8008:8008"
environment:
- TRANSPORT_MODE=sse
- HOST=0.0.0.0
- PORT=8008
1. MCP Server Mode
Start Server
# STDIO mode (for Claude Desktop)
python qrcode_mcp_server.py
# HTTP mode
python qrcode_mcp_server.py --http --host 127.0.0.1 --port 8008
# SSE mode (Server-Sent Events) Deprecated
python qrcode_mcp_server.py --sse --host 127.0.0.1 --port 8008
Configure Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
STDIO Mode (Local Use):
{
"mcpServers": {
"qrcode-mcp": {
"command": "python",
"args": ["/ABSOLUTE/PATH/TO/qrcode_mcp/qrcode_mcp_server.py"],
"cwd": "/ABSOLUTE/PATH/TO/qrcode_mcp"
}
}
}
HTTP Mode (Network Deployment):
{
"mcpServers": {
"qrcode-mcp": {
"transport": "http",
"url": "http://127.0.0.1:8008/mcp/"
}
}
}
SSE Mode (Server-Sent Events):
{
"mcpServers": {
"qrcode-mcp": {
"serverUrl": "http://127.0.0.1:8008/sse"
}
}
}
2. Direct Python API Usage
from qrcode_utils import text_to_qr_base64
# Basic usage
base64_result = text_to_qr_base64("Hello, World!")
# Custom styling
base64_result = text_to_qr_base64(
"Custom QR Code",
box_size=15,
fill_color="darkblue",
back_color="lightgray"
)
MCP Tools
generate_qr_code
Generate QR code and return base64 encoding.
Parameters:
text(required): Text content to convertbox_size(optional): Pixel size of each box, default 10border(optional): Number of border boxes, default 4fill_color(optional): Foreground color, default "black"back_color(optional): Background color, default "white"return_data_url(optional): Whether to return Data URL format, default false
Testing
python test_mcp_client.py
License
MIT License
Resources
Add Quality Badge
Show your MCP trust score in your README
[](https://archestra.ai/mcp-catalog/2niuhe__qrcode_mcp)README.md
QR Code Generation MCP Server
A QR code generation MCP server implemented using FastMCP, supporting text-to-QR code conversion with base64 encoding output.
Features
- Support for any text to QR code conversion (including Chinese characters)
- Customizable colors and styles
- Base64 encoding
- Support for STDIO, HTTP, and SSE transport modes
Installation
uv sync
# or
pip install qrcode Pillow mcp
Usage
0. Docker Usage
Build Image
docker build -t qrcode-mcp .
Run Container
# Default SSE mode
docker run -p 8008:8008 qrcode-mcp
# HTTP mode
docker run -p 8008:8008 -e TRANSPORT_MODE=http qrcode-mcp
# STDIO mode (for testing)
docker run -e TRANSPORT_MODE=stdio qrcode-mcp
# Custom host and port
docker run -p 9000:9000 -e TRANSPORT_MODE=http -e HOST=0.0.0.0 -e PORT=9000 qrcode-mcp
Environment Variables
TRANSPORT_MODE: Transport mode (sse,http,stdio), default:sseHOST: Host address to bind, default:0.0.0.0PORT: Port to bind, default:8008
Docker Compose
version: '3.8'
services:
qrcode-mcp:
build: .
ports:
- "8008:8008"
environment:
- TRANSPORT_MODE=sse
- HOST=0.0.0.0
- PORT=8008
1. MCP Server Mode
Start Server
# STDIO mode (for Claude Desktop)
python qrcode_mcp_server.py
# HTTP mode
python qrcode_mcp_server.py --http --host 127.0.0.1 --port 8008
# SSE mode (Server-Sent Events) Deprecated
python qrcode_mcp_server.py --sse --host 127.0.0.1 --port 8008
Configure Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
STDIO Mode (Local Use):
{
"mcpServers": {
"qrcode-mcp": {
"command": "python",
"args": ["/ABSOLUTE/PATH/TO/qrcode_mcp/qrcode_mcp_server.py"],
"cwd": "/ABSOLUTE/PATH/TO/qrcode_mcp"
}
}
}
HTTP Mode (Network Deployment):
{
"mcpServers": {
"qrcode-mcp": {
"transport": "http",
"url": "http://127.0.0.1:8008/mcp/"
}
}
}
SSE Mode (Server-Sent Events):
{
"mcpServers": {
"qrcode-mcp": {
"serverUrl": "http://127.0.0.1:8008/sse"
}
}
}
2. Direct Python API Usage
from qrcode_utils import text_to_qr_base64
# Basic usage
base64_result = text_to_qr_base64("Hello, World!")
# Custom styling
base64_result = text_to_qr_base64(
"Custom QR Code",
box_size=15,
fill_color="darkblue",
back_color="lightgray"
)
MCP Tools
generate_qr_code
Generate QR code and return base64 encoding.
Parameters:
text(required): Text content to convertbox_size(optional): Pixel size of each box, default 10border(optional): Number of border boxes, default 4fill_color(optional): Foreground color, default "black"back_color(optional): Background color, default "white"return_data_url(optional): Whether to return Data URL format, default false
Testing
python test_mcp_client.py
License
MIT License