Odoo Mcp Connector

io.github.management-cmykPublished by GitHub account management-cmykv0.1.0Updated Oct 24, 2026

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

Overview

AI-generated overview

Connects Claude to your own Odoo ERP so it can search, read, report on, and optionally create, update, or delete business records.

What you can do
A local MCP server that talks to your Odoo instance through its API. It offers generic model access (search and read records, read by ID, count, introspect fields, list models) plus ready-made business tools for overdue invoices, sales summaries, low-stock products, and top customers. When writes are explicitly enabled, it can also create, update, delete records, and call arbitrary model methods.
When to use it
Use it when you want to ask questions about your Odoo data in natural language — invoices, sales, stock, customers — or look up records from any Odoo model. It suits read-only reporting first, with writes available only if you deliberately opt in.
Requirements
Runs locally via npx (Node.js). Needs ODOO_URL, ODOO_DB, ODOO_USERNAME, and ODOO_API_KEY (an Odoo API key or password); optional ODOO_ENABLE_WRITES and ODOO_TIMEOUT_MS. Network access to your Odoo instance is required, and it is desktop-only.
Before you install
ODOO_API_KEY is a credential that grants access to your ERP; keep it out of shared configs and revoke it if exposed. Writes are off by default — setting ODOO_ENABLE_WRITES=true lets the model create, update, and delete real business records, and odoo_unlink deletions are irreversible. Actions run within your Odoo user's permissions.

Installation

In SourceWeft

  1. Open Odoo Mcp Connector in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

Odoo MCP Server

[tests]

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 and 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):

json
{  "mcpServers": {    "odoo": {      "command": "npx",      "args": ["-y", "odoo-mcp-connector"],      "env": {        "ODOO_URL": "https://your-company.odoo.com",        "ODOO_DB": "your-database",        "ODOO_USERNAME": "[email protected]",        "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:

json
"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_URLyesYour Odoo base URL
ODOO_DByesDatabase name
ODOO_USERNAMEyesLogin (email)
ODOO_API_KEYyesAPI key (or password)
ODOO_ENABLE_WRITESnofalseSet "true" to allow writes
ODOO_TIMEOUT_MSno30000Per-request timeout (ms)

Development

bash
npm installnpm test       # vitest, fully mocked, no live Odoo needednpm run build

License

MIT, Falak Sarhan Saade

Source: README.md at commit 6e415e3

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.1.0LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts