使用FastMCP实现的QR码生成MCP服务器,支持文本到QR码的转换,并以Base64编码输出。
<a href="https://glama.ai/mcp/servers/@2niuhe/qrcode_mcp"> <img width="380" height="200" src="https://gips0.baidu.com/it/u=3652558691,545543219&fm=3081&app=3081&f=PNG?w=760&h=400" /> </a>uv sync
# 或者
pip install qrcode Pillow mcp
docker build -t qrcode-mcp .
# 默认SSE模式
docker run -p 8008:8008 qrcode-mcp
# HTTP模式
docker run -p 8008:8008 -e TRANSPORT_MODE=http qrcode-mcp
# STDIO模式(用于测试)
docker run -e TRANSPORT_MODE=stdio qrcode-mcp
# 自定义主机和端口
docker run -p 9000:9000 -e TRANSPORT_MODE=http -e HOST=0.0.0.0 -e PORT=9000 qrcode-mcp
TRANSPORT_MODE: 传输模式 (sse, http, stdio),默认值:sseHOST: 绑定的主机地址,默认值:0.0.0.0PORT: 绑定的端口,默认值:8008version: '3.8'
services:
qrcode-mcp:
build: .
ports:
- "8008:8008"
environment:
- TRANSPORT_MODE=sse
- HOST=0.0.0.0
- PORT=8008
# STDIO模式(用于Claude桌面)
python qrcode_mcp_server.py
# HTTP模式
python qrcode_mcp_server.py --http --host 127.0.0.1 --port 8008
# SSE模式(服务器发送事件)已弃用
python qrcode_mcp_server.py --sse --host 127.0.0.1 --port 8008
添加到 ~/Library/Application Support/Claude/claude_desktop_config.json:
STDIO模式(本地使用):
{
"mcpServers": {
"qrcode-mcp": {
"command": "python",
"args": ["/ABSOLUTE/PATH/TO/qrcode_mcp/qrcode_mcp_server.py"],
"cwd": "/ABSOLUTE/PATH/TO/qrcode_mcp"
}
}
}
HTTP模式(网络部署):
{
"mcpServers": {
"qrcode-mcp": {
"transport": "http",
"url": "http://127.0.0.1:8008/mcp/"
}
}
}
SSE模式(服务器发送事件):
{
"mcpServers": {
"qrcode-mcp": {
"serverUrl": "http://127.0.0.1:8008/sse"
}
}
}
from qrcode_utils import text_to_qr_base64
# 基本使用
base64_result = text_to_qr_base64("Hello, World!")
# 自定义样式
base64_result = text_to_qr_base64(
"自定义二维码",
box_size=15,
fill_color="darkblue",
back_color="lightgray"
)
generate_qr_code生成QR码并返回Base64编码。
参数:
text(必需):要转换的文本内容box_size(可选):每个方块的像素大小,默认值10border(可选):边框方块的数量,默认值4fill_color(可选):前景颜色,默认值"black"back_color(可选):背景颜色,默认值"white"return_data_url(可选):是否返回Data URL格式,默认值falsepython test_mcp_client.py
MIT许可证