Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

Odoo MCP

by nicolasramosversion 1.0.1i★ –iRuns on your computer
Registry nameio.github.nicolasramos/odoo-mcp

Install

Overview

Description from the maker (original English)

MCP server for Odoo 18 with 38 business tools

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Runs on your computer
  • Transport: stdio
  • Category: Other
  • You need to fill in: ODOO_URL, ODOO_DB, ODOO_USERNAME, ODOO_PASSWORD

Install

Pick the AI app you use, then copy the settings.

Before you install

  • Basic checks: 1 of 1 passed
  • Runs on your computer with your user’s permissions (files, network, apps).
  • You fill in yourself: ODOO_URL, ODOO_DB, ODOO_USERNAME, ODOO_PASSWORD, ODOO_MCP_DEFAULT_LIMIT, ODOO_MCP_MAX_LIMIT

Values marked secret are keys to your account. Never share them or paste them into a chat.

You need

  • PyPIPython’s uv installed (for the uvx command)

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json

{
  "mcpServers": {
    "odoo": {
      "command": "uvx",
      "args": [
        "odoo-18-mcp-server"
      ],
      "env": {
        "ODOO_URL": "your-value",
        "ODOO_DB": "your-value",
        "ODOO_USERNAME": "your-value",
        "ODOO_PASSWORD": "your-value",
        "ODOO_MCP_DEFAULT_LIMIT": "your-value",
        "ODOO_MCP_MAX_LIMIT": "your-value"
      }
    }
  }
}

Run this in your terminal

claude mcp add odoo --env ODOO_URL=your-value --env ODOO_DB=your-value --env ODOO_USERNAME=your-value --env ODOO_PASSWORD=your-value --env ODOO_MCP_DEFAULT_LIMIT=your-value --env ODOO_MCP_MAX_LIMIT=your-value -- uvx odoo-18-mcp-server

Fill in the empty values before running it.

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "odoo": {
      "command": "uvx",
      "args": [
        "odoo-18-mcp-server"
      ],
      "env": {
        "ODOO_URL": "your-value",
        "ODOO_DB": "your-value",
        "ODOO_USERNAME": "your-value",
        "ODOO_PASSWORD": "your-value",
        "ODOO_MCP_DEFAULT_LIMIT": "your-value",
        "ODOO_MCP_MAX_LIMIT": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "odoo": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "odoo-18-mcp-server"
      ],
      "env": {
        "ODOO_URL": "your-value",
        "ODOO_DB": "your-value",
        "ODOO_USERNAME": "your-value",
        "ODOO_PASSWORD": "your-value",
        "ODOO_MCP_DEFAULT_LIMIT": "your-value",
        "ODOO_MCP_MAX_LIMIT": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.

Your choice stays on this device in a cookie; no account needed.

Values you fill in

  • ODOO_URL required env
    URL of your Odoo instance (e.g., https://yourcompany.odoo.com)
  • ODOO_DB required env
    Name of your Odoo database
  • ODOO_USERNAME required env
    Odoo username for authentication
  • ODOO_PASSWORD secret required env
    Odoo password for authentication
  • ODOO_MCP_DEFAULT_LIMIT env
    Default limit for search results (default: 50)
  • ODOO_MCP_MAX_LIMIT env
    Maximum limit for search results (default: 80)

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

Runs on your computer; the tool list appears in your AI app after you install it.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 8, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account nicolasramos, which owns the repo

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • – Not applicable

    Endpoint responds

    This one runs on your computer; there is no internet endpoint

  • – Not applicable

    Sign-in with OAuth

    Runs on your computer and uses local settings instead

  • … Not checked yet

    No hidden instructions in tool descriptions

    Runs on your computer; we can only read tool lists from internet endpoints

Compared with others in Otheri

  • More stars than 0% of the other 18474 servers in this category
  • Published to the registry more recently than 5% of the other 18474 servers in this category
  • Basic checks equal to or better than 100% of the other 18474 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is Odoo MCP safe?

It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

You need to fill in: ODOO_URL, ODOO_DB, ODOO_USERNAME, ODOO_PASSWORD

Does it run on my computer or in the cloud?

It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).

Is it still maintained?

The GitHub repo last changed –, and the latest version (1.0.1) reached the registry 7 months ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Python (uv) on your computer.

What can I use instead?

In the same category: Spec Driven Development, Remote Desktop Commander, SwarmMemo

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Spec Driven Development

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

by formulahendryEarly↓ 66/wk★ 440Updated 14 months ago

Runs on your computer

Remote Desktop Commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

by desktop-commanderGrowing★ 211Updated 3 days ago

Runs in the cloud✓ desktopcommander.app

SwarmMemo

Talk with agent swarms: rooms, private messages and paid tasks for AI agents

by Hugo0Very newUpdated today

Runs in the cloud✓ swarmmemo.com

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

OdooClaw MCP

Standalone MCP (Model Context Protocol) server for Odoo 18 over stdio.

MCP name: io.github.nicolasramos/odooclaw-mcp PyPI package: odooclaw-mcp Official CLI: odooclaw-mcp

Backward-compatible aliases are also installed:

  • odoo-mcp
  • odoo-mcp-server
  • odoo-18-mcp-server

Quick Start

1) Install
pip install odooclaw-mcp

From source:

git clone https://github.com/nicolasramos/odooclaw-mcp.git

cd odooclaw-mcp pip install -e .

2) Configure environment
cp .env.example .env

