Get the FREE Ultimate OpenClaw Setup Guide →

odoo

A robust and efficient implementation of the Model Context Protocol (MCP) built to connect seamlessly with Odoo ERP. This server empowers developers to enable AI-driven automation, intelligent integrations, and enhanced workflow management within Odoo environments — providing a solid foundation for extending and automating business processes.

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio sameeroz-odoo-mcp-server uv run src/mcpserver/__main__.py \
  --env ODOO_URL="https://your-odoo-instance.com" \
  --env ODOO_DATABASE="your-database-name-here" \
  --env ODOO_PASSWORD="your-password-here" \
  --env ODOO_USERNAME="your-username-here"

How to use

The Odoo MCP Server exposes MCP tools that interact with an Odoo ERP instance. It provides product operations (listing products and details), order management (viewing and creating orders with optional invoice and payment steps), and multi-language support for product names. To use it, configure the MCP client to call the registered tools (e.g., get_products, get_product_details, get_order_details, create_order) and supply the required parameters. The server authenticates against your Odoo instance via the provided environment credentials and performs the requested operations through the Odoo XML-RPC interface or equivalent integration layer implemented in the tools.

Typical workflows include querying the product catalog in a specific language, retrieving detailed product information, creating sales orders, and triggering automatic invoice generation and payment processing. Tools are designed to validate inputs and return structured results, including product attributes, order details, and invoice status. In client code, you call tools through the MCP client (for example, await mcp_client.call_tool("get_products", { ... })) and handle responses or errors accordingly.

How to install

Prerequisites

  • Python 3.12 or higher
  • Access to an Odoo 17+ instance
  • Network connectivity to the Odoo instance from the machine running the MCP server
  1. Set up Python environment
  • Ensure Python 3.12+ is installed and available on your PATH.
  1. Install UV on your local machine
  1. Clone the repository
git clone https://github.com/sameeroz/odoo-mcp-server.git
cd odoo-mcp-server
  1. Install dependencies (via UV)
uv sync
  1. Configure MCP settings Add the following configuration to your MCP settings source (example shown for UV). Replace placeholders with your Odoo credentials and URL:
{
  "mcpServers": {
    "odoo": {
      "command": "uv",
      "args": ["run", "src/mcpserver/__main__.py"],
      "env": {
        "ODOO_URL": "https://your-odoo-instance.com",
        "ODOO_USERNAME": "your-username-here",
        "ODOO_PASSWORD": "your-password-here",
        "ODOO_DATABASE": "your-database-name-here"
      }
    }
  }
}
  1. Run the MCP server
  • Ensure the environment variables are correctly set in your MCP configuration as shown above, then start the MCP server via your chosen MCP client integration.

Additional notes

Environment variables for Odoo access should be kept secret and never hard-coded in source files. Use the MCP configuration or secret management tools to inject ODOO_URL, ODOO_USERNAME, ODOO_PASSWORD, and ODOO_DATABASE at runtime. If you encounter authentication errors, verify that the Odoo user has the required permissions and that the instance URL is reachable from the host running the MCP server. The MCP server supports language variants for product names (en, ar, fr, es); ensure your requests specify the desired language code when calling product-related tools. For debugging, enable verbose logs in your MCP client and review any XML-RPC timeout or network error messages from the Odoo integration layer.

Related MCP Servers

Sponsor this space

Reach thousands of developers