Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

Labelixa

by Labelixaversion 0.5.2i★ –iComputer or cloud
Registry namecom.labelixa/zpl

Install

Overview

Description from the maker (original English)

Thermal label MCP server: render, validate, debug and convert ZPL, EPL, TSPL and CPCL labels.

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

Install

Pick the AI app you use, then copy the settings.

Before you install

You need

  • Runs in the cloudNothing to install; it connects over the internet
  • npmNode.js installed (for the npx command)

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

Works in Claude on the web, desktop and mobile:

  1. Open Settings → Connectors
  2. Press Add custom connector
  3. Paste the address below and press Add
  4. If it asks you to sign in, sign in with the maker
SettingsConnectors1+ Add2https://…3
https://api.labelixa.com/mcp

Or run it on your computer

Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json

{
  "mcpServers": {
    "zpl": {
      "command": "npx",
      "args": [
        "-y",
        "labelixa-mcp"
      ]
    }
  }
}

Run this in your terminal

claude mcp add --transport http zpl https://api.labelixa.com/mcp

Or run it on your computer

claude mcp add zpl -- npx -y labelixa-mcp

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "zpl": {
      "url": "https://api.labelixa.com/mcp"
    }
  }
}

Or run it on your computer

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "zpl": {
      "command": "npx",
      "args": [
        "-y",
        "labelixa-mcp"
      ]
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "zpl": {
      "type": "http",
      "url": "https://api.labelixa.com/mcp"
    }
  }
}

Or run it on your computer

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "zpl": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "labelixa-mcp"
      ]
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

ChatGPT connects only to servers on the internet:

  1. Open ChatGPT on the web → Settings → Connectors (Apps)
  2. Press Create or Add (some plans need Developer mode under Advanced first)
  3. Paste the address below, give it a name and save
  4. If it asks you to sign in, sign in with the maker
SettingsConnectors1+ Create2https://…3
https://api.labelixa.com/mcp

Menu names can differ slightly by plan and over time.

Your choice stays on this device in a cookie; no account needed.

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

