
How to add MCP Server for Odoo to Claude Desktop
Search, create, update and aggregate Odoo ERP records from AI assistants via XML-RPC. Paste the config into ~/Library/Application Support/Claude/claude_desktop_config.json and restart Claude Desktop.
Last updated June 14, 2026 ยท 324โ ยท stdio ยท apikey
Claude Desktop config for MCP Server for Odoo
uvx mcp-server-odoo{
"mcpServers": {
"mcp-server-for-odoo": {
"command": "uvx",
"args": [
"mcp-server-odoo"
],
"env": {
"ODOO_URL": "https://your-odoo-instance.com",
"ODOO_API_KEY": "your-api-key-here",
"ODOO_DB": "your-database-name"
}
}
}
}Requires `uv` (the Python package runner). Install it from https://docs.astral.sh/uv/ if `uvx` is not found.
Setup steps
- 1Open Claude Desktop โ Settings โ Developer โ Edit Config (this opens ~/Library/Application Support/Claude/claude_desktop_config.json).
- 2Paste the MCP Server for Odoo config below under the top-level "mcpServers" key.
- 3Fill in any placeholder secrets (API keys, paths) in the snippet.
- 4Save the file, then fully quit and reopen Claude Desktop.
- 5Open a chat and confirm MCP Server for Odoo's tools appear under the ๐ tools menu.
Before you start
- Python 3.10 or higher
- UV installed on the local machine (or use the pip/Docker install methods)
- Access to an Odoo instance โ production: Odoo 16.0+ with the mcp_server module installed; YOLO/testing: any Odoo with XML-RPC enabled
- An Odoo API key (recommended) or username/password credentials
- ODOO_DB set if the Odoo server restricts database listing
What MCP Server for Odoo can do in Claude Desktop
search_recordsSearch for records in any Odoo model using a domain filter, with optional field selection, pagination and a smart-default field set.
get_recordRetrieve a specific record by ID, with smart-default fields and metadata or an explicit field list.
list_modelsList all models enabled for MCP access.
list_resource_templatesList the available resource URI templates and their patterns.
create_recordCreate a new record in a given model from a values dict, with field validation and permission checks.
update_recordUpdate an existing record by ID with new field values.
delete_recordDelete a record by ID, respecting model-level permissions.
post_messagePost a message to a record's chatter (mail.thread) as an internal note or a follower-notifying comment; supports HTML body, partner mentions and attachments.
Security
API key auth is recommended; each key is tied to a specific Odoo user and respects Odoo's built-in access rights and record rules. The optional Odoo mcp_server module adds per-model MCP access controls. The streamable-http transport has NO built-in client authentication โ anyone who can reach the port gets full Odoo access with the server's credentials, so keep the default localhost bind or front it with an authenticating reverse proxy. YOLO mode bypasses all MCP security controls and must never be used in production. The call_model_method tool can invoke any public method (including destructive ones like unlink) and is only registered when ODOO_YOLO=true and ODOO_MCP_ENABLE_METHOD_CALLS=true.
MCP Server for Odoo + Claude Desktop FAQ
Where is the Claude Desktop config file?
Claude Desktop reads MCP servers from ~/Library/Application Support/Claude/claude_desktop_config.json. Paste the MCP Server for Odoo config there under the "mcpServers" key and restart the client.
Is MCP Server for Odoo safe to use with Claude Desktop?
API key auth is recommended; each key is tied to a specific Odoo user and respects Odoo's built-in access rights and record rules. The optional Odoo mcp_server module adds per-model MCP access controls. The streamable-http transport has NO built-in client authentication โ anyone who can reach the port gets full Odoo access with the server's credentials, so keep the default localhost bind or front it with an authenticating reverse proxy. YOLO mode bypasses all MCP security controls and must never be used in production. The call_model_method tool can invoke any public method (including destructive ones like unlink) and is only registered when ODOO_YOLO=true and ODOO_MCP_ENABLE_METHOD_CALLS=true.
Do I need to install anything inside Odoo?
For production use, yes โ install the Odoo mcp_server module (Odoo 16.0+), enable the models you want to expose, set per-model permissions, and generate an API key. For quick testing/demos you can use YOLO mode against any XML-RPC-enabled Odoo without the module, but YOLO mode bypasses all MCP security and must never be used in production.
How does authentication work?
Set ODOO_API_KEY (recommended) or both ODOO_USER and ODOO_PASSWORD. An API key is linked to a specific Odoo user and the server respects that user's access rights and record rules. Specify ODOO_DB if your server restricts database listing.
Where does the server run?
On your local computer where the MCP client (e.g. Claude Desktop) is installed โ not on the Odoo server. It connects out to Odoo over XML-RPC. It can be run via uvx, pip/pipx, or Docker.