> For the complete documentation index, see [llms.txt](https://helpcenter.etron.info/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://helpcenter.etron.info/verwaltungsoberflache/api-and-hooks/mcp.md).

# MCP

{% hint style="success" %}
*Modul: ETRON onRetail REST API*
{% endhint %}

> *API & Hooks -> MCP*

Mit dem **MCP (Model Context Protocol) Server** kann ein MCP-kompatibler KI-Client (z.B. ChatGPT, Claude, Cursor) über einen Endpoint mit ETRON onRetail kommunizieren und über standardisierte Tools Daten lesen oder Aktionen ausführen (je nach Berechtigung).

{% hint style="info" %}
*Die Tools können unter* [*MCP -> Werkzeuge*](/verwaltungsoberflache/api-and-hooks/mcp/werkzeuge-katalog.md) *erweitert werden.*\
*Unter* [*MCP -> Playground*](/verwaltungsoberflache/api-and-hooks/mcp/playground-katalog.md) *steht ein integrierter Playground zur Verfügung, der keinen KI-Client benötigt.*

[***Zur Anleitung für die Verbindung mit dem KI-Client***](#etron-onretail-uber-mcp-server-mit-ki-client-verbinden)
{% endhint %}

### Daten lesen

Ohne das Modul ETRON onRetail V2 REST API können nur Read-Keys erstellt und Daten gelesen werden.

Der KI-Client kann z.B.

* Datensätze lesen/suchen (`search_read`, `read_records`, `search_count`)
* Struktur verstehen (`list_models`, `describe_model`)
* Rechte prüfen (`get_access_rights`)
* Chatter lesen (`get_messages`)
* Berichte ausgeben (`print_report`)

**Beispiel**\
Eingabe in KI Client:

```
Zeige mir alle offenen Angebote von Kunde "Muster GmbH".
```

Die KI verwendet automatisch das MCP-Tool `search_read` und liefert:

* Angebotsnummern
* Angebotsstatus
* Beträge
* Verantwortliche Mitarbeiter
* geplante Aktivitäten

### Daten schreiben

{% hint style="success" %}
*Modul: ETRON onRetail REST API*
{% endhint %}

Mit dem Modul ETRON onRetail V2 REST API können auch Write-Keys erstellt und Daten verändert werden.\
Der KI-Client kann z.B.

* Datensätze erstellen/ändern/löschen (`create_records`, `update_records`, `delete_records`)
* Chatter posten (`post_message`)
* Methoden ausführen (`call_method`)

**Beispiel**\
Eingabe in KI Client:

```
Erstelle einen neuen Lead für die Firma ABC Industrie.
Ansprechpartner: Max Berger
Interesse: ERP Einführung
```

Die KI nutzt `create_records` und legt automatisch einen CRM-Lead an.

```
Füge beim Auftrag SO0245 eine interne Notiz hinzu:
"Kunde wünscht Lieferung bis Monatsende."
```

Die KI verwendet `post_message` und erstellt automatisch einen Chatter-Eintrag.

## ETRON onRetail über MCP-Server mit KI-Client verbinden

In dieser Anleitung wird beschrieben wie ETRON onRetail über einen MCP Server mit einem KI-Client, wie z.B. ChatGPT, verbunden wird. Für die Verbindungseinrichtung kann eine Authentifzierung via OAuth oder ein Bearer Key verwendet werden.&#x20;

{% hint style="info" %}
*Für die Verbindung des MCP-Servers mit einem KI-Client kann – abhängig vom verwendeten Client – ein kostenpflichtiges Abonnement erforderlich sein.*

***

*Die Verbindungsmöglichkeiten (OAuth, Bearer-Key) sind abhängig vom verwendeten KI-Client und Abonnement.*
{% endhint %}

## ETRON onRetail via OAauth mit einem KI-Client verbinden

Für die Verbindung von ETRON onRetail mit einem KI-Client via OAuth wird nur die eigene MCP-URL  `https://onretailinstanz.wawi.onretail.eu/mcp`  (URL der Instanz + Pfad /mcp) benötigt. Der Client registriert sich bei der Verbindungsherstellung automatisch.

<details>

<summary>Anleitung: ETRON onRetail via OAuth mit ChatGPT verbinden</summary>

{% stepper %}
{% step %}

### Entwicklermodus in ChatGPT aktivieren

In ChatGPT die ![Menüpunkt Einstellungen](/files/PgKZDiwY0AtN6YG8ewJo) öffnen.

Den **Menüpunkt "Plugins"** und anschließend die Einstellung ![Einstellung Entwicklermodus](/files/975XQg04QeYwDD0ekCiN)öffnen.

<div data-with-frame="true"><figure><img src="/files/gWRaJ2adVRzUPnqkSaJC" alt="ChatGPT: Einstellungen -> Plugins -> Entwicklermodus"><figcaption><p>ChatGPT: Einstellungen -> Plugins -> Entwicklermodus</p></figcaption></figure></div>

Die Einstellung **"Entwicklermodus" aktivieren**.

<div data-with-frame="true"><figure><img src="/files/eRaXRYtU70tNjlJyLWB4" alt="Chat-GPT: Einstellung Entwicklermodus aktivieren"><figcaption><p>Chat-GPT: Einstellung Entwicklermodus aktivieren</p></figcaption></figure></div>
{% endstep %}

{% step %}

### Plugin in ChatGPT erstellen

Anschließend auf den **Menüpunkt "Plugins"** wechseln und **"Plugins durchsuchen"** auswählen.

<figure><img src="/files/dOCvHNiZUrvPKINRlubt" alt="ChatGPT: neues Plugin erstellen"><figcaption><p>ChatGPT: neues Plugin erstellen</p></figcaption></figure>

Anschließend neben "Plugins suchen" das **Plus-Symbol**![Plus-Symbol](/files/BPr4k0izFJCx3EmQfEcP) **auswählen**, um ein **neues Plugin** zu erstellen.&#x20;

<div data-with-frame="true"><figure><img src="/files/rY7pHvFmA2EOXv3C1fy7" alt="ChatGPT: neues Plugin erstellen"><figcaption><p>ChatGPT: neues Plugin erstellen</p></figcaption></figure></div>

Bei der Erstellung des Plugins muss folgendes angegeben werden:

<div data-with-frame="true"><figure><img src="/files/jakPPcL3hGZjQsxg8T9C" alt="ChatGPT: neues Plugin erstellen" width="503"><figcaption><p>ChatGPT: neues Plugin erstellen</p></figcaption></figure></div>

**Name**\
z.B. ETRON onRetail\
\
**Beschreibung**\
ETRON onRetail MCP\
\
**URL des MCP Servers**\
ist die URL der ETRON onRetail-Instanz + der Pfad /mcp, z.B.:&#x20;

&#x20;`https://onretailinstanz.wawi.onretail.eu/mcp`&#x20;

**Authentifizierung**\
OAuth\
\
Anschließend muss die **Warnung "Custom MCP Server bergen Risiken"** über die Checkbox  **bestätigt** und die Pugin-Erstellung über den Button **"Erstellen"** abgeschlossen werden.
{% endstep %}

{% step %}

### Plugin verbinden, Zugriff über OAuth autorisieren

In einem Fenster erscheint die Abfrage **"Pluginname zu ChatGPT hinzufügen"**.

<div data-with-frame="true"><figure><img src="/files/lSNt4YyEHahvF6iBG0E7" alt="Plugin verbinden, Zugriff über OAuth autorisieren"><figcaption><p>Plugin verbinden, Zugriff über OAuth autorisieren</p></figcaption></figure></div>

Den **Button "Pluginname anmelden" auswählen.**&#x20;

<div data-with-frame="true"><figure><img src="/files/VXTw7xami2ZCjiiZlYeq" alt=""><figcaption></figcaption></figure></div>

Es öffnet sich ein **neues Fenster**. In diesem werden die zu erstelltenden Berechtigungen (Read und/oder Write) angezeigt. Die Berechtigungen können über die Checkbox aktiviert/deaktivert werden.&#x20;

{% hint style="info" %}
*Ohne das Modul "ETRON onRetail v2 REST API" wird nur die Berechtigung für Read (Lesen) angezeigt.*
{% endhint %}

<div data-with-frame="true"><figure><img src="/files/W9uIpi0CGRtDK2BmPRwA" alt="Zugriff mit Berechtigung für Read (Lesen) und/oder Write (Schreiben) autorisieren"><figcaption><p>Zugriff mit Berechtigung für Read (Lesen) und/oder Write (Schreiben) autorisieren</p></figcaption></figure></div>

Den **Button "Zustimmen"** auswählen, um den Zugriff zu autorisieren.

Es erfolgt eine Weiterleitung zu ChatGPT mit der Meldung, dass das Plugin installiert wurde.

<div data-with-frame="true"><figure><img src="/files/kMvMCvTsy0clId7bwgN1" alt="Installiertes MCP-Plugin in ChatGPT"><figcaption><p>Installiertes MCP-Plugin in ChatGPT</p></figcaption></figure></div>

Damit ist die Verbindungseinrichtung abgeschlossen.
{% endstep %}
{% endstepper %}

</details>

<details>

<summary>Anleitung: ETRON onRetail via OAuth mit Claude.ai verbinden</summary>

{% stepper %}
{% step %}

### Konnektor in Claude.ai hinzufügen

In Claude.ai die Einstellungen öffnen und auf den Menüpunkt "Konnektoren" wechseln.

Den Button **"Hinzufügen -> Benutzerdefinierter Konnektor" auswählen**, um einen neuen Konnektor zu erstellen.

<div data-with-frame="true"><figure><img src="/files/H7WHRV6zIb5FhkrjxsQV" alt="Claude.ai: Konnektor hinzufügen"><figcaption><p>Claude.ai: Konnektor hinzufügen</p></figcaption></figure></div>

Im neuen Fenster sind folgende Daten anzugeben:

<div data-with-frame="true"><figure><img src="/files/mPUL8j9bCsFs6pfrgGTy" alt="claude.ai: Konnektor hinzufügen"><figcaption><p>Claude.ai: Konnektor hinzufügen</p></figcaption></figure></div>

**Name**

z.B. MCP onRetail claude.ai

**Remote MCP Server URL**

ist die URL der ETRON onRetail-Instanz + der Pfad /mcp, z.B.:&#x20;

&#x20;`https://onretailinstanz.wawi.onretail.eu/mcp`&#x20;

Anschließend die Konnektor-Erstellung über den **Button "Hinzufügen"** abschließen.
{% endstep %}

{% step %}

### Konnektor-Verbindung herstellen

Der Konnektor muss noch verbunden und der Zugriff via OAuth autorisiert werden.

Den **Button "Verbinden" auswählen**.

<div data-with-frame="true"><figure><img src="/files/nGJafTxDtvICYXAFsLoo" alt="claude.ai: Konnektor verbinden"><figcaption><p>Claude.ai: Konnektor verbinden</p></figcaption></figure></div>

Es öffnet sich ein **neues Fenster**. In diesem werden die zu erstelltenden Berechtigungen (Read und/oder Write) angezeigt. Die Berechtigungen können über die Checkbox aktiviert/deaktivert werden.&#x20;

{% hint style="info" %}
*Ohne das Modul "ETRON onRetail v2 REST API" wird nur die Berechtigung für Read (Lesen) angezeigt.*
{% endhint %}

<div data-with-frame="true"><figure><img src="/files/s9oVXiBOAj2udSJS9bSF" alt="Zugriff mit Berechtigung für Read (Lesen) und/oder Write (Schreiben) autorisieren" width="563"><figcaption><p>Zugriff mit Berechtigung für Read (Lesen) und/oder Write (Schreiben) autorisieren</p></figcaption></figure></div>

Den **Button "Zustimmen"** auswählen, um den Zugriff zu autorisieren.

Es erfolgt eine Weiterleitung zu Claude mit der Meldung, dass der Konnektor verbunden wurde.

<div data-with-frame="true"><figure><img src="/files/T9OI2gj24bDv2vgCoJTn" alt="claude.ai: verbundener Konnektor"><figcaption><p>Claude.ai: verbundener Konnektor</p></figcaption></figure></div>

Damit ist die Verbindungseinrichtung abgeschlossen.
{% endstep %}
{% endstepper %}

</details>

## ETRON onRetail via MCP-Key (Bearer-Key) mit einem KI-Client verbinden

<details>

<summary>Anleitung: ETRON onRetail via MCP-Key (Bearer-Key) mit einem KI-Client verbinden<br>Erzeugung des Bearer-Keys über den Benutzer</summary>

{% stepper %}
{% step %}

### Profil-Einstellungen des Benutzers öffnen

Unter Benutzer -> Mein Profil -> Reiter: Kontosicherheit können die MCP-Schlüssel und MCP-Sitzungen verwaltet werden.

<div align="left" data-with-frame="true"><figure><img src="/files/CKbs8z4qhbgrQvgO9sqE" alt=""><figcaption><p>Benutzerprofil öffnen</p></figcaption></figure></div>

<div data-with-frame="true"><figure><img src="/files/aaYhJaYK3yKCwEhhstsQ" alt=""><figcaption><p>MCP-Einstellungen unter Mein Profil -> Reiter: Kontosicherheit</p></figcaption></figure></div>

{% endstep %}

{% step %}

### MCP Key generieren

Im Bereich MCP Schlüssel kann der MCP Schlüssel über den Button ![MCP-Schlüssel hinzufügen](/files/q66ylXewrUUk8JsRRBbG)erstellt werden.

Im erscheinenden Popup wird eingestellt, ob es sich um einen Read- oder um einen Read\&Write-Schlüssel handelt.

<div data-with-frame="true"><figure><img src="/files/5dYretTxudbnj68oLSni" alt=""><figcaption></figcaption></figure></div>

{% hint style="info" %}
*Ohne das Modul "ETRON onRetail v2 REST API" können nur Lese-Schlüssel erstellt werden.*

***

*Der Scope (Nur lesen / Lesen & Schreiben) begrenzt die aufrufbaren Werkzeugkategorien. Die Prüfung erfolgt vor der Werkzeugausführung. Interne Zugriffsrechte und Benutzer-Zugriffsrechte bleiben wirksam. Durch einen MCP-Schlüssel können daher keine zusätzlichen Berechtigungen erlangt werden.*
{% endhint %}

{% hint style="info" %}
*Für jeden MCP-Schlüssel gibt es ein Rate Limit von 60 Anfragen pro Minute. Bei Überschreitung wird die Anfrage mit dem Status `rate_limited` im Audit Log abgelehnt.*
{% endhint %}

Über den Button <img src="/files/pnqQB4u5mw953MFmMXSH" alt="Schlüssel erzeugen" data-size="line"> kann der Key anschließend generiert werden.

<div data-with-frame="true"><figure><img src="/files/jyBqTBRvxksKoBKbb7fi" alt=""><figcaption></figcaption></figure></div>

Dieser Key muss kopiert werden, da er nicht erneut angezeigt wird. Er wird für die Verbindung mit dem KI Client, z.B. ChatGPT benötigt.
{% endstep %}
{% endstepper %}

</details>

## Verbindungsmöglichkeiten von ETRON onRetail über  MCP Server mit KI-Clients

{% hint style="warning" %}
***Für einige der folgenden Verbindungsmöglichkeiten wird ein Bearer-Key benötigt.** Dieser kann unter Einstellungen -> Allgemeine Einstellungen -> Allgemeine Einstellungen -> MCP-Server über den Button* [*KI verbinden*](/verwaltungsoberflache/einstellungen/allgemeine-einstellungen/allgemeine-einstellungen/mcp-server-and-mcp-oauth.md#ki-verbinden) *erzeugt werden.*
{% endhint %}

Unter "Einstellungen -> Allgemeine Einstellungen -> Allgemeine Einstellungen -> MCP-Server" kann über den **Button** [**KI verbinden**](/verwaltungsoberflache/einstellungen/allgemeine-einstellungen/allgemeine-einstellungen/mcp-server-and-mcp-oauth.md#ki-verbinden) ein Popup geöffnet werden, in dem direkt alle Verbindungsmöglichkeiten angezeigt werden.

<div data-with-frame="true"><figure><img src="/files/pSaCikoyVX6gUU6d58xx" alt="Button &#x22;KI Verbinden&#x22; unter Einstellungen -> Allgemeine Einstellungen -> Allgemeine Einstellungen -> MCP-Server"><figcaption><p>Button "KI Verbinden" unter Einstellungen -> Allgemeine Einstellungen -> Allgemeine Einstellungen -> MCP-Server</p></figcaption></figure></div>

**Pro Verbindungsmöglichkeit** (ChatGPT, Claude Code, Claude Desktop, ...) wird **ein Reiter** angezeigt. Durch **Öffnen des Reiters** wird die **benötigte Konfiguration** **angezeigt**, die direkt kopiert werden kann. Bei der Authentifizierung via Bearer-Key müssen die Platzhalter für URL und Bearer-Key durch die eigenen Daten ersetzt werden.

<div data-with-frame="true"><figure><img src="/files/bvnC72l7ijHBWey4yT2L" alt="Popup onRetail mit Ihrer KI verbinden"><figcaption><p>Popup onRetail mit Ihrer KI verbinden</p></figcaption></figure></div>

#### Claude Code

* Verbindung per CLI

```
claude mcp add odoo \
  --transport http \
  --url https://your-etrononretail.com/mcp \
  --header "Authorization: Bearer YOUR_MCP_KEY"
```

* Konfiguration per JSON

```
claude_code_config.json
```

```
{
  "mcpServers": {
    "odoo": {
      "type": "url",
      "url": "https://your-etrononretail.com/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_MCP_KEY"
      }
    }
  }
}
```

#### Claude Desktop

{% hint style="info" %}
*Nach dem Speichern der Konfiguration muss Claude Desktop neu gestartet werden.*
{% endhint %}

```
claude_desktop_config.json
```

```
{
  "mcpServers": {
    "odoo": {
      "type": "url",
      "url": "https://your-etrononretail.com/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_MCP_KEY"
      }
    }
  }
}
```

#### OpenCode

```
.opencode/config.json
```

```
{
  "mcp": {
    "odoo": {
      "type": "remote",
      "url": "https://your-etrononretail.com/mcp",
      "enabled": true,
      "headers": {
        "Authorization": "Bearer YOUR_MCP_KEY"
      }
    }
  }
}
```

#### Cursor

```
.cursor/mcp.json
```

```
{
  "mcpServers": {
    "odoo": {
      "url": "https://your-etrononretail.com/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_MCP_KEY"
      }
    }
  }
}
```

#### Codex CLI

```
config.toml
```

```
[mcp_servers.odoo]
url = "https://your-etrononretail.com/mcp"
headers.Authorization = "Bearer YOUR_MCP_KEY"
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://helpcenter.etron.info/verwaltungsoberflache/api-and-hooks/mcp.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