Tool names and descriptions exactly as the server reported them on Nov 6, 2026. The maker wrote them, not us; we show them as plain text.

  • zpl_preview

    Render ZPL label code and return the label as a PNG image. Use this to SEE what ZPL output looks like — LLMs can write ZPL but cannot otherwise verify the visual result. One call renders one label (use `index` to pick a label from a multi-label stream). The result also carries an

  • zpl_validate

    Pass/fail lint for ZPL — machine-readable diagnostics with line/column, code and severity: unknown commands, missing ^FS, out-of-range parameters, fields outside the label. Fast; run it before zpl_preview whenever you generate or edit ZPL. For a human-readable report with a score

  • zpl_command_help

    Explain a single ZPL command: syntax, parameters with types/ranges/options, a fragment example and whether the Labelixa renderer draws it. Data comes from the same catalog that powers the public command reference pages.

  • barcode_png

    Generate a single barcode as a PNG image (Code 128, QR, DataMatrix, EAN-13, UPC-A, PDF417 and more). For a full label with text and layout, write ZPL and use zpl_preview instead.

  • language_detect

    Detect which printer language raw label code is written in (ZPL, EPL, TSPL or CPCL). Heuristic: returns the language plus a confidence TIER (high/medium/low) and signal codes — not a probability.

  • epl_validate

    Lint EPL/EPL2 label code and return positioned findings with severity as JSON. Checks the command set Labelixa implements from the EPL2 manual — a clean result is not a guarantee that a specific printer accepts the job. Run this before epl_preview; if you are not sure which langu

  • tspl_validate

    Lint TSPL/TSPL2 label code and return positioned findings with severity as JSON. Checks the command set Labelixa implements from the TSPL2 manual — a clean result is not a guarantee that a specific printer accepts the job. Run this before tspl_preview; if you are not sure which l

  • cpcl_validate

    Lint CPCL label code and return positioned findings with severity as JSON. Checks the command set Labelixa implements from the CPCL manual — a clean result is not a guarantee that a specific printer accepts the job. Run this before cpcl_preview; if you are not sure which language

  • explain_zpl

    Human-readable health REPORT for a finished ZPL label, with a 0-100 score: sectioned findings (syntax, size/DPI, orientation, barcodes, fonts, graphics memory, job behaviour); sections that cannot be assessed say so and are excluded from the score. Use it to review or explain a l

  • convert_zpl_dpi

    Rescale ZPL between printer resolutions (203/300/600 DPI): coordinates, fonts, barcode module width and label size are scaled. Embedded ^GF/~DG image data is NOT scaled; the response says so instead of silently passing it through.

  • template_list

    List Labelixa's first-party label template catalog: id, English name, category, size/density and tags. Read-only product content (no tenant data). Fetch one with template_get; render its ZPL with zpl_preview.

  • template_get

    Fetch one catalog template: metadata, preview image URL and — for non-premium templates — the ZPL source, ready for zpl_preview. Premium templates return metadata for everyone; their ZPL source requires an API key whose plan includes the premium-template feature (same rule as the

  • save_label

    Save a ZPL label to a Labelixa account so it can be edited, versioned and printed later. With an API key the label is saved immediately and the saved label id is returned. Without a key the label is held for 24 hours and a one-time link is returned: the user opens it, signs in (f

  • epl_preview

    Render EPL/EPL2 label code and return a PNG preview. The preview assumes 203 dpi and is an interpretation of the EPL2 manual covering a core command subset — no physical printer validation. `labels` in the response is the TOTAL number of labels the stream prints (a stream may con

  • tspl_preview

    Render TSPL/TSPL2 label code and return a PNG preview. The preview assumes 203 dpi and is an interpretation of the TSPL manual covering a core command subset — no physical printer validation. `labels` in the response is the TOTAL number of labels the stream prints (a stream may c

  • cpcl_preview

    Render CPCL label code and return a PNG preview. The preview assumes 203 dpi and is an interpretation of the CPCL manual covering a core command subset — no physical printer validation. `labels` in the response is the TOTAL number of labels the stream prints (a stream may contain

  • image_to_zpl

    Convert an image (PNG, JPEG, BMP, GIF or SVG, max 200 KB) to a ZPL ^GF graphic command. SVG is rasterised at the chosen density from its declared size (mm/in honoured); SVGs with external references or a DTD are rejected. Returns the ZPL plus measured dimensions and the physical

  • barcode_verify

    Decode barcodes from a photo or scan of a PRINTED label (PNG, JPEG, BMP or GIF) and report what a software decoder reads back. Honest by design: 'read' does not guarantee every handheld scanner will read it, and 'not read' does not condemn the label (photo angle/focus matter) — t

  • zpl_compatibility

    Compatibility RISK analysis of ZPL code against a specific printer model, given as manufacturer/model (e.g. 'zebra/zd421'). NOT an emulator and never says 'it works': reports the model's language posture with evidence level and size-rule findings.

  • bulk_submit

    Submit a bulk label production job: one ZPL template with {{variable}} placeholders plus data rows (one object per label). Requires an API key whose plan includes bulk jobs. Quota is charged UPFRONT, one operation per row, and failed rows are not refunded; rows per job are capped

  • bulk_status

    Status of one bulk job you own: state, attempt count and — when finished — the summary with produced count and per-row failures (row number + reason; failed rows never block the rest). Finished outputs stay downloadable for 7 days via the REST endpoint the response names.

  • bulk_list

    List your recent bulk jobs (id, state, error class, timestamps), newest first. Useful to recover a lost job id; details via bulk_status.

  • printer_language_to_zpl

    Convert a SATO SBPL, Honeywell (Datamax) DPL or Honeywell (Intermec) IPL label stream to ZPL, so it can be checked with zpl_validate and rendered with zpl_preview. You must name the source language: language_detect does not recognise these three. Real control characters and the m

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified against the domain labelixa.com (the registry checks domain ownership)

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • ✓ Pass

    Endpoint responds

    Responded in 134 ms (HTTP 200)

  • – Not applicable

    Sign-in with OAuth

    No sign-in needed

  • ✓ Pass

    No hidden instructions in tool descriptions

    Read 23 tool descriptions and found no hidden instructions to the AI

Compared with others in Otheri

  • More stars than 0% of the other 32655 servers in this category
  • Published to the registry more recently than 84% of the other 32655 servers in this category
  • Basic checks equal to or better than 100% of the other 32655 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is Labelixa safe?

It passed 3 of 3 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

The registry does not list a required key, though some servers ask you to sign in on first use.

Does it run on my computer or in the cloud?

Either way works: install it on your computer or connect to the cloud version.

Is it still maintained?

The GitHub repo last changed –, and the latest version (0.5.2) reached the registry 6 days ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.

What can I use instead?

In the same category: Spec Driven Development, Remote Desktop Commander, SuperCollider

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Spec Driven Development

by formulahendry

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

Runs on your computer★ 440MITUpdated 14 months ago
Install

Remote Desktop Commander

by desktop-commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

Runs in the cloud★ 211Updated 2 days ago
Install

Make sound with SuperCollider: synths, drums, chords, melodies and soundscapes over OSC.

Runs on your computerUpdated today
Install

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

labelixa-mcp

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
Endpointhttps://api.labelixa.com/mcplocal process over stdio
Tool setfull set: rendering, validation, debugging, conversion, barcode analysis, printer compatibility, templates, bulk jobscore subset (table below); each tool calls the Labelixa REST API
Installnothing to installnpx -y labelixa-mcp or npm install -g labelixa-mcp
Authenticationoptional lbx_ API keyoptional 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 — optional lbx_ API key. Without it the anonymous quota applies.
  • LABELIXA_BASE_URL — optional; defaults to https://api.labelixa.com.

Requests never follow redirects, so a server cannot forward your key to another host. Numeric inputs are checked before a request is made: dpmm is 6, 8, 12 or 24, label sides are finite, above 0 and at most 15 inches, and DPI values are 152, 203, 300 or 600.

Tools in this package
ToolWhat it does
zpl_previewRenders ZPL to a PNG image for inspection. Server-side render — not a guarantee of how a specific physical printer will output the label.
zpl_validateLints 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_generateGenerates a standalone barcode (SVG or PNG): code128, code39, ean13, upca, upce, itf14, msi, qrcode, datamatrix, pdf417.
language_detectDetects the printer language of raw label code (ZPL/EPL/TSPL/CPCL). Heuristic — returns a confidence tier, not a probability.
epl_validateLints EPL/EPL2 code; positioned findings with severity, as JSON.
tspl_validateLints TSPL/TSPL2 code; positioned findings with severity, as JSON.
cpcl_validateLints CPCL code; positioned findings with severity, as JSON.
zpl_compatibilityCompatibility RISK analysis of ZPL against a printer model. Not an emulator — reports language posture with evidence level; never says "it works".
zpl_command_helpLooks 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. Optional locale (en default, tr, de) translates the name and descriptions only; command codes, syntax strings, examples and parameter names are protocol and never change.
convert_zpl_dpiRescales 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_zplFull 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, SBPL / DPL / IPL to ZPL conversion (printer_language_to_zpl) 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 is https://api.labelixa.com/mcp.

Honesty notes

  • Errors carry the server's own message verbatim; quota exhaustion is reported with the server's Retry-After rather than a made-up delay.
  • zpl_preview is 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.

Ask PopNx