Claude Connector for Odoo
Odoo 18 · 19

Ask your ERP a question. Get the answer from your own database.

A module installed inside Odoo that makes your system conversational from claude.ai — on desktop and mobile. No middleman server, and no credentials ever leave your company.

claude.ai → odoo_mcp → cupcream · Odoo 19.0
You
Who were our top five customers this quarter?
Claude
odoo_read_group · sale.order
Result

Top five customers by total confirmed sales this quarter. The first is well clear of the rest:

Al Deera Café — BHD 4,280.500 17 confirmed sales orders · latest two days ago /web#action=55&model=res.partner&id=127&view_type=form
The seam

What you say, and what it runs

Thirteen generic ORM tools rather than one per screen. Any module you install later — custom or from the store — becomes readable immediately, with no update here.

How many invoices are overdue?

odoo_search_count(account.move,
  [["move_type","=","out_invoice"],
   ["invoice_date_due","<","today"],
   ["payment_state","!=","paid"]])

Compare each branch against last quarter, grouped by month.

odoo_read_group(sale.order,
  fields=["amount_total:sum"],
  groupby=["branch_id","date_order:month"])

Import these forty customers from the spreadsheet.

odoo_create_records_bulk(res.partner,
  records=[…40],
  continue_on_error=true)

Confirm sales order 42.

odoo_call_method(sale.order,
  method="action_confirm", ids=[42])

Analysis

Ask for a comparison, get an analysis

odoo_read_group aggregates inside your database rather than in memory, so questions nobody built a report for still get answered.

“Compare the three branches over the last six months” odoo_read_group · sale.order · groupby=[branch_id, date_order:month]
Total confirmed sales by branchBHD thousands
0 7 14 21 28 Mar Apr May Jun Jul Aug Manama · Mar · 12.4 Manama · Apr · 14.1 Manama · May · 15.8 Manama · Jun · 19.2 Manama · Jul · 22.6 Manama · Aug · 24.1 Manama Muharraq · Mar · 9.8 Muharraq · Apr · 10.2 Muharraq · May · 11.6 Muharraq · Jun · 13.4 Muharraq · Jul · 15.9 Muharraq · Aug · 16.2 Muharraq Riffa · Mar · 7.2 Riffa · Apr · 8.9 Riffa · May · 8.1 Riffa · Jun · 10.7 Riffa · Jul · 12.8 Riffa · Aug · 14.6 Riffa
Show the data as a table
Branch MarAprMayJunJulAug
Manama 12.414.115.819.222.624.1
Muharraq 9.810.211.613.415.916.2
Riffa 7.28.98.110.712.814.6
Guards

What stops it wrecking your ledger

Writing is the frightening part. Three independent gates, each switchable from the settings page.

01

Human approval before execution

Turn it on and no request touches your database. What Claude proposed appears in a queue inside Odoo with its full payload; a person reads it and approves — and execution runs as the approver, not as the key.

02

An audit trail on every record

Every create, update and method call writes an internal note on the record itself. Someone reviewing an invoice next month sees that an assistant touched it, when, and as whom — without needing server logs.

03

Draft, always

A record cannot be created straight into a confirmed or posted state. It is created as a draft, you review it, and posting is a separate step. A hallucinated field never reaches the general ledger.

Architecture

Nothing leaves your system

Where it runs
Inside Odoo itself, not on a middleman server. We host nothing and see none of your data.
Permissions
Every call runs as the API key's own user. Record rules and multi-company scoping apply exactly as they do in the browser.
Keys
Odoo personal API keys. Each employee generates their own and revokes it from their own preferences.
Always blocked
ir.config_parameter · res.users.apikeys · ir.cron · ir.actions.server
Dependencies
Nothing. Python's standard library and the ORM only — no third-party packages.
Requirements
Odoo 18 or 19 on odoo.sh or self-hosted, reachable over HTTPS. The customer needs a paid Claude plan.
Pricing

A one-time licence

No monthly subscription. Pay once, and get a full year of updates.

Single database BHD 50one-time · one production database
  • All thirteen tools
  • Approval queue and audit trail
  • A year of updates and email support
  • Staging and development databases free
Order this
Setup and training BHD 150added to any licence
  • Installed on your branch and promoted to production
  • Permissions and the integration user configured
  • A two-hour training session for your team
  • Tools tuned to your custom modules
Add to the order
Order

Order now

We send transfer details within business hours. Once the payment arrives you receive the module, a licence key, and an installation link.

Payment: Local bank transfer or BenefitPay to +973 3310 0555. We send the invoice and account details once the order arrives, and start delivery as soon as the transfer clears. Customers outside Bahrain get a card payment link.