WORK IN PROGRESS WORK IN PROGRESS WORK IN PROGRESS WORK IN PROGRESS WORK IN PROGRESS WORK IN PROGRESS WORK IN PROGRESS WORK IN PROGRESS

MODEL CONTEXT PROTOCOL

Odoo MCP Server

Connect AI agents to your Odoo instance. Query, create, update, and execute from Claude, Cursor, Windsurf, or any MCP client.

git clone https://github.com/oconsole/odoo-mcp-server.git

OVERVIEW

What is it?

A lightweight MCP server that bridges AI agents and Odoo ERP. It exposes 11 tools that let your AI query records, create contacts, confirm orders, post invoices, and run health checks — all through natural language.

One Python file. No framework. No build step.

Single file, zero build

One Python file with inline deps. Run with uv — no virtualenv, no build step.

Auto-detects protocol

Supports Odoo 17-18 (JSON-RPC) and 19+ (JSON-2 API). Auto-selects the right one.

Privacy first

Runs locally in your environment. Your credentials and data never leave your machine.

Read-only mode

Set ODOO_READONLY=true for safe production access. Only query tools remain active.

Works with your tools

Any client that speaks MCP can use these Odoo tools.

Claude Code

Query Odoo data, post invoices, and run diagnostics in natural language — directly from Claude.

Cursor / Windsurf

Query Odoo models, inspect records, and trigger workflows without leaving your editor.

Custom agents

Build autonomous Odoo workflows with any MCP-compatible agent framework.

See it in action

Your AI agent queries Odoo directly — no terminal needed.

MCP SESSION
User: Are there any draft invoices over $5,000?

┊ odoo_search_read account.move
┊   domain: [["state","=","draft"],["amount_total",">",5000]]
┊   fields: ["name","partner_id","amount_total"]

┊ Found 2 draft invoices:

  Invoice       | Customer       | Amount
  INV/2026/001  | Acme Corp      | $8,200.00
  INV/2026/002  | GlobalTech     | $12,450.00

┊ Want me to post them?

11 tools

Query, write, discover, and diagnose — everything you need to work with Odoo from an AI agent. Full reference

odoo_search_read Search and read records from any model with domain filters
odoo_search_count Count records matching a filter without fetching data
odoo_export Bulk export up to 2,000 records per call with pagination
odoo_create Create new records in any Odoo model
odoo_update Update existing records by ID
odoo_delete Delete records from any model
odoo_execute Execute model methods — confirm orders, post invoices, trigger workflows
odoo_list_models Discover available models filtered by keyword
odoo_get_fields Get field definitions and metadata for any model
odoo_doctor Full instance health diagnostic in a single call
odoo_connection_info Show current connection details and version

Setup

1

Clone

git clone https://github.com/oconsole/odoo-mcp-server.git
2

Configure your MCP client

Add the server to your client's MCP config (e.g. .mcp.json for Claude Code):

{
  "mcpServers": {
    "odoo": {
      "type": "stdio",
      "command": "uv",
      "args": ["run", "--python", "3.11", "--script",
               "/path/to/odoo_mcp_server.py"],
      "env": {
        "ODOO_URL": "https://your-instance.odoo.com",
        "ODOO_DB": "your-database",
        "ODOO_USER": "admin",
        "ODOO_PASSWORD": "your-password"
      }
    }
  }
}
3

Start using it

Open your MCP client and ask about your Odoo data. All 11 tools are available immediately.

Read the full docs

Privacy first

Odoo MCP Server runs entirely in your local environment. Your Odoo credentials, data, and context never leave your machine. Set ODOO_READONLY=true for safe production access.