home / mcp / mcp label printer

MCP Label Printer

Provides a server to print labels with QR codes on a Brother QL-810W via Editor Lite, handling label creation and printing.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "calumjs-mcp.printer": {
      "command": "mcp-label-printer",
      "args": []
    }
  }
}

You run an MCP server that prints labels with QR codes to a Brother QL-810W printer using P-touch Editor Lite. It streamlines creating QR-backed labels from issues or tasks and sends them directly to your printer for quick physical labeling.

How to use

You expose one tool from the server: print_label. Use it from your MCP client to generate a label containing a QR code for a URL and added text such as an issue or PR title. The server handles creating the label image, converting it to the Brother QL raster format, and writing the result to the printer file so your device prints automatically.

How to install

Prerequisites you need before installing the MCP Label Printer server are Python 3.10 or newer, a Brother QL-810W printer connected via USB, and Editor Lite mode enabled on the printer (green LED on).

Printer Setup

Connect the Brother QL-810W to your computer via USB. Press the Editor Lite button until the green LED turns ON. The printer should appear as a USB drive (usually D:\). Verify that D:\PTLITE.PRN exists.

MCP Configuration

Add the following MCP server configuration to your MCP setup to enable the label printing capability.

{
  "mcpServers": {
    "label-printer": {
      "command": "mcp-label-printer"
    }
  }
}

MCP Configuration (alternative if the command is not found)

If the primary command is not available in your environment, use this alternative configuration to run the server as a module.

{
  "mcpServers": {
    "label-printer": {
      "command": "python",
      "args": ["-m", "mcp_label_printer.server"]
    }
  }
}

Usage

The server exposes the following tool to MCP clients. Use it to print a label that includes a QR code and descriptive text.

{
  "name": "print_label",
  "description": "Print a label with a QR code and text",
  "parameters": {
    "url": "https://example.com/encode",
    "issue_number": "#1234",
    "title": "Example title",
    "description": "Optional brief description"
  }
}

How It Works

1. Generates a QR code from the provided URL. 2. Creates a label image that combines the QR code with the given text. 3. Converts the image to Brother QL raster format. 4. Writes the raster data to D:\PTLITE.PRN with proper padding. 5. The printer prints automatically when the file is written.

Troubleshooting

Nothing prints: Ensure Editor Lite LED is ON (green). Check that the D:\ drive exists and contains PTLITE.PRN. Try printing from the P-touch Editor Lite app to verify printer functionality.

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 setup is configured for 62mm continuous labels (DK-22205).

Available tools

print_label

Prints a label containing a QR code generated from a URL along with specified text fields. Parameters include the URL to encode, the issue or PR number, and a title; an optional description may be provided. The tool renders a label image, converts it to the Brother QL raster format, writes the print data to the printer spool at D:\PTLITE.PRN, and triggers the print automatically.