MCP-Server

Barcodes und QR-Codes als Werkzeug für KI-Agenten. MLC Barcode bringt einen Model-Context-Protocol-Server mit. Wer Claude, Gemini, Cursor oder einen eigenen Agenten damit verbindet, kann im Gespräch sagen „mach mir einen GiroCode über 49,90 € für Rechnung 1234“ — und bekommt das fertige Bild zurück, statt selbst Formate zusammenzubauen.

Der Server ist in jedem Download enthalten: im Windows-Setup, in der Linux-Suite und in den macOS-Archiven, dazu als einzelne Datei.


Die elf Werkzeuge

Werkzeug Wofür Pflichtangaben
generate_barcode Jeder Barcode aus Rohdaten: QR, DataMatrix, Aztec, PDF417, Code 128, Code 39, EAN-13, EAN-8, UPC-A, ITF type, data
generate_epc_qr GiroCode / SEPA-Überweisung — jede europäische Banking-App füllt die Überweisung vorab aus name, iban
generate_wifi_qr WLAN-Zugang (WPA, WEP, offen, versteckt) ssid
generate_vcard_qr Visitenkarte (vCard 3.0) first_name, last_name
generate_event_qr Termin (iCalendar); Uhrzeit YYYYMMDDTHHMMSS, ganztägig nur YYYYMMDD summary, start_time
generate_crypto_qr Zahlung in Bitcoin, Ethereum und anderen Coins address
generate_geo_qr Ort, der Google Maps oder Apple Karten öffnet latitude, longitude
generate_tel_qr Telefonnummer, die direkt die Wähl-App öffnet phone_number
generate_sms_qr SMS mit Empfänger und vorbereitetem Text phone_number
generate_email_qr E-Mail mit Empfänger, Betreff und Text to
decode_barcode Liest Codes aus einem Bild: Format und Inhalt, auch mehrere pro Bild — zum Prüfen erzeugter Codes oder für Fotos und Scans. Bekannte Inhalte kommen zerlegt zurück, etwa beim GiroCode Empfänger, Betrag und IBAN samt Prüfsummen-Check. path oder image_base64

Gemeinsame Optionen für alle Werkzeuge:

Option Bedeutung
format svg (Standard, verlustfrei skalierbar) oder png
width, height Größe in Pixeln
fg_color, bg_color Farben, z. B. black, #1a1a1c, transparent
text Beschriftung unter dem Barcode anzeigen (der codierte Inhalt)
caption Eigener Beschriftungstext, z. B. der Produktname unter einem EAN oder der Name unter einer vCard
font_size Schriftgröße der Beschriftung in Pixeln (6–200); weggelassen = automatisch. Zu lange Texte werden auf Barcodebreite verkleinert.

Jeder erfolgreiche Aufruf liefert neben dem Bild strukturierte Daten (structuredContent) — darunter encoded_data: genau das, was im Code steht, etwa der EAN mit ergänzter Prüfziffer oder die erzeugte vCard. Das Modell kann damit nachprüfen und berichten, statt zu raten.

Zwei Prompts für die häufigsten Aufgaben

Prompt Was er tut
payment_qr_from_invoice Liest Empfänger, IBAN, Betrag und Verwendungszweck aus einem Rechnungstext und erzeugt den GiroCode — und fragt nach, statt zu raten, wenn IBAN oder Betrag unklar sind.
product_labels Eine Liste Code;Etikett-Text → je Zeile ein beschrifteter Barcode; abgelehnte Codes werden am Ende gesammelt gemeldet.

Einbinden

Der Server heißt mcp-barcode-server (Windows: mcp-barcode-server.exe) und spricht standardmäßig stdio — der KI-Client startet ihn selbst.

Wo er nach der Installation liegt:

  • Windows (Setup) — C:\Program Files\MLC Barcode\mcp-barcode-server.exe
  • Linux-Suite / macOS-Archiv — dort, wo Sie das Archiv entpackt haben, z. B. ~/tools/mlc-barcode/mcp-barcode-server

