Odoo 20.0 · checked against Odoo’s docs on 24 September 2026

The Odoo 20 MCP server, explained.

Odoo 20 lets Claude, Codex, and other AI clients connect straight to your database. Here is how to switch it on, every tool it can hand an AI, what changed for the MCP servers you may already run, and what to add before an AI writes to your books.

The short answer

Yes, Odoo 20 has a native MCP server in its AI app. Point any MCP client at your-odoo/mcp with an API key that has the MCP scope. It starts with 5 read-only tools; writing tools stay hidden until an administrator exposes them. It is not in Odoo Community.

odoo 20 · native mcp Per Odoo’s 20.0 docs
Endpoint
https://your-odoo/mcp
Sign-in
Authorization: Bearer <API key>scope MCP · with an expiry
Bridge
npx -y mcp-remoteneeds Node.js
Clients
ClaudeCodexAntigravity
The connection as Odoo’s 20.0 documentation describes it: 27 tools, 5 exposed by default, all read-only.

Set it up

Connect an AI to Odoo 20 in three steps.

A key, a line of config, and a decision about which tools the AI may use. The commands are Odoo’s own, from its 20.0 documentation, with the placeholders made readable.

  1. 01

    Create an API key with the MCP scope

    Every request carries this key, and it decides whose identity and access rights the AI works with. Create it as the user the AI should act as.

    1. Your avatar
    2. My Preferences
    3. Security
    4. Add API Key
    5. Scope: MCP
    6. Validity, e.g. 1 month
    7. Generate key

    Odoo shows the key once, so copy it straight away. It then sits in plain text in your AI client’s config: give it the shortest validity that works.

  2. 02

    Add the server to your AI client

    Swap in your Odoo address and the key. Odoo’s documented setups all run the mcp-remote bridge through npx, so install Node.js first.

    Claude Code

    One command adds the server; add --scope user to make it available in every project. Then check the connection.

    bash
    claude mcp add --transport stdio odoo20 -- npx -y mcp-remote https://your-odoo.example.com/mcp --header "Authorization: Bearer YOUR_API_KEY"
    claude mcp list

    Claude Desktop

    Settings → Developer → Edit Config, then paste this into claude_desktop_config.json. The server appears under Local MCP Servers with its status.

    claude_desktop_config.json
    {
      "mcpServers": {
        "odoo20": {
          "command": "npx",
          "args": [
            "-y",
            "mcp-remote",
            "https://your-odoo.example.com/mcp",
            "--header",
            "Authorization: Bearer YOUR_API_KEY"
          ]
        }
      }
    }

    Codex

    Add it from the CLI, then run codex and type /mcp to see it connected. Prefer a file? The same server in ~/.codex/config.toml is below.

    bash
    codex mcp add odoo20 -- npx -y mcp-remote https://your-odoo.example.com/mcp --header "Authorization: Bearer YOUR_API_KEY"
    ~/.codex/config.toml
    [mcp_servers.odoo20]
    command = "npx"
    args = ["-y", "mcp-remote", "https://your-odoo.example.com/mcp", "--header", "Authorization: Bearer YOUR_API_KEY"]

    Antigravity

    Settings → Customizations → Open MCP Config, then paste this into mcp_config.json. Check it from the CLI with agy, then /mcp.

    mcp_config.json
    {
      "mcpServers": {
        "odoo20": {
          "command": "npx",
          "args": [
            "-y",
            "mcp-remote",
            "https://your-odoo.example.com/mcp",
            "--header",
            "Authorization: Bearer YOUR_API_KEY"
          ]
        }
      }
    }
  3. 03

    Choose the tools the AI may use

    Tools are Odoo server actions. Turn on developer mode, open Settings, Technical, Server Actions, open an AI Tool, and tick Available in MCP on its Usage tab. Five read-only tools are on from the start; everything else, including every tool that writes, waits for this tick.

    “Enabling the Readonly Tool checkbox does not ‘hide’ the tool from the AI client. It only advises the client that the tool is safe to invoke without explicit user approval.”

    Odoo 20.0 documentation, AI MCP server

Every documented tool

27 tools, 5 switched on.