Required:

ODOO_URL=https://yourcompany.odoo.com

ODOO_DB=your_database ODOO_USERNAME=your_username ODOO_PASSWORD=your_password

Optional:

ODOO_MCP_DEFAULT_LIMIT=50

ODOO_MCP_MAX_LIMIT=80 LOG_LEVEL=INFO

3) Validate and run
odooclaw-mcp --check-config

odooclaw-mcp

Alternative:

python -m odoo_mcp

MCP Client Configuration (stdio)

{

"mcpServers": { "odoo": { "command": "odooclaw-mcp", "env": { "ODOO_URL": "https://yourcompany.odoo.com", "ODOO_DB": "your_database", "ODOO_USERNAME": "your_username", "ODOO_PASSWORD": "your_password", "ODOO_MCP_DEFAULT_LIMIT": "50", "ODOO_MCP_MAX_LIMIT": "80" } } } }

Tool call payload contract

When calling tools through the MCP protocol, arguments must be wrapped in a top-level payload object.

Valid shape:

{

"name": "odoo_search", "arguments": { "payload": { "model": "res.partner", "domain": [["customer_rank", ">", 0]], "limit": 3 } } }

If payload is omitted, validation fails with an error equivalent to Field required: payload.

Scope

  • 129 MCP tools for Odoo operations (CRUD + business actions + migration workflows)
  • Pydantic validation for all tool payloads
  • Odoo 18 compatibility helpers (customer_rank / supplier_rank / payment_state)
  • Security guards (model allowlist, denylisted fields, action guard, unlink blocked)
  • Structured logging and audit actions

Available Tools

The server currently exposes 129 MCP tools.

Note: the grouped tables below focus on common/high-value tools. Use MCP

list_tools to inspect the full live tool catalog for your installed version.

