labelixa-mcp
MCP serverMediaSee how your ZPL labels will look before they ever reach a printer. Once added, your AI can render ZPL label code as PNG images, check it for mistakes with clear error reports, and create barcodes. That means fewer wasted labels and less guesswork when preparing print jobs.
Use labelixa-mcp in Claude, ChatGPT or Ahel Desktop
Free. Sign in, add labelixa-mcp and connect your AI. About a minute.
Also: Claude Code · Cursor · Codex
Then ask your AI: use the zpl preview tool from labelixa-mcp
No key or account is asked for. Not verified by us yet: Ahel has not run a call through it.
Details
Available today. Use it from your connected AI after setup.
No key or account is asked for. Not verified by us yet: Ahel has not run a call through it.
Add it, then paste or share ZPL label code with your AI and ask it to preview the label, check it for problems, or add a barcode.
What your AI can do with it
- Turn ZPL label code into PNG images you can view
- Check ZPL for errors and get structured reports on what is wrong and where
- Generate barcodes for use on labels
- Preview label layouts before printing
Install labelixa-mcp
The server’s own address, for the clients that take one directly. Or connect Ahel once and every client you use reads it from one address, with the account kept on Ahel rather than in each client’s config.
Claude Code
claude mcp add --transport http --scope user labelixa-mcp 'https://api.labelixa.com/mcp'Run it once in your project, then open /mcp to approve any sign-in the server asks for.
Claude Desktop
https://api.labelixa.com/mcpAdd a custom connector in Settings, paste this address, and approve the sign-in.
Cursor
cursor://anysphere.cursor-deeplink/mcp/install?name=labelixa-mcp&config=eyJ1cmwiOiJodHRwczovL2FwaS5sYWJlbGl4YS5jb20vbWNwIn0=Open the link and Cursor adds the server at that address.
ChatGPT
https://api.labelixa.com/mcpIn Settings, enable Developer mode, create an MCP app, and paste this address. Your plan and workspace must allow custom apps.
Codex
codex mcp add labelixa-mcp --url 'https://api.labelixa.com/mcp'Run it once, then sign in with codex mcp login labelixa-mcp if the server asks for an account.
From the project's README
As published by labelixa/labelixa-mcp in README.md.
Labelixa is an MCP (Model Context Protocol) server and API platform for thermal label development. It gives AI assistants and developer tools the ability to render, validate, debug, inspect and convert thermal printer labels — ZPL, EPL, TSPL and CPCL — through MCP.
There are two ways to connect:
| Remote server (recommended) | This npm package | |
|---|---|---|
| Endpoint | https://api.labelixa.com/mcp | local process over stdio |
| Tool set | full set: rendering, validation, debugging, conversion, barcode analysis, printer compatibility, templates, bulk jobs | core subset (table below); each tool calls the Labelixa REST API |
| Install | nothing to install | npx -y labelixa-mcp or npm install -g labelixa-mcp |
| Authentication | optional lbx_ API key | optional lbx_ API key |
The live tool list of the remote server is at labelixa.com/mcp.
Remote server (no install)
Transport: Streamable HTTP, stateless JSON-RPC over POST. Anonymous use is free and rate-limited per IP; an API key uses the account's own quota. Keys: labelixa.com.
Claude Code:
claude mcp add --transport http labelixa https://api.labelixa.com/mcp
With an API key:
claude mcp add --transport http labelixa https://api.labelixa.com/mcp \
--header "Authorization: Bearer lbx_..."
Generic MCP client configuration (Claude Desktop, Cursor and other
clients that accept a url entry):
{
"mcpServers": {
"labelixa": {
"url": "https://api.labelixa.com/mcp",
"headers": {"Authorization": "Bearer lbx_..."}
}
}
}
Drop the headers block for anonymous use.
Local server (this package)
npm install -g labelixa-mcp
Or skip installing and run it with npx straight from your MCP client
config:
{
"mcpServers": {
"labelixa": {
"command": "npx",
"args": ["-y", "labelixa-mcp"],
"env": {"LABELIXA_API_KEY": "lbx_..."}
}
}
}
Environment variables:
LABELIXA_API_KEY— optionallbx_API key. Without it the anonymous quota applies.LABELIXA_BASE_URL— optional; defaults tohttps://api.labelixa.com.
Tools in this package
| Tool | What it does |
|---|---|
zpl_preview | Renders ZPL to a PNG image for inspection. Server-side render — not a guarantee of how a specific physical printer will output the label. |
zpl_validate | Lints ZPL and returns the structured diagnostics report (unknown commands, parameter ranges, layout overflow) as JSON. Pass the real label size — checks depend on it. |
barcode_generate | Generates a standalone barcode (SVG or PNG): code128, code39, ean13, upca, upce, itf14, msi, qrcode, datamatrix, pdf417. |
language_detect | Detects the printer language of raw label code (ZPL/EPL/TSPL/CPCL). Heuristic — returns a confidence tier, not a probability. |
epl_validate | Lints EPL/EPL2 code; positioned findings with severity, as JSON. |
tspl_validate | Lints TSPL/TSPL2 code; positioned findings with severity, as JSON. |
cpcl_validate | Lints CPCL code; positioned findings with severity, as JSON. |
zpl_compatibility | Compatibility RISK analysis of ZPL against a printer model. Not an emulator — reports language posture with evidence level; never says "it works". |
zpl_command_help | Looks up one ZPL command in the maintained catalog: name, syntax, parameters and whether the preview engine actually renders it — printer-side commands are marked as not rendered. |
convert_zpl_dpi | Rescales ZPL coordinates between printer resolutions (203/300/600 dpi). Embedded ^GF/~DG bitmaps are NOT rescaled — a warnings block precedes the output when present. |
explain_zpl | Full sectioned health report (syntax, size/DPI, orientation, barcodes, fonts, memory) with an honest score — sections it cannot assess say "not assessed" instead of counting. |
EPL, TSPL and CPCL previews, label templates, bulk generation, image-to-ZPL conversion and barcode reading from photos are on the remote server only.
Directory listings
- Official MCP Registry:
com.labelixa/zpl(remote server + this npm package). - Smithery:
labelixa/zpl. Smithery routes calls through its own gateway; the canonical endpoint ishttps://api.labelixa.com/mcp.
Honesty notes
- Errors carry the server's own message verbatim; quota exhaustion is
reported with the server's
Retry-Afterrather than a made-up delay. zpl_previewis a render, not a print: physical output depends on the printer, media and darkness settings.
Source of this package: github.com/Labelixa/labelixa-mcp. Docs: labelixa.com/docs/api. License: MIT.
Tools it offers (21)
What this server listed when Ahel dialed its public endpoint in Oct 2026, with no key and no account of yours. The names are the server’s own.
zpl_previewzpl_validatezpl_command_helpbarcode_pnglanguage_detectepl_validatetspl_validatecpcl_validateexplain_zplconvert_zpl_dpitemplate_listtemplate_getepl_previewtspl_previewcpcl_previewimage_to_zplbarcode_verifyzpl_compatibilitybulk_submitbulk_statusbulk_list
Signals
- Last commit
- Oct 2026
- Weekly downloads
- 295
- Weekly_downloads
- 296 weekly_downloads
Advanced
- Delivery
- zpl MCP server → your Ahel connector (mcp.ahel.ai) → your AI.
- Item type
- mcp-server
- Key
com-labelixa-zpl- Source
- github.com/labelixa/labelixa-mcp
- Hosted endpoint
https://api.labelixa.com/mcp
github.com/labelixa/labelixa-mcp