Prints labels with QR codes for GitHub issues and pull requests, including issue numbers, titles, and URLs to Brother QL-810W label printer.
MCP Label Printer
An MCP server for printing labels with QR codes to Brother QL-810W printer via P-touch Editor Lite.
Prerequisites
Python 3.10+ - Download
Brother QL-810W printer connected via USB
Editor Lite mode enabled on printer (green LED on)
Installation
Clone the repository:
git clone https://github.com/calumjs/MCP.Printer.git cd MCP.PrinterInstall the package:
pip install -e .This installs all dependencies (Pillow, qrcode, brother_ql, mcp).
Verify installation:
python -c "from mcp_label_printer.printer import print_label; print('OK')"
Printer Setup
Connect Brother QL-810W via USB
Press the Editor Lite button until the green LED turns ON
The printer should appear as a USB drive (usually
D:\)Verify
D:\PTLITE.PRNexists
MCP Configuration
Add to your MCP config file:
For Cursor (~/.cursor/mcp.json):
Alternative (if command not found):
Restart your IDE after adding the config.
Usage
The server exposes one tool:
print_label
Print a label with QR code and text.
Parameter | Required | Description |
| Yes | URL to encode in QR code |
| Yes | Issue/PR number (e.g., "#1234") |
| Yes | Issue/PR title |
| No | Brief description |
Example prompt:
Print a label for issue #42 "Fix login bug" with URL https://github.com/org/repo/issues/42
How It Works
Generates a QR code from the URL
Creates a label image with QR code + text
Converts to Brother QL raster format
Writes to
D:\PTLITE.PRNwith proper padding (112,640 bytes)Printer automatically prints when file is written
Troubleshooting
Nothing prints:
Ensure Editor Lite LED is ON (green)
Check
D:\drive exists and containsPTLITE.PRNTry printing from P-touch Editor Lite app to verify printer works
Command not found:
Ensure Python Scripts folder is in PATH
Use the alternative config with
python -m mcp_label_printer.server
Wrong label size:
This is configured for 62mm continuous labels (DK-22205)