Nutze Atlas-Daten.

Die Atlas-API ermöglicht Anwendungen, öffentliche Wein-E-Label-Datensätze zu suchen und abzurufen. Öffentliche Lesezugriffe sind kostenlos und offen, ohne Schlüssel für das Standard-Rate-Limit.

Schnelleinstieg

Setze die Basis-URL einmal, dann führe ein beliebiges Beispiel unten aus.

ATLAS_API=https://www.elabel-atlas.eu/api/v1

Authentifizierung

Anonyme Anfragen können jeden öffentlichen Leseendpunkt nutzen. Ein Schlüssel erhöht das Rate-Limit und ist für Schreiboperationen von Anbietern erforderlich. Inhaber:innen und Administrator:innen von Anbieter-Workspaces können im angemeldeten Workspace unter API-Schlüssel einen Schlüssel erstellen. Wenn du einen Leseschlüssel ohne Anbieter-Workspace brauchst oder Massenzugriff benötigst, schreibe an david@essentialcode.eu.

curl --fail --silent --show-error \
  -H "Authorization: Bearer $ATLAS_API_KEY" \
  "$ATLAS_API/public-records?limit=1"

Rate-Limits

Jede öffentliche Operation erlaubt 60 anonyme Anfragen pro Minute und Adresse oder 600 pro Minute und Leseschlüssel. Antworten enthalten Limit-, Remaining- und Reset-Header. Eine Anfrage über dem Limit gibt HTTP 429 zurück:

HTTP/1.1 429 Too Many Requests
retry-after: 60
x-ratelimit-limit: 60
x-ratelimit-remaining: 0

{"error":{"code":"rate_limited","message":"The public API rate limit was exceeded."}}

Öffentliche Leseendpunkte

Datensätze suchen

curl --fail --silent --show-error \
  "$ATLAS_API/search?q=Veltliner&limit=1"

Beispielausgabe

{
  "query": "Veltliner",
  "records": [{
    "atlas_record_id": "QXSvIVqvHcRW-LjHtG88I",
    "name": "Grüner Veltliner 2025",
    "provider": { "name": "Demo Wine Cooperative" },
    "gtin": "4006381333931"
  }]
}

Öffentliche Datensätze auflisten

curl --fail --silent --show-error \
  "$ATLAS_API/public-records?limit=1"

Beispielausgabe

{
  "records": [{
    "atlas_record_id": "ovPcoHyHMEbzdcGC_Zkm_",
    "name": "Grüner Veltliner Ried Steinberg 2024",
    "provider": { "name": "Glasswise" }
  }],
  "next_cursor": "eyJ1cGRhdGVkQXQiOjE3ODk1MDIxMjQ3MDcsImlkIjoib3ZQY29IeUhNRWJ6ZGNHQ19aa21fIn0"
}

Eine GTIN nachschlagen

curl --fail --silent --show-error \
  "$ATLAS_API/public-records/4006381333931"

Beispielausgabe

{
  "gtin": "4006381333931",
  "records": [{
    "atlas_record_id": "QXSvIVqvHcRW-LjHtG88I",
    "name": "Grüner Veltliner 2025",
    "provider": { "name": "Demo Wine Cooperative" }
  }]
}

Einen Datensatz per Atlas-ID abrufen

RECORD_ID=$(curl --fail --silent --show-error \
  "$ATLAS_API/public-records?limit=1" | jq -r '.records[0].atlas_record_id')
curl --fail --silent --show-error \
  "$ATLAS_API/public-records/by-id/$RECORD_ID"

Beispielausgabe

{
  "atlas_record_id": "ovPcoHyHMEbzdcGC_Zkm_",
  "name": "Grüner Veltliner Ried Steinberg 2024",
  "provider": { "name": "Glasswise" },
  "atlas_updated_at": "2026-09-15T19:55:24.707Z"
}

Paginierung

Die öffentliche Datensatzliste gibt next_cursor zurück, wenn eine weitere Seite existiert. Sende diesen exakten opaken Wert mit denselben Filtern. Dekodiere oder verändere ihn nicht.

CURSOR=$(curl --fail --silent --show-error \
  "$ATLAS_API/public-records?limit=1" | jq -r '.next_cursor')
curl --fail --silent --show-error \
  "$ATLAS_API/public-records?limit=1&cursor=$CURSOR"

Sprachen öffentlicher Datensätze

Öffentliche Datensatzseiten lokalisieren nur die Atlas-eigenen Bezeichnungen und die Codes, die das E-Label Standard Format definiert, einschließlich Weintyp, Weineigenschaften, Ländercodes, Nährwertschlüssel und Einheiten. Jeder vom Anbieter verfasste Text bleibt exakt wie geliefert, einschließlich Zutatennamen und -kategorien sowie Verpackungs- oder Entsorgungstexte des Anbieters.