Core record operations
ToolPurpose
odoo_searchSearch records in an allowed model using Odoo domain syntax.
odoo_readRead selected fields from specific record IDs.
odoo_search_readCombined search + read for efficient retrieval.
odoo_createCreate a new record in an allowed model.
odoo_writeUpdate existing records in an allowed model.
odoo_invoke_actionInvoke an Odoo model method such as action_* or button_*.
odoo_get_record_summaryReturn a compact, human-friendly summary for a record.
Partners, sales, and CRM
ToolPurpose
odoo_find_partnerFind a customer or vendor by name, VAT, or email.
odoo_get_partner_summaryGet a partner overview with useful business context.
odoo_find_sale_orderSearch sale orders by name, partner, or state.
odoo_get_sale_order_summaryRetrieve a sale order summary including lines.
odoo_create_sale_orderCreate a quotation / sale order with product lines.
odoo_confirm_sale_orderConfirm a quotation into a sale order.
odoo_create_leadCreate a CRM lead / opportunity.
Accounting, purchasing, and payments
ToolPurpose
odoo_create_purchase_orderCreate a purchase order from partner and line data.
odoo_create_vendor_invoiceCreate a vendor bill.
odoo_find_pending_invoicesFind posted invoices or bills pending payment using Odoo 18 semantics.
odoo_get_invoice_summaryGet a detailed summary of an invoice or bill.
odoo_register_paymentRegister a payment for a specific invoice.
Projects, activities, and chatter
ToolPurpose
odoo_find_taskSearch project tasks by name, project, or stage.
odoo_create_taskCreate a new project task.
odoo_update_taskUpdate task stage, assignee, or deadline.
odoo_create_activitySchedule an activity on a record.
odoo_list_pending_activitiesList pending activities, optionally filtered by model or assignee.
odoo_mark_activity_doneMark an activity as completed.
odoo_post_chatter_messagePost a chatter message on a record.
odoo_create_activity_summaryCreate a summary-style activity for follow-up.
odoo_close_activity_with_reasonClose an activity and record the reason.
odoo_log_timesheetLog a timesheet entry for a project or task.
Support, contracts, stock, and instance capabilities
ToolPurpose
odoo_get_capabilitiesReport which modules and capabilities are available in the connected instance.
odoo_create_helpdesk_ticketCreate a helpdesk ticket directly.
odoo_create_helpdesk_ticket_from_partnerCreate a helpdesk ticket linked to a partner.
odoo_draft_ticket_emailPrepare a draft support email from a ticket context.
odoo_create_contract_lineAdd a line to a contract.
odoo_replace_contract_lineReplace an existing contract line with a new one.
odoo_close_contract_lineClose a contract line with a reason and close date.
odoo_get_product_stockInspect stock quantities for a product.
odoo_create_calendar_eventCreate a meeting or appointment with attendees.
Introspection
ToolPurpose
odoo_get_model_schemaInspect the fields and schema of a model such as res.partner or account.move.

Available Resources

The server also exposes 5 MCP resources for discovery and context:

ResourcePurpose
odoo://context/odoo18-fields-referenceOdoo 18 field reference for common model/domain pitfalls such as customer_rank, supplier_rank, and payment_state.
odoo://modelsJSON list of models currently allowed by the security policy.
odoo://model/{model_name}/schemaTechnical schema for a specific Odoo model.
odoo://record/{model}/{id}/summaryJSON summary of a specific record.
odoo://record/{model}/{id}/chatter_summarySummary of the chatter history for a specific record.

Guardrails and Runtime Behavior

  • Uses standard Odoo JSON-RPC endpoints; it does not depend on OdooClaw delegation.
  • Tool payloads are validated with Pydantic before execution.
  • Model access is restricted by an allowlist defined in the server configuration.
  • Sensitive write fields are denylisted and unlink is blocked.
  • Search-style tools use default and maximum limits (ODOO_MCP_DEFAULT_LIMIT, ODOO_MCP_MAX_LIMIT).
  • sender_id is treated as audit/context metadata; execution runs as the authenticated Odoo session user.
  • Some tools require the corresponding Odoo apps/modules to be installed (CRM, Helpdesk, Projects, Contracts, Inventory, etc.).

Security Model

The server uses standard Odoo JSON-RPC endpoints and executes operations as the configured Odoo session user.

For production, use a dedicated least-privilege Odoo account.

Production Notes

  • This is a stdio MCP server, not an HTTP API service.
  • Docker/Compose support is mainly for packaging or controlled runtime scenarios.
  • In normal usage, your MCP client launches the server process directly.
  • Keep Odoo credentials in environment variables or a secrets manager.

Known Limitations

  • One Odoo credential context per MCP process.
  • ODOO_DB is currently required by the authentication flow.
  • Some tools require specific Odoo apps/modules (CRM, Helpdesk, Project, etc.).
  • Designed for Odoo 18 field semantics.

Development

pip install -e .[dev]

ruff check src tests black --check src tests mypy src --ignore-missing-imports pytest tests -v python -m build twine check dist/*

Docs

  • Architecture
  • Deployment
  • QA Runbook

License

MIT - see LICENSE.

Ask PopNx