{
  "markdown": "# labelixa-mcp\n\nMCP (Model Context Protocol) server for the [Labelixa](https://labelixa.com)\nAPI. Lets AI assistants that speak MCP (Claude Desktop, Claude Code and\nother MCP clients) work with Zebra ZPL label code directly.\n\nThis npm package ships the **core tool subset** below. The hosted remote\nMCP server carries the **full tool set** — everything here plus label\ntemplates, bulk generation, image-to-ZPL conversion, barcode reading\nfrom photos and EPL/TSPL/CPCL previews. See\n[labelixa.com/mcp](https://labelixa.com/mcp) for the remote endpoint and\nthe live tool list.\n\n| Tool | What it does |\n|---|---|\n| `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. |\n| `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. |\n| `barcode_generate` | Generates a standalone barcode (SVG or PNG): code128, code39, ean13, upca, upce, itf14, msi, qrcode, datamatrix, pdf417. |\n| `language_detect` | Detects the printer language of raw label code (ZPL/EPL/TSPL/CPCL). Heuristic — returns a confidence tier, not a probability. |\n| `epl_validate` | Lints EPL/EPL2 code; positioned findings with severity, as JSON. |\n| `tspl_validate` | Lints TSPL/TSPL2 code; positioned findings with severity, as JSON. |\n| `cpcl_validate` | Lints CPCL code; positioned findings with severity, as JSON. |\n| `zpl_compatibility` | Compatibility RISK analysis of ZPL against a printer model. Not an emulator — reports language posture with evidence level; never says \"it works\". |\n| `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. |\n| `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. |\n| `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. |\n\n## Installation\n\n```sh\nnpm install -g labelixa-mcp\n```\n\nOr skip installing and run it with `npx` straight from your MCP client\nconfig (below).\n\nAlso available as a remote server on\n[Smithery](https://smithery.ai/servers/labelixa/zpl) (`labelixa/zpl`) —\nno local install at all; the gateway connects to our hosted MCP\nendpoint. Listed in the official\n[MCP Registry](https://registry.modelcontextprotocol.io) as\n`com.labelixa/zpl` (remote server + this npm package).\n\n[![smithery badge](https://smithery.ai/badge/labelixa/zpl)](https://smithery.ai/servers/labelixa/zpl)\n\n## Configuration\n\nEnvironment variables:\n\n- `LABELIXA_API_KEY` — optional `lbx_` API key. Without it the anonymous\n  quota applies. Get a key at\n  [labelixa.com](https://labelixa.com).\n- `LABELIXA_BASE_URL` — optional; defaults to `https://api.labelixa.com`.\n\nExample MCP client entry:\n\n```json\n{\n  \"mcpServers\": {\n    \"labelixa\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"labelixa-mcp\"],\n      \"env\": {\"LABELIXA_API_KEY\": \"lbx_...\"}\n    }\n  }\n}\n```\n\n## Honesty notes\n\n- Errors carry the server's own message verbatim; quota exhaustion is\n  reported with the server's `Retry-After` rather than a made-up delay.\n- `zpl_preview` is a render, not a print: physical output depends on the\n  printer, media and darkness settings.\n\nLicense: MIT.\n",
  "bytes": 3593,
  "sha": "f38125b0fa0bf2073b58a1954db4b1c8fee689bd1b7b2fbb9cf49580129603ee",
  "repo_slug": "labelixa/labelixa-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_com_labelixa_zpl_4af64659/readme"
}