Der erste Code in languages ist immer die Primärsprache des Datensatzes, auch wenn Atlas seine Oberfläche nicht in dieser Sprache darstellen kann. Eine Seite bietet den primären Inhalt und unterstützte Sprachen mit Anbieterübersetzungen. Verlinke auf eine Auswahl mit ?lang=de oder ?lang=hr. Ohne Parameter nutzt Atlas Accept-Language, wenn passender Inhalt existiert, und leitet auf die entsprechende teilbare URL weiter.

Bevorzuge strukturierte ingredients[], um Allergen- und Bio-Kennzeichen zu erhalten. Nutze ingredients_text nur, wenn der Anbieter eine vollständige Deklaration in Fließtext hat. Anbieter können translations.{language}-Werte für ingredients_text, designation_of_origin und jede packaging[].disposal-Anweisung hinzufügen. Das packaging-Array folgt Länge und Reihenfolge der Primärliste; nutze null für eine Anweisung, die zurückfallen soll. Fehlende Übersetzungen fallen auf den primären Top-Level-Wert zurück. REST und MCP geben diese optionale Map zurück, und JSON-LD nutzt sprachgetaggte Werte. Diese anbieterseitige Map ist der einzige Weg, wie anbietereigener Text zwischen Sprachen wechselt.

Der Anfrage-Body des Anbieters folgt dem E-Label Standard Format.

Auf öffentlichen Seiten rendert Atlas die eigenen Codes des Standards (productType, color, sweetness, packagingGas, packagingType, materialType und collection) in der Seitensprache aus dem veröffentlichten Standard-Vokabular. Jeder andere Anbieterwert bleibt exakt wie geliefert.

MCP

Model Context Protocol, oder MCP, ist ein Standardweg für einen KI-Client, externe Werkzeuge aufzurufen. e-label Atlas stellt einen anonymen Streamable-HTTP-Server unter https://www.elabel-atlas.eu/mcp bereit.

Der Server stellt search_elabels, lookup_elabel_by_gtin, get_elabel und list_elabels_updated_since bereit.

Atlas in einem Agenten installieren

Wähle deinen Client. Das Claude-Code-Plugin und das Codex-Setup enthalten sowohl die Atlas-Skill-Anleitung als auch die live MCP-Tools. Andere Clients verbinden sich mit demselben schreibgeschützten MCP-Server.

Claude Code

Fügt den offiziellen Atlas-Marketplace hinzu und installiert dann das Plugin. Das Plugin enthält den Skill und registriert den Remote-MCP-Server. Für das gehostete Archiv ist Claude Code 2.1.224 oder neuer erforderlich.

claude plugin marketplace add https://www.elabel-atlas.eu/claude/marketplace.json && \
  claude plugin install elabel-atlas@elabel-atlas

Claude-Code-Plugins werden über Marketplaces installiert, nicht direkt von einer beliebigen Plugin-URL.Offizielle Referenz zu Format und Vertrieb.

Claude Web und Desktop

Claude Web und Claude Desktop akzeptieren Atlas als benutzerdefinierten Remote-Connector. Sie installieren das Claude-Code-Plugin nicht in einen normalen Chat. Öffne das vorausgefüllte Connector-Formular, prüfe die URL und bestätige sie.

https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=e-label%20Atlas&connectorUrl=https%3A%2F%2Fwww.elabel-atlas.eu%2Fmcp
Atlas-Connector-Formular öffnen

Offizielle Referenz für benutzerdefinierte Connectoren.

Codex

Lädt den User-Skill herunter und registriert den Streamable-HTTP-Server. Starte Codex nach der Installation des Skills neu.

mkdir -p "$HOME/.agents/skills/elabel-atlas"
curl --fail --location   https://www.elabel-atlas.eu/api/v1/SKILL.md   --output "$HOME/.agents/skills/elabel-atlas/SKILL.md"
codex mcp add elabel-atlas --url https://www.elabel-atlas.eu/mcp

Offizielle Skill-Referenz undoffizielle MCP-Referenz.

Cursor

Füge diesen Eintrag zu ~/.cursor/mcp.json hinzu, behalte bereits vorhandene Server in der Datei und starte Cursor neu. Atlas hat derzeit keinen Eintrag im Cursor Marketplace.

{
  "mcpServers": {
    "elabel-atlas": {
      "url": "https://www.elabel-atlas.eu/mcp"
    }
  }
}

Offizielle Cursor-MCP-Referenz.

Gemini CLI

Füge diesen Eintrag zu ~/.gemini/settings.json hinzu, behalte vorhandene Einstellungen und starte die Gemini CLI neu. Atlas hat derzeit keinen Eintrag als Gemini-Erweiterung.

{
  "mcpServers": {
    "elabel-atlas": {
      "httpUrl": "https://www.elabel-atlas.eu/mcp"
    }
  }
}

Offizielle Gemini-CLI-MCP-Referenz.