A QR code generation MCP server implemented using FastMCP, supporting text-to-QR code conversion with base64 encoding output. - 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 - TRANSPORTMODE: Transport mode (sse, http, stdio), default: sse - HOST: Host address to bind, d
Add this skill
npx mdskills install 2niuhe/qrcode-mcpWell-documented QR code generation tool with multiple transport modes and comprehensive setup instructions
1# QR Code Generation MCP Server23A QR code generation MCP server implemented using FastMCP, supporting text-to-QR code conversion with base64 encoding output.45<a href="https://glama.ai/mcp/servers/@2niuhe/qrcode_mcp">6 <img width="380" height="200" src="https://glama.ai/mcp/servers/@2niuhe/qrcode_mcp/badge" />7</a>89## Features1011- Support for any text to QR code conversion (including Chinese characters)12- Customizable colors and styles13- Base64 encoding14- Support for STDIO, HTTP, and SSE transport modes1516## Installation1718```bash19uv sync20# or21pip install qrcode Pillow mcp22```2324## Usage2526### 0. Docker Usage2728#### Build Image29```bash30docker build -t qrcode-mcp .31```3233#### Run Container34```bash35# Default SSE mode36docker run -p 8008:8008 qrcode-mcp3738# HTTP mode39docker run -p 8008:8008 -e TRANSPORT_MODE=http qrcode-mcp4041# STDIO mode (for testing)42docker run -e TRANSPORT_MODE=stdio qrcode-mcp4344# Custom host and port45docker run -p 9000:9000 -e TRANSPORT_MODE=http -e HOST=0.0.0.0 -e PORT=9000 qrcode-mcp46```4748#### Environment Variables49- `TRANSPORT_MODE`: Transport mode (`sse`, `http`, `stdio`), default: `sse`50- `HOST`: Host address to bind, default: `0.0.0.0`51- `PORT`: Port to bind, default: `8008`5253#### Docker Compose54```yaml55version: '3.8'56services:57 qrcode-mcp:58 build: .59 ports:60 - "8008:8008"61 environment:62 - TRANSPORT_MODE=sse63 - HOST=0.0.0.064 - PORT=800865```6667### 1. MCP Server Mode6869#### Start Server70```bash71# STDIO mode (for Claude Desktop)72python qrcode_mcp_server.py7374# HTTP mode75python qrcode_mcp_server.py --http --host 127.0.0.1 --port 80087677# SSE mode (Server-Sent Events) Deprecated78python qrcode_mcp_server.py --sse --host 127.0.0.1 --port 800879```8081#### Configure Claude Desktop82Add to `~/Library/Application Support/Claude/claude_desktop_config.json`:8384**STDIO Mode (Local Use):**85```json86{87 "mcpServers": {88 "qrcode-mcp": {89 "command": "python",90 "args": ["/ABSOLUTE/PATH/TO/qrcode_mcp/qrcode_mcp_server.py"],91 "cwd": "/ABSOLUTE/PATH/TO/qrcode_mcp"92 }93 }94}95```9697**HTTP Mode (Network Deployment):**98```json99{100 "mcpServers": {101 "qrcode-mcp": {102 "transport": "http",103 "url": "http://127.0.0.1:8008/mcp/"104 }105 }106}107```108109**SSE Mode (Server-Sent Events):**110```json111{112 "mcpServers": {113 "qrcode-mcp": {114 "serverUrl": "http://127.0.0.1:8008/sse"115 }116 }117}118```119120### 2. Direct Python API Usage121122```python123from qrcode_utils import text_to_qr_base64124125# Basic usage126base64_result = text_to_qr_base64("Hello, World!")127128# Custom styling129base64_result = text_to_qr_base64(130 "Custom QR Code",131 box_size=15,132 fill_color="darkblue",133 back_color="lightgray"134)135```136137## MCP Tools138139### `generate_qr_code`140Generate QR code and return base64 encoding.141142**Parameters:**143- `text` (required): Text content to convert144- `box_size` (optional): Pixel size of each box, default 10145- `border` (optional): Number of border boxes, default 4146- `fill_color` (optional): Foreground color, default "black"147- `back_color` (optional): Background color, default "white"148- `return_data_url` (optional): Whether to return Data URL format, default false149150## Testing151152```bash153python test_mcp_client.py154```155156## License157158MIT License
Full transparency — inspect the skill content before installing.