Ein absoluter Pfad ist Pflicht: Die Clients starten den Server nicht in Ihrem Arbeitsverzeichnis, und ein relativer Aufruf scheitert ohne sichtbare Meldung.

Claude Desktop

Datei bearbeiten und Claude Desktop neu starten:

  • Windows — %APPDATA%\Claude\claude_desktop_config.json
  • macOS — ~/Library/Application Support/Claude/claude_desktop_config.json
  • Linux — ~/.config/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "mlc-barcode": {
      "command": "C:\\Program Files\\MLC Barcode\\mcp-barcode-server.exe"
    }
  }
}

Unter macOS und Linux entsprechend:

{
  "mcpServers": {
    "mlc-barcode": {
      "command": "/Users/ich/tools/mlc-barcode/mcp-barcode-server"
    }
  }
}

In JSON muss jeder Backslash eines Windows-Pfads verdoppelt werden.

Claude Code

claude mcp add mlc-barcode -- /pfad/zu/mcp-barcode-server

Gemini CLI

In ~/.gemini/settings.json:

{
  "mcpServers": {
    "mlc-barcode": {
      "command": "/pfad/zu/mcp-barcode-server"
    }
  }
}

Cursor

In ~/.cursor/mcp.json (global) oder .cursor/mcp.json im Projekt — derselbe mcpServers-Block wie oben.

Für Fortgeschrittene: Betrieb im Netz (Streamable HTTP)

Für die normale Nutzung auf dem eigenen Rechner brauchen Sie diesen Abschnitt nicht — dort startet der KI-Client den Server selbst (siehe oben).

Wer den Server zentral für mehrere Rechner betreiben will, startet ihn mit einer Adresse:

mcp-barcode-server -addr :8080

Der Client verbindet sich dann per Streamable HTTP mit http://<host>:8080/mcp — dem aktuellen Netz-Transport der Spezifikation. Ältere Clients, die nur SSE können, finden denselben Server unter http://<host>:8080/sse.

Browser-Anfragen von fremden Seiten werden abgewiesen (Schutz gegen DNS-Rebinding). Eine eigene Anmeldung hat der Server nicht — nur im vertrauenswürdigen Netz betreiben oder hinter einen Proxy mit Authentifizierung stellen.


Prüfen, ob es läuft

mcp-barcode-server -version

zeigt die Version. Im Client fragen Sie danach einfach: „Welche Barcode-Werkzeuge hast du?“ — das Modell sollte die elf Werkzeuge nennen. Taucht nichts auf, ist fast immer der Pfad falsch oder der Client wurde nach der Änderung nicht neu gestartet.


Optional: Ablage in mlcartifact

Mit -artifact-addr <host:port> (oder der Umgebungsvariable ARTIFACT_GRPC_ADDR) verbindet sich der Server mit einem mlcartifact-Dienst. Dann bieten die Werkzeuge zusätzlich save_artifact und filename an, und erzeugte Barcodes werden dort abgelegt statt nur im Gespräch zurückgegeben. Ohne diesen Schalter bleiben die beiden Optionen aus dem Schema heraus.


Geprüft mit dem MCP-Tester

Der Server wird mit dem mlc mcp-tester gegen die MCP-Spezifikation 2026-07-28 geprüft — von außen, über den echten Transport, so wie ein Client ihn sieht: Qualitäts-Score 100/100, dazu ein Testskript, das jedes Werkzeug aufruft, Fehlerfälle provoziert und die strukturierten Ergebnisse gegen ihr Schema prüft, und die Transportregeln von Streamable HTTP (Header, Fehlercodes, Origin, keine Sessions). Strikte Clients wie das offizielle TypeScript-SDK lehnen Server ab, die das nicht einhalten.


Mehr zum Protokoll

Das MCP-Handbuch erklärt das Model Context Protocol von Grund auf — Werkzeuge, Ressourcen, Prompts, Transporte, Sicherheit.