The full list from Odoo’s 20.0 documentation. Out of the box an AI can look around and read. Everything that changes a record, a web page, or an image waits for an administrator.

27documented tools
5on by default, all read-only
5marked as writing

Setup 1

  • MCP Retrieve initial context On by default The user, timezone, active company, and available companies. Runs by itself when a session starts.

Data 8

  • Get Models On by default Every model the user can access, with technical names.
  • Get Fields On by default The searchable fields of a model, with types and relations.
  • Search On by default Finds records with a domain and returns the fields asked for.
  • Read group On by default Groups records and computes sums, counts, and averages.
  • Get Menus Every menu the user can access, with its action and views.
  • Get Menu Details Action, domain, default filters, and searchable fields of given menus.
  • Create Records Writes Creates new records on a model, optionally with a preview menu.
  • Update Records Writes Updates the existing records that match a domain.

Navigation 9

  • Open Menu List Sends the UI to a list view, filtered and grouped.
  • Open Menu Kanban Sends the UI to a kanban view.
  • Open Menu Graph Opens a graph with a chosen measure and chart mode.
  • Open Menu Pivot Opens a pivot with row and column groupings.
  • Run view action Opens client or report actions tied to a menu.
  • Compute Report Measures Lists the measures a pivot or graph can use.
  • Prepare Record Previews Renders records as preview cards in Odoo’s chat.
  • Adjust Search Changes filters, groupings, or view type of the current view.
  • Compute Date Turns “start of last week” into an exact date.

Website 4

  • Get Snippets Fetches website-builder snippet HTML.
  • Read Custom CSS Reads the website’s custom SCSS.
  • Write Custom CSS Writes Overwrites the website’s custom SCSS.
  • Apply HTML to Page Writes Applies HTML edits to a website page.

Media 3

  • Generate an Image Writes Generates an image from a prompt, only on explicit request.
  • Search Images Searches Unsplash for stock photos.
  • Get user image URLs Turns chat attachments into permanent image URLs.

Other 2

  • Web Search Hands a research question to a web search agent.
  • Load Skills Loads instructions and tools for registered AI skills.

Source: Odoo 20.0 documentation, “Available MCP tools”. In the Odoo UI each name carries the prefix “AI Tool:”.

Before you start

Will it work on my Odoo 20?

Three situations, three answers, each read from Odoo’s 20.0 source or documentation.

Covered by the docs

Odoo 20 with the AI app

Odoo’s MCP documentation lives under the AI app, and its example endpoint is an Odoo Online address. If your database has the AI app and your API key offers the MCP scope, the endpoint is your database URL plus /mcp.

Check your database

Self-hosted or Odoo.sh Enterprise

Odoo’s 20.0 documentation does not say which hosting types include the MCP server. Look for the MCP scope when you create an API key: if it is there, so is the endpoint.

Not included

Odoo 20 Community

There is no MCP or AI module in the Odoo 20 Community source code. Community connects through an external MCP gateway over Odoo’s APIs, or an MCP server installed as a module.

Already run an Odoo MCP server? Three things changed.

  • Reads and writes keep working. XML-RPC and JSON-RPC data calls use the common and object services, which Odoo 20 keeps. Odoo schedules their removal for Odoo 22, in fall 2028, and points to the JSON-2 API.
  • Database management over RPC is gone. Odoo 20 removed the db service, so any tool that creates, copies, backs up, or drops databases over RPC breaks.
  • A fresh Odoo 20 is local-only. It binds to 127.0.0.1 by default, where Odoo 19 listened on every interface. A gateway on another machine needs a reverse proxy, or an explicit http_interface.

Setting up the server itself? Our tested Odoo 20 install guide covers the new defaults step by step.

  1. Odoo 19RPC deprecated · JSON-2 API arrives
  2. Odoo 20db service removed · common and object stay
  3. Odoo 22 · fall 2028common and object scheduled for removal

When the AI writes to production

Connecting is the easy half.

Odoo’s native server does the first job well: it gives an AI a door, under the user’s own rights, with reading as the default. The moment the AI writes to the ERP your business runs on, you need answers the documentation leaves to you.

