Çalışma alanı
Ana Sayfa›Geliştiriciler›MCP Sunucusu

MCP Sunucusu

Labelixa uzak bir MCP (Model Context Protocol) sunucusu çalıştırır: MCP uyumlu AI istemcileri termal etiket kodunu — ZPL, EPL, TSPL ve CPCL — birinci sınıf araçlarla render eder, doğrular, ayıklar, dönüştürür ve barkod üretir. Claude Desktop ve Claude Code ile doğrulandı; MCP uyumlu her istemci bağlanabilir.

Yapılandırma

Sunucuyu MCP uyumlu istemcinize ekleyin (Claude Desktop biçimi gösterildi). Yerel stdio alternatifi npm'de: labelixa-mcp.

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

Claude Code, terminalde tek satır:

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

API anahtarıyla (aynı Authorization başlığı JSON istemci girdisinde "headers" altında çalışır):

claude mcp add --transport http labelixa https://api.labelixa.com/mcp --header "Authorization: Bearer lbx_YOUR_KEY"

Örnek istemler

Bağlandıktan sonra düz cümleyle isteyin — aracı istemci seçer. Aşağıdaki istemlerin hepsi bu sunucuya karşı çalıştırıldı:

  • Şu ZPL'i doğrula ve tanılamayı açıkla: ^XA^FO40,40^A0N,40,40^FDMerhaba^FS^XZ
  • Bu ZPL'i render et ve etiketi göster.
  • ^BC ne yapar, Labelixa önizlemesi onu çiziyor mu?
  • Bu kod hangi yazıcı dilinde yazılmış?
  • https://labelixa.com/mcp için QR kod PNG'si üret

İstemciler

Yapılandırma parçacığını yalnız KENDİ denediğimiz istemciler için yayımlıyoruz. Ötekiler reddedilmiş değil: uzak MCP'yi streamable HTTP ile konuşan her istemciye yukarıdaki uç adresinden başka bir şey gerekmez — biz onları çalıştırmadık ve çalıştığını görmediğimiz bir kurulumu tarif etmeyiz.

İstemciDurum
Claude DesktopDenedik, çalışıyor
Claude CodeDenedik, çalışıyor
CursorBiz denemedik
VS CodeBiz denemedik
WindsurfBiz denemedik
ChatGPT / CodexBiz denemedik
Gemini CLIBiz denemedik

Mevcut araçlar

Sunucunun BUGÜN sunduğu araçlar — aşağıdaki liste elle yazılmaz, canlı araç kaydından üretilir:

  • zpl_preview — Render ZPL label code and return the label as a PNG image.
  • 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.
  • zpl_command_help — Explain a single ZPL command: syntax, parameters with types/ranges/options, a fragment example and whether the Labelixa renderer draws it.
  • barcode_png — Generate a single barcode as a PNG image (Code 128, QR, DataMatrix, EAN-13, UPC-A, PDF417 and more).
  • language_detect — Detect which printer language raw label code is written in (ZPL, EPL, TSPL or CPCL).
  • epl_validate — Lint EPL/EPL2 label code and return positioned findings with severity as JSON.
  • tspl_validate — Lint TSPL/TSPL2 label code and return positioned findings with severity as JSON.
  • cpcl_validate — Lint CPCL label code and return positioned findings with severity as JSON.
  • 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.
  • convert_zpl_dpi — Rescale ZPL between printer resolutions (203/300/600 DPI): coordinates, fonts, barcode module width and label size are scaled.
  • template_list — List Labelixa's first-party label template catalog: id, English name, category, size/density and tags.
  • template_get — Fetch one catalog template: metadata, preview image URL and — for non-premium templates — the ZPL source, ready for zpl_preview.
  • save_label — Save a ZPL label to a Labelixa account so it can be edited, versioned and printed later.
  • epl_preview — Render EPL/EPL2 label code and return a PNG preview.
  • tspl_preview — Render TSPL/TSPL2 label code and return a PNG preview.
  • cpcl_preview — Render CPCL label code and return a PNG preview.
  • image_to_zpl — Convert an image (PNG, JPEG, BMP or GIF, max 200 KB) to a ZPL ^GF graphic command.
  • 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.
  • zpl_compatibility — Compatibility RISK analysis of ZPL code against a specific printer model, given as manufacturer/model (e.g.
  • bulk_submit — Submit a bulk label production job: one ZPL template with {{variable}} placeholders plus data rows (one object per label).
  • 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).
  • bulk_list — List your recent bulk jobs (id, state, error class, timestamps), newest first.
  • 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.

Uç

Streamable HTTP (JSON-RPC): https://api.labelixa.com/mcp. GET bu sayfayı sunar; protokol POST üzerinden konuşur.

Kimlik ve kotalar

Anahtar zorunlu değil: anahtarsız çağrılar IP başına hız sınırlı ücretsiz katmanı paylaşır. Planınızın kotasını kullanmak için anahtarınızı X-API-Key başlığında (ya da Bearer jetonu olarak) gönderin. MCP çağrıları REST API ile AYNI hız ve kota kapılarından geçer — MCP bir kota atlatması değildir.

Bağlandıktan sonra ne olur

İstemci tools/list çağırır ve yukarıdaki araçlar kendi araçlarının yanında görünür. Araç çağrısı REST API ile AYNI yoldan geçer — aynı kimlik, aynı hız sınırı, aynı kota sayaçları — ve ya metin (JSON tanılama) ya da istemcinin satır içinde gösterdiği bir PNG döner. Çağrılar arasında hiçbir şey saklanmaz: sunucu durumsuzdur, her çağrı kendi başınadır.

Sınırlar

  • Yalnız POST üzerinden streamable HTTP. Accept: text/event-stream ile GET 405 ve Allow: POST döner — SSE oturum kanalı yoktur.
  • İstek zarfı: 2 MB. image_to_zpl görsel girdisi: 200 KB; barcode_verify: 5 MB.
  • zpl_preview inceleme için SUNUCU RENDER'ıdır; belirli bir fiziksel yazıcının çıktısının garantisi değildir.
  • Kapalı bayrağın arkasındaki araçlar tools/list'te YOKTUR ve çağrılırsa "bilinmeyen araç" alır — liste sözleşmedir.
  • Toplu işler MCP'den gönderilip durumu sorulabilir; üretilen çıktı REST API'den indirilir.

Sorun giderme

  • Uçta 404 — sunucu bayrağı kapalı; sizin tarafınızda yapılandırılacak bir şey yok.
  • GET'te 405 — beklenen. Protokol POST ile konuşur.
  • Hız sınırı (429, ör. "3/sn") — anahtarsız çağrılar IP başına sınırlıdır. Yavaşlayın ya da planınızın kotasını kullanmak için API anahtarı gönderin.
  • "Bilinmeyen araç" — ad tools/list'te yok (yazım hatası ya da bayrak kapılı araç).
  • Araç sonuç yerine hata döndürüyor — o metin sunucunun kendi mesajıdır, olduğu gibi geçirilir. Neyin düştüğünü söyler; biz yeniden yazmayız.

Güvenlik ve gizlilik

Araç çağrıları REST API ile aynı durumsuz yoldan geçer: gönderilen etiket kodu bellekte işlenir ve geri döner, saklanmaz. Ayrıntı güvenlik sayfasında.

İlgili