Skip to main content
Glama
AntonS2042

odoo-mcp

by AntonS2042

Odoo 17 – MCP-Server (Proof of Concept)

Ein schlanker MCP-Server, der ausgewählte Odoo-17-Geschäftsprozesse als Tools kapselt. Ein LLM-Agent (z.B. OpenClaw) kann diese Tools auswählen und ausführen, ohne Odoo selbst zu verändern. Die Anbindung erfolgt entkoppelt über die externe Odoo-API (XML-RPC)

Tools

Bereich

Tool

Zweck

Read

odoo_search_read

Flexibles Lesen beliebiger Odoo-Modelle

Inventory

search_products

Verkaufsfähige Produkte suchen (inkl. Bestand)

Inventory

check_stock_level

Verfügbaren Lagerbestand eines Produkts prüfen

Sales

find_or_create_customer

Kunden über E-Mail finden oder neu anlegen

Sales

create_sale_order

Verkaufsauftrag (Angebot) anlegen

Sales

confirm_sale_order

Angebot bestätigen → Verkaufsauftrag

Related MCP server: Odoo MCP Unified Server

1. Odoo lokal starten

docker compose up -d

Dann http://localhost:8069 öffnen und beim ersten Start eine Datenbank namens odoo mit Demodaten anlegen (liefert Beispielprodukte/-kunden). Das Master-Passwort wird in config/odoo.conf gesetzt; dazu die Vorlage kopieren und ein eigenes Passwort eintragen:

cp config/odoo.conf.example config/odoo.conf   # admin_passwd anpassen

config/odoo.conf ist bewusst per .gitignore ausgeschlossen und darf nicht mit echtem Passwort/Hash veröffentlicht werden.

2. MCP-Server einrichten

python3 -m venv .venv
.venv/bin/pip install -r requirements.txt
cp .env.example .env        # ggf. Zugangsdaten anpassen

3. Server testen

.venv/bin/python main.py    # startet den MCP-Server über stdio

Der Server kommuniziert über stdio (JSON-RPC) und wird normalerweise vom MCP-Client/Agenten gestartet, nicht direkt im Terminal bedient.

4. In einem MCP-Client registrieren

Beispielkonfiguration (z.B. für OpenClaw / kompatible Clients):

{
  "mcpServers": {
    "odoo": {
      "command": "/ABSOLUTER/PFAD/zu/odoo-mcp/.venv/bin/python",
      "args": ["/ABSOLUTER/PFAD/zu/odoo-mcp/main.py"]
    }
  }
}

Pfade an den eigenen Projektordner anpassen (absolute Pfade zum venv-Python und zu main.py).

Beispiel-Ablauf (typische Tool-Kette eines Agenten)

  1. search_products("Desk") → Produkt-ID ermitteln

  2. check_stock_level(product_id) → Bestand prüfen

  3. find_or_create_customer("Muster GmbH", "info@muster.de") → Kunden-ID

  4. create_sale_order(customer_id, [{"product_id": 42, "quantity": 2}]) → Angebot

  5. confirm_sale_order(order_id) → bestätigter Verkaufsauftrag

Konfiguration

Über Umgebungsvariablen bzw. .env:

Variable

Default

Bedeutung

ODOO_URL

http://localhost:8069

Basis-URL der Instanz

ODOO_DB

odoo

Datenbankname

ODOO_USER

admin

Benutzer

ODOO_PASSWORD

admin

Passwort / API-Key

Governance-Schicht

policy.yaml; governance.py:

Kontrolle

Umsetzung

Policy-Schlüssel

Capability-Scoping

Nur freigegebene Tools werden registriert (für den Agenten unsichtbar)

allowed_tools

Eingabevalidierung

Generisches Read-Tool nur auf erlaubte Modelle beschränkbar

allowed_models

Audit-Log

Jeder Tool-Aufruf als JSON-Zeile (Agent, Parameter, Ergebnis-/Fehler-Referenz, Dauer)

audit.log_file, agent_id

Ein leerer/fehlender allowed_*-Eintrag bedeutet „keine Einschränkung". Den Policy-Pfad kann man über die Umgebungsvariable ODOO_MCP_POLICY überschreiben.

Beispielzeile aus dem Audit-Log:

{"ts": "2026-06-22T12:55:52Z", "agent_id": "openclaw-poc", "tool": "create_sale_order",
 "params": {"customer_id": 7, "order_lines": [{"product_id": 42, "quantity": 2}]},
 "status": "ok", "result_ref": 15, "duration_ms": 38.4}
F
license - not found
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    -
    quality
    D
    maintenance
    Enables interaction with Odoo ERP systems through 17+ business tools covering sales, purchasing, inventory, and accounting operations. Supports both Claude Desktop integration and web deployment with dual transport modes.
    MIT
  • A
    license
    -
    quality
    C
    maintenance
    Enables AI assistants to interact with Odoo ERP systems through natural language, allowing users to search, create, update, and manage business records like customers, products, and invoices across any Odoo instance.
    1
    Mozilla Public 2.0
  • A
    license
    A
    quality
    B
    maintenance
    Enables AI agents to interact with Odoo ERP as the authenticated user, with tools for discovery, planning, and mutations bounded by user permissions.
    34
    37
    2
    MIT

View all related MCP servers

Related MCP Connectors

  • Odoo ERP for AI agents: hosted OAuth endpoint, gated writes, one endpoint for every instance.

  • Gateway between LLM agents and world data through eight tools and a bundled endpoint catalog.

  • SaaS intelligence for AI agents. 5 unified tools cover 1,000+ services with 91-96% token savings.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/AntonS2042/odoo-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server