The question Odoo 20 native MCP, per its docs With the Execution Layer for Odoo
Who the AI acts as The user who created the API key, with that user’s access rights. The key has the MCP scope and an expiry. Each person signs in as themselves over OAuth 2.1; their rights, a role bundle, and the connection level all narrow what the AI can do.
Which actions exist Server actions an administrator marks Available in MCP. The Readonly flag advises the client; it does not hide the tool. Role bundles decide which tools exist per person. A tool the AI cannot see is an action that cannot happen.
Human approval Not described in Odoo’s 20.0 MCP documentation. Risky actions stop until a person approves the exact payload. Change one value and the approval is void.
After a write Not described in Odoo’s 20.0 MCP documentation. The committed row is read back from the database and checked field by field. A mismatch returns VERIFICATION_FAILED.
Retries and batches Not described in Odoo’s 20.0 MCP documentation. Idempotency keys make a retried write run once. A failing batch rolls back whole.
Evidence afterwards Not described in Odoo’s 20.0 MCP documentation. An immutable, hash-chained audit with before and after values, per-record history, and alerts.

“Not described” means Odoo’s published 20.0 MCP documentation does not cover it, as of 24 September 2026. Odoo’s AI can still be the right choice for reading, reporting, and navigating. The full use-case comparison, with a decision helper, is at Odoo 20 native MCP vs the Execution Layer, every mechanism is in the technical whitepaper, and a scorecard for any server is at best MCP server for Odoo 20.

Odoo 19 now · Odoo 20 port under way

The Execution Layer for Odoo

Our enterprise MCP server: every AI action is checked against your rules and the person’s own rights, approved when it matters, read back from the database, and recorded with before and after values. It runs beside Odoo’s own /mcp, under /nanti/mcp, so the two never collide.

  • Per-user OAuth 2.1 sign-in
  • Payload-bound approvals
  • Database read-back after every write
  • Idempotent retries, atomic batches
  • Immutable before-and-after audit
  • Governed Discuss and WhatsApp messages
  • 20 tools · 42 structured error codes
  • Every call recorded, refusals too

Available now for Odoo 19, Community and Enterprise, self-hosted and Odoo.sh. Odoo 20 support is in progress: we have run our full failure suite against Odoo 20.0 Community and are porting the Odoo 20 API changes, for delivery as the first maintenance release, no later than eight weeks after Odoo 20’s general availability.

USD499

once per Odoo major · everything included · existing customers move to the next major at half price

On Odoo 19 today? Get it on the Odoo Apps Store or write to hello@nanti.ai. Same module, same price.

Plain answers

Odoo 20 and MCP, answered.

Does Odoo 20 have an MCP server?

Yes. Odoo 20’s documentation describes a native MCP server inside Odoo’s AI app: an AI client connects to your database URL plus /mcp and authenticates with an API key that has the MCP scope. Out of the box it exposes five read-only tools, and an administrator decides which other tools the client may use. It is not part of Odoo 20 Community: there is no MCP or AI module in the 20.0 Community source code.

What is the Odoo 20 MCP endpoint URL?

Your database URL followed by /mcp, for example https://your-company.odoo.com/mcp. Odoo’s documented client setups reach it through the mcp-remote bridge, which needs Node.js for its npx command, and send the API key as an Authorization: Bearer header.

How do I connect Claude to Odoo 20?

Create an API key in Odoo (your avatar, My Preferences, Security tab, Add API Key, scope MCP, a validity period), then run: claude mcp add --transport stdio odoo20 -- npx -y mcp-remote https://your-odoo/mcp --header "Authorization: Bearer YOUR_API_KEY". Check it with claude mcp list. For Claude Desktop, add the same npx command to claude_desktop_config.json under mcpServers, as Odoo’s 20.0 documentation shows.

How do I connect Codex to Odoo 20?

With the same API key, run codex mcp add odoo20 -- npx -y mcp-remote https://your-odoo/mcp --header "Authorization: Bearer YOUR_API_KEY", or add an [mcp_servers.odoo20] entry to ~/.codex/config.toml. Start codex and type /mcp to confirm the server is connected.

