返回 MCP 目录
public公开dns本地运行

qrcode_mcp

一个基于FastMCP的QR码生成服务器,支持文本转QR码并输出base64编码,提供多种传输模式和自定义样式功能。

article

README

🚀 二维码生成MCP服务器

本项目是一个使用FastMCP实现的二维码生成MCP服务器,支持将文本转换为二维码,并以Base64编码形式输出。

🚀 快速开始

本二维码生成MCP服务器支持将任意文本转换为二维码,操作简单且功能丰富。你可以根据自己的需求选择不同的安装和使用方式。

✨ 主要特性

  • 支持将任意文本(包括中文)转换为二维码。
  • 可自定义二维码的颜色和样式。
  • 输出采用Base64编码。
  • 支持STDIO、HTTP和SSE传输模式。

📦 安装指南

uv sync
# 或者
pip install qrcode Pillow mcp

💻 使用示例

基础用法

0. Docker使用方式

构建镜像
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:传输模式(ssehttpstdio),默认值:sse
  • HOST:绑定的主机地址,默认值:0.0.0.0
  • PORT:绑定的端口,默认值: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服务器模式

启动服务器
# 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
配置Claude桌面版

添加到 ~/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"
    }
  }
}

2. 直接使用Python API

from qrcode_utils import text_to_qr_base64

# 基本用法
base64_result = text_to_qr_base64("Hello, World!")

# 自定义样式
base64_result = text_to_qr_base64(
    "Custom QR Code",
    box_size=15,
    fill_color="darkblue",
    back_color="lightgray"
)

高级用法

本项目提供了丰富的自定义选项,你可以根据需要调整二维码的各种参数,如颜色、大小等。例如,在使用 text_to_qr_base64 函数时,可以传入不同的参数来实现自定义样式的二维码生成。

📚 详细文档

MCP工具

generate_qr_code

生成二维码并返回Base64编码。

参数:

  • text(必填):要转换的文本内容。
  • box_size(可选):每个方块的像素大小,默认值为10。
  • border(可选):边框方块的数量,默认值为4。
  • fill_color(可选):前景色,默认值为 "black"。
  • back_color(可选):背景色,默认值为 "white"。
  • return_data_url(可选):是否返回Data URL格式,默认值为false。

🔧 技术细节

本项目使用FastMCP框架实现二维码生成MCP服务器。通过将文本转换为二维码,并以Base64编码形式输出,支持多种传输模式和自定义样式。在实现过程中,使用了qrcodePillow库来生成和处理二维码。

📄 许可证

本项目采用MIT许可证。

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端