Back to Browse

Odoo Mcp Connector MCP Server

Developer ToolsModerate5.2MCP RegistryLocal
Free

Server data from the Official MCP Registry

Query, report on, and optionally modify any Odoo ERP from Claude. Read-only by default.

About

Query, report on, and optionally modify any Odoo ERP from Claude. Read-only by default.

Security Report

5.2
Moderate5.2Moderate Risk

This is a well-designed Odoo MCP server with strong security fundamentals. Authentication is properly implemented via environment variables, credential handling is secure (never logged or exposed in errors), and the codebase is clean with good input validation via Zod. Write operations are safely gated behind an opt-in flag. Permissions align well with the server's purpose. Minor observations: the write escape-hatch tool could theoretically be misused, and broad exception handling is present, but these are acceptable trade-offs for the server's functionality. Supply chain analysis found 4 known vulnerabilities in dependencies (2 critical, 2 high severity). Package verification found 1 issue.

7 files analyzed ยท 8 issues found

Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.

Permissions Required

This plugin requests these system permissions. Most are normal for its category.

env_vars

Check that this permission is expected for this type of plugin.

HTTP Network Access

Connects to external APIs or services over the internet.

What You'll Need

Set these up before or after installing:

Odoo base URL, e.g. https://your-company.odoo.comOptional

Environment variable: ODOO_URL

Odoo database nameOptional

Environment variable: ODOO_DB

Odoo login (email)Optional

Environment variable: ODOO_USERNAME

Odoo API key (or password)Required

Environment variable: ODOO_API_KEY

Set to 'true' to allow create/update/delete. Default false (read-only).Optional

Environment variable: ODOO_ENABLE_WRITES

Per-request timeout in milliseconds (default 30000).Optional

Environment variable: ODOO_TIMEOUT_MS

How to Install

Add this to your MCP configuration file:

{
  "mcpServers": {
    "io-github-management-cmyk-odoo-mcp-connector": {
      "env": {
        "ODOO_DB": "your-odoo-db-here",
        "ODOO_URL": "your-odoo-url-here",
        "ODOO_API_KEY": "your-odoo-api-key-here",
        "ODOO_USERNAME": "your-odoo-username-here",
        "ODOO_TIMEOUT_MS": "your-odoo-timeout-ms-here",
        "ODOO_ENABLE_WRITES": "your-odoo-enable-writes-here"
      },
      "args": [
        "-y",
        "odoo-mcp-connector"
      ],
      "command": "npx"
    }
  }
}

Documentation

View on GitHub

From the project's GitHub README.

Odoo MCP Server

A Model Context Protocol server for Odoo. Connect Claude (or any MCP client) to your own Odoo ERP and query, report on, and optionally modify your data in natural language.

Works with any Odoo model. Safe by default: read-only unless you explicitly enable writes. Your credentials stay on your machine โ€” nothing is stored or sent anywhere except your own Odoo instance.

Features

  • ๐Ÿ” Generic access to any model โ€” search, read, count, introspect fields, list models
  • ๐Ÿ“Š Ready-made business tools โ€” overdue invoices, sales summary, low-stock products, top customers
  • ๐Ÿ”’ Read-only by default โ€” create/update/delete only when you opt in (ODOO_ENABLE_WRITES=true)
  • ๐Ÿ”‘ Your data, your machine โ€” configured entirely through environment variables

Install

Add this to your MCP client config (e.g. Claude Desktop or Claude Code):

{
  "mcpServers": {
    "odoo": {
      "command": "npx",
      "args": ["-y", "odoo-mcp-connector"],
      "env": {
        "ODOO_URL": "https://your-company.odoo.com",
        "ODOO_DB": "your-database",
        "ODOO_USERNAME": "you@example.com",
        "ODOO_API_KEY": "your-odoo-api-key"
      }
    }
  }
}

Getting an Odoo API key

In Odoo: Settings โ†’ Users โ†’ (your user) โ†’ Account Security โ†’ New API Key. Paste the generated key into ODOO_API_KEY. (A password also works, but an API key is safer and revocable.)

Enabling writes

Read-only is the default. To let the model create, update, or delete records, add:

"ODOO_ENABLE_WRITES": "true"

โš ๏ธ Odoo holds real business data. Enable writes only when you accept that the model can create, modify, or delete records โ€” always within your Odoo user's own permissions.

Tools

Always available (read-only)

ToolPurpose
odoo_search_readSearch + read records from any model
odoo_readRead records by ID
odoo_countCount records matching a domain
odoo_fieldsIntrospect a model's fields (name, type, label)
odoo_list_modelsList available models
odoo_overdue_invoicesUnpaid customer invoices past their due date
odoo_sales_summaryRevenue + order count over a date range
odoo_low_stockProducts at/below a quantity threshold
odoo_top_customersTop customers by invoiced revenue

Only when ODOO_ENABLE_WRITES=true

ToolPurpose
odoo_createCreate a record
odoo_writeUpdate records by ID
odoo_unlinkDelete records by ID (irreversible)
odoo_callCall an arbitrary model method

Configuration reference

VariableRequiredDefaultDescription
ODOO_URLyesโ€”Your Odoo base URL
ODOO_DByesโ€”Database name
ODOO_USERNAMEyesโ€”Login (email)
ODOO_API_KEYyesโ€”API key (or password)
ODOO_ENABLE_WRITESnofalseSet "true" to allow writes
ODOO_TIMEOUT_MSno30000Per-request timeout (ms)

Development

npm install
npm test       # vitest โ€” fully mocked, no live Odoo needed
npm run build

License

MIT ยฉ Falak Sarhan Saade

Reviews

No reviews yet

Be the first to review this server!