MCP Odoo logo

MCP Odoo

Connects Odoo 16+ databases to MCP clients for read operations, diagnostics, local search, accounting reports, and gated writes.

Install MCP Odoo

Pick your client, then add it in one click or paste the config.

STDIOPython
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "mcp-odoo": {
      "command": "uvx",
      "args": [
        "odoo-mcp"
      ],
      "env": {
        "ODOO_MCP_ENABLE_WRITES": "YOUR_VALUE_HERE",
        "ODOO_MCP_MAX_ATTACHMENT_BYTES": "YOUR_VALUE_HERE",
        "ODOO_MCP_ALLOW_UNKNOWN_METHODS": "YOUR_VALUE_HERE",
        "MCP_CHATTER_DIRECT": "YOUR_VALUE_HERE",
        "ODOO_MCP_KNOWLEDGE_MAX_DOCS": "YOUR_VALUE_HERE",
        "ODOO_MCP_ELICIT_WRITES": "YOUR_VALUE_HERE",
        "ODOO_MCP_AUDIT_LOG": "YOUR_VALUE_HERE",
        "ODOO_LOCALE": "YOUR_VALUE_HERE"
      }
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Values are written into the snippet above so you can paste it as is. They never leave your browser.

Install not yet sandbox-tested— we haven't run this command through our automated sandbox yet. Not a red flag; we're working through the catalog.

Overview

The mcp-odoo MCP server connects MCP clients to Odoo 16+ using existing Odoo credentials. It supports XML-RPC for Odoo 16–18 and External JSON-2 for Odoo 19+, with tools for records, schemas, diagnostics, accounting, attachments, and local knowledge search. Write operations use previews, live validation, approval tokens, and an environment gate rather than direct unrestricted mutations. Reach for it when an agent, IDE, or automation workflow needs structured Odoo access without an Odoo-side module.

Use cases

  • Query Odoo records with bounded searches
  • Inspect models and field metadata
  • Diagnose ACL and record-rule visibility
  • Generate upgrade and model-migration reports
  • Approve controlled Odoo writes

Key features

  • Odoo 16+ XML-RPC and JSON-2 support
  • Model, field, schema, and relationship discovery
  • Gated write previews and validation
  • Local BM25 knowledge search
  • Accounting aging and health reports
  • Multi-instance configuration

Tools39

What MCP Odoo lets your agent do. Expand a tool for its parameters.

Self-reported~950 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 1d ago

Recent health check succeeded.

8/8 checks healthy over the last 41d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 16d ago via OSV.dev · odoo-mcp (PyPI)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars425Stargazers on the source repository.
Last commit1mo agoMost recent push to the default branch.
Tools exposed39Callable tools this server registers over MCP.

How MCP Odoo works

What mcp-odoo does

The mcp-odoo MCP server exposes an Odoo database through the Model Context Protocol. It is designed for local agents, IDE integrations, and automation that need to inspect business data, understand model structure, diagnose access problems, or perform controlled changes. The Python project runs locally or in Docker and can serve multiple named Odoo instances through configuration or environment settings.

Connections use the credentials already available for the Odoo account. The repository supports Odoo 16 and newer. It uses XML-RPC for Odoo 16–18 and supports External JSON-2 for Odoo 19+, including helpers for converting XML-RPC-shaped input into JSON-2 request details.

How it works

Read calls cover model discovery, field metadata, bounded record searches, individual record reads, grouped aggregations, attachments, employees, and holiday records. When callers omit fields for common record reads, the server selects a narrower set of business-relevant fields. Domain construction and validation are available before making a model query.

The server also provides diagnostics for model calls and access rules, relationship inspection, model-history lookup, addon-source scanning, upgrade-risk analysis, and fit-gap classification. Local knowledge search first indexes a bounded record slice, then performs accent-insensitive BM25 searches without additional Odoo calls or sending indexed data to another service.

For changes, the workflow separates planning from execution. A caller can preview a create, write, or unlink request, validate it against live fields_get metadata, and execute it only with a same-session approval token, explicit confirmation, and ODOO_MCP_ENABLE_WRITES=1. Direct create, write, and unlink calls are blocked. Model methods are reviewed separately, with side-effect methods restricted by an exact allowlist unless unknown methods are explicitly enabled.

Setup and configuration

Install and configure the local package with uvx odoo-mcp --setup. The repository can run over stdio or local HTTP/SSE, depending on the client. Configuration supports multiple named Odoo instances, with an optional instance selection on tool calls and instance-specific approval tokens and schema caches.

The server uses the Odoo connection details supplied during setup or through its configuration. Optional settings control write access, attachment size limits, chatter behavior, logging, audit output, locale handling, plugins, tool inclusion or exclusion, and rate limiting. The hosted ERPipe service is a separate managed option; this repository is the self-hosted Python server.

Tools and capabilities

The mcp-odoo MCP server includes tools for:

  • Listing models, reading field metadata, building bounded schema catalogs, and inspecting relationships.
  • Searching and reading records, aggregating with Odoo group-by operations, and reading capped attachment content.
  • Searching employees and holidays, producing accounting health and aged receivable/payable reports, and posting chatter messages.
  • Diagnosing calls and access rules, checking upgrade risks, resolving renamed models, scanning addon source, and classifying implementation gaps.
  • Indexing bounded record sets locally and searching them without further RPC requests.
  • Previewing, validating, and executing approved writes, plus reviewing model methods before execution.

Limitations and notes

Write support is disabled unless the write environment gate is enabled, and the approval flow still applies. Chatter posting normally uses the same approval-token process, although direct chatter mode can be enabled separately. Attachment content is size-capped, with the default limit set to 1 MiB.

Read operations are bounded, and local knowledge search only covers records included in its index. Access remains subject to the permissions of the configured Odoo credential. Multi-instance operation is available, but each instance must be configured and selected correctly. The repository includes a larger local tool surface than the separate hosted ERPipe service, so client and deployment behavior should be checked against the chosen transport.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about MCP Odoo

mcp-odoo is an MCP server that connects AI clients and local automation to Odoo 16+ databases using existing Odoo credentials. Its main tools search and read records, inspect models and fields, diagnose access, aggregate data, index local knowledge, produce accounting reports, and execute explicitly approved writes.

Install it with `uvx odoo-mcp --setup`. The repository provides a self-hosted Python server that can run locally or in Docker and communicate over stdio or local HTTP/SSE. You then provide the Odoo connection details required by your environment.

Yes, mcp-odoo works with Cursor.

mcp-odoo blocks direct create, write, and unlink calls. A write must be previewed, checked against live field metadata, confirmed, and executed with a same-session approval token while `ODOO_MCP_ENABLE_WRITES=1` is set. Chatter posting normally follows the same approval flow.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewMCP Odoo AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/mcp-odoo?style=directory)](https://allmcps.com/mcp/mcp-odoo)
HTML Embed
<a href="https://allmcps.com/mcp/mcp-odoo"><img src="https://allmcps.com/api/badge/mcp-odoo?style=directory" alt="MCP Odoo on AllMCPs" /></a>