Which tools does the Odoo 20 MCP server expose?

Odoo’s 20.0 documentation lists 27 tools across data, navigation, website styling, media, and search. Five are exposed by default, all read-only: MCP Retrieve initial context, Get Models, Get Fields, Search, and Read group. The rest, including Create Records and Update Records, stay hidden until an administrator ticks Available in MCP on the matching server action under Settings, Technical, Server Actions, in developer mode.

Can the Odoo 20 MCP server write to my database?

Only if an administrator exposes a writing tool. Odoo marks 5 of the documented tools as writing: Create Records, Update Records, Write Custom CSS, Apply HTML to Page, and Generate an Image. Every call runs with the access rights of the user who owns the API key, so the AI can never do more than that user could.

Does the Readonly Tool setting stop an AI from writing?

No. Odoo’s documentation says enabling Readonly Tool does not hide the tool from the AI client; it only advises the client that the tool is safe to call without asking the user first. What actually limits the AI is which tools you expose and the access rights of the key’s owner.

Is the MCP server included in Odoo 20 Community?

No. The native MCP server is part of Odoo’s AI app, and the Odoo 20 Community source code has no MCP or AI module. On Community, an AI connects through an external MCP gateway that uses Odoo’s APIs, or through an MCP server installed as an Odoo module.

Will my existing Odoo MCP server keep working on Odoo 20?

Most will. Gateways that read and write through XML-RPC or JSON-RPC use the common and object services, which still work in Odoo 20 and are scheduled for removal in Odoo 22 in fall 2028. Anything that creates, copies, backs up, or drops databases over RPC breaks, because Odoo 20 removed the db service. And a gateway that called http://your-server:8069 directly will find nothing listening on the network after a fresh Odoo 20 install, which binds to 127.0.0.1 by default.

Can I connect ChatGPT to Odoo 20’s MCP server?

Odoo’s 20.0 documentation covers Claude, Codex, and Antigravity, all through the mcp-remote bridge. For ChatGPT, our guide to connecting ChatGPT to Odoo (nanti.ai/connect-chatgpt-to-odoo) walks through the routes it supports today and what to check before business use.

Which MCP server should I use with Odoo 20 in production?

Start from what the AI will do. For reading and reporting, Odoo’s native server with only read-only tools exposed is a clean start. Once an AI writes to the ERP your business runs on, check five things: human approval bound to the exact change, a database read-back after every write, retry safety, atomic batches, and an audit with before and after values. The Execution Layer for Odoo is our enterprise MCP server built against exactly that list: available now for Odoo 19, with Odoo 20 support in progress.

Does the Execution Layer for Odoo work with Odoo 20?

Not yet; it is available today for Odoo 19, Community and Enterprise, self-hosted and Odoo.sh. Odoo 20 support is in progress: we have run our full failure suite against Odoo 20.0 Community and are porting the Odoo 20 API changes, for delivery as the first maintenance release, no later than eight weeks after Odoo 20’s general availability. The license is USD 499 one-time per Odoo major version, and existing customers move to the next major at half price. It runs beside Odoo’s own /mcp endpoint, under /nanti/mcp, so the two never collide.

Keep going

A door is not a control.

MCP made connecting AI to Odoo a solved problem. What separates a demo from production is what happens when the AI writes, and what you can prove afterwards. The criteria are laid out in Odoo MCP servers, compared, and the write question in can AI write to Odoo safely.

Evaluating an AI tool that writes to your Odoo?

Name it. We read its public docs and your description and tell you, in writing within five working days, whether it checks the proposal before it writes, logs the result, or re-reads the committed row after. Sourced line by line, using the same pre-registered method as our public write-verification census. Free, no pitch, and we tell you the truth even if the tool is not ours.

Get the Write-Check

Our own write-verification, the Execution Layer for Odoo, is available now. The verdict stays honest either way.

Not ready to talk? Follow what we ship.

An email when something real ships. No newsletters, no spam.

Living this problem every day and want to shape what comes next? We work closely with a small number of Odoo teams on the Execution Layer for Odoo, the ones who cannot fully trust what their AI writes to production today. Tell us about your Odoo setup.