Every Odoo partner faces the same Monday morning challenge. Across 50 client databases, which customers are behind on bank rec, which projects are running over budget, and which clients have a renewal conversation due this month?
In theory, that is one Postgres query. By contrast, each client lives in its own Odoo database, with its own URL, its own modules, and its own API credentials. Pulling cross-client intelligence means logging into 50 instances, exporting from each, and merging in a spreadsheet that takes a senior consultant half a day to assemble.
Odoo serves more than 12 million users worldwide, with 7 million daily active users, growing 40% annually, on its way to €1B in billings by 2027. The product is exceptional, and since version 19.4 it ships its own MCP server, so connecting one database to Claude is now a solved problem. However, the architectural choice that makes Odoo great for any single business – a self-contained, multi-tenant ERP with full source code visibility – is the same choice that makes practice-wide AI hard.
Therefore, the shortest path from raw Odoo data to a Claude-grade answer across an entire partner book is a warehouse-first MCP layer. In short, that decision is what separates an odoo mcp server that demos well on one database from one that runs a 50-client Odoo partner practice through 2026.
Why this matters in 2026
Firstly, Odoo has answered the connection question itself. Odoo 18 added predictive lead scoring and OCR-driven bank rec, Odoo 19 added a native AI chatbot, and Odoo 19.4 in July 2026 turned Odoo into an MCP server in its own right – append /mcp to the database URL and Claude, ChatGPT or Cursor connects directly. Consequently, “how do I connect Claude to Odoo” is no longer the interesting question. The question that now decides a partner’s AI strategy is “how do I answer something that spans 50 client databases and the other systems those clients run”. Odoo is not alone in this either, as the wider MCP server landscape has filled out fast across the major business platforms.
Secondly, EU AI Act enforcement is open at €35M or 7% of global turnover for ungoverned AI on customer data, which the EU AI Act guide for MCP deployments works through in detail. This matters especially for BE/NL/FR partners serving regulated industries.
Finally, the Odoo partner network has scaled fast. Partners who deliver AI on top of Odoo at practice level will win the next three years of consulting revenue. Accordingly, this blog is the playbook for getting there without burning a quarter on integration plumbing.
What Odoo is, and why the open-source architecture changes the AI equation
Odoo at a glance: the Belgian unicorn powering 12 million users
Odoo at a glance
/mcp endpoint on the database.Why open-source is a structural advantage for AI writeback
Indeed, Odoo’s open-source architecture changes the AI calculation in a way no closed ERP can match. Specifically, the ORM is visible end-to-end, the data model is documented, the modules are inspectable, and writeback through XML-RPC, JSON-RPC or the native MCP endpoint respects the same business rules that the UI enforces. That property is what makes MCP writeback safe to attempt on an ERP in the first place.
Consequently, when an AI agent posts a journal entry or updates a sales order, it triggers the same validations, the same workflow hooks, and the same audit trail that a human user would. Closed ERPs like Oracle NetSuite or SAP S/4HANA, by contrast, require complex governor budgets and approval flows to achieve the same safety. As a result, Odoo’s openness makes AI mutation defensible by design – provided the MCP layer logs the prompt-to-API trail.
Why EU partners get an extra structural advantage
For Belgian partners and EU partners specifically, the locality matters too. Odoo is one of the very few ERPs where the headquarters, the development team, and the dominant partner ecosystem all sit inside EU jurisdiction.
Therefore, an EU-hosted MCP layer sitting on top of Odoo keeps the entire stack inside European compliance posture without compromise. In practice, this is the single biggest reason BE/NL/FR partners prefer EU-built tooling over US-default alternatives like Composio and Pipedream, and it is the same reasoning behind the requirements for GDPR-compliant MCP servers.
Why connecting Odoo to Claude is harder than it looks
Six constraints every Odoo AI project hits
Where the per-database model breaks at partner scale
Of course, pulling a single record from one Odoo instance is straightforward. The native MCP server and the community servers both handle that well. Consequently, the hard part is everything a real partner prompt requires once it touches 50 databases at once, or once it crosses Odoo with Stripe payments and a customer’s Salesforce CRM. Furthermore, endpoint-per-database and wrapper-style MCPs alike proxy individual database connections rather than composing analytic queries across an entire client portfolio; consequently, they cannot answer the questions that define a modern Odoo partner’s AI strategy, a shape the MCP playbook for Odoo partners covers in more depth.
The real cost of fragmented Odoo reporting for partners
What slow cross-database Odoo reporting actually costs
Ultimately, the hidden cost is not the slow report itself. Rather, it is the operating model that builds up around it – the weekly portfolio reviews that take a half-day to assemble, the client conversations that miss a signal, the renewal calls that arrive a week late. By contrast, cross-database AI on top of Odoo, hosted in the EU, with auditable writeback, is the investment with the widest reach an Odoo partner can make in 2026.
6 ways to connect Odoo to Claude
1. Odoo’s native MCP server (Odoo 19.4 and later)
Since 19.4, released July 2026, Odoo is itself an MCP server. Append /mcp to the database URL and any MCP client – Claude, ChatGPT, Cursor – connects directly, with no separate process to host. Authentication is an API key generated under My Preferences and the Security tab, scoped to MCP and passed as a bearer token. Every call then executes with that user’s Odoo permissions, so record rules and access rights carry across unchanged.
Out of the box the server exposes five tools: Get Models, Get Fields, Retrieve initial context, Search, and Read group. Administrators can expose further tools through developer mode, including server actions that write back.
This is the right starting point for a single database, and it comes with the subscription. Two structural limits remain, and both are consequences of the design rather than gaps to be patched. The endpoint is bound to one database URL, so a partner with 50 clients ends up with 50 endpoints and 50 API keys and no cross-client view. Furthermore, the tool surface is ORM search and read_group rather than SQL, so cross-table joins, window functions and cohort analysis are not expressible – and nothing outside Odoo is in scope at all. Best for: A single Odoo database where the questions stay inside Odoo.
2. Direct XML-RPC / JSON-RPC with custom Python
Any developer can authenticate against an Odoo instance via XML-RPC or JSON-RPC and pull records. Furthermore, the OdooRPC and odoorpc-python libraries make basic CRUD straightforward.
However, building a maintainable layer is unforgiving: 50 sets of credentials for a 50-client partner, ORM-driven join complexity, DB-bound query risk, and the cross-source aggregation that no Odoo API provides natively. Consequently, weeks of engineering precede the first useful AI prompt, and the same trade-offs show up in any hand-built Python ETL pipeline. Best for: Single-database power users with internal data engineering, or Odoo 18 and earlier where the native endpoint is unavailable.
3. Community Odoo MCP servers on GitHub
In addition, multiple community MCP servers wrap the Odoo API as MCP tools. The most-starred is ivnvxd/mcp-server-odoo, which exposes resources and tools for record retrieval and manipulation. Alternatives include tuanle96/mcp-odoo, pantalytics/odoo-mcp-pro, vzeman/odoo-mcp-server, and industream/mcp-odoo, alongside a growing set of packaged MCP modules on the Odoo Apps Store. The roundup of the best MCP servers covers how these compare more broadly.
These repos are free, self-hostable, and useful as prototypes. However, 19.4 has narrowed their purpose considerably: on a current Odoo the native endpoint covers the same ground with nothing to host and nothing to maintain. Where they still earn their place is Odoo 18 and earlier, which will not receive the native server, and cases needing a tool surface the default five do not reach. Best for: Older Odoo versions, or a custom tool surface on one client database.
4. Composio and viaSocket unified-action MCPs
Composio’s Odoo integration and viaSocket’s equivalent expose Odoo operations as MCP tools across a broader unified-action catalog. Likewise, similar unified-API wrappers cover the same surface.
Certainly, these wrappers are useful starting points. However, neither stores data in a warehouse, neither supports cross-source SQL with non-Odoo systems, and both are US-hosted by default – a structural compliance gap for EU partners serving GDPR-bound clients. A fuller breakdown sits in the Composio, Pipedream and Peliqan comparison. Best for: Prototyping cross-app workflows where Odoo is one of many SaaS actions, not the analytical core.
5. Action-based MCP wrappers (Zapier MCP, Pipedream MCP)
Zapier MCP and Pipedream MCP expose Odoo actions to MCP clients. Specifically, they shine for event-driven workflows like “when a sale order is confirmed in Odoo, post to Slack and create a Stripe customer”.
Nevertheless, neither is an analytical platform – no warehouse beneath, no cross-source SQL, no cross-database fan-out. Zapier MCP in particular is task-quota-capped, which limits how aggressively an AI workload can run across a 50-client partner book. Task quotas are one of the cost variables in the MCP server pricing breakdown. Best for: Event automations and lightweight prototypes, not cross-database analytics.
6. Warehouse-first MCP platform (Peliqan)
Peliqan syncs every Odoo database in a partner’s book – across Sales Orders, Invoices, Customers, Vendors, Products, Projects, Tasks, Timesheets, Journal Entries, Bank Statements, and any custom module entity – into a managed EU-hosted Postgres + Trino warehouse.
The platform queues all calls inside per-database safe-throughput budgets and exposes the cleaned tables to Claude, ChatGPT, Cursor, or any MCP client through the Peliqan MCP server. Claude writes real Postgres SQL with full JOINs and window functions across the entire client portfolio, which is the capability the native endpoint’s search and read_group tools cannot offer.
Moreover, writeback flows back through reverse ETL with a full audit log. Cross-source SQL joins Odoo with Stripe, Salesforce, Exact Online, Yuki, HubSpot, and 300+ connectors. EU-hosted on AWS Frankfurt, SOC 2 Type II, ISO 27001, GDPR, HIPAA and CCPA. Best for: Belgian, Dutch, French, and EU Odoo partners managing multiple client databases – the practice tier this blog is written for. See the Odoo connector.
Comparison: 6 ways to connect Odoo to AI
| Method | Writeback + audit | Cross-source | Warehouse | Query language | EU hosting | Multi-database | Rate-limit / DB-lock handling |
|---|---|---|---|---|---|---|---|
| Odoo native MCP (19.4+) | User-permission scoped | No | No | ORM search / read_group | Odoo hosting | One endpoint per database | Live DB |
| ivnvxd / community GitHub MCPs | Read-mostly | No | No | ORM calls | Self-host | Single-database | DIY |
| Composio / viaSocket | Partial | Per-action | No | Action catalog | US-default | Single-database | Generic |
| Zapier / Pipedream MCP | Task-quota-capped | Event-only | No | Action catalog | US-default | Per-flow setup | Per-flow |
| Direct XML-RPC + Python | Custom-built | Hand-rolled | Hand-rolled | ORM calls | Depends on host | Hand-rolled fan-out | Hand-rolled |
| Peliqan MCP | Full audit log | SQL across 300+ apps | Built-in Postgres + Trino | Full Postgres SQL | EU, SOC 2 Type II, ISO 27001 | All databases unified | Cached, no live-DB lock |
The Odoo entities that matter most for partner AI
| Odoo entity | What it powers | Partner AI use case |
|---|---|---|
| res.partner (Customers / Vendors) | Master data, contacts | Customer 360, vendor concentration analysis |
| sale.order + sale.order.line | Sales orders + line items | Pipeline review, quote velocity |
| account.move (Invoices / Bills) | Sales + purchase invoices | Debtor briefings, AP triage, DSO |
| account.bank.statement.line | Bank rec lines | Reconciliation assistant, anomaly detection |
| project.project + project.task | Project ledger + tasks | Project margin, overrun detection |
| account.analytic.line (Timesheets) | Billable time tracking | Realization rate, capacity planning |
| crm.lead | CRM pipeline, stages | Lead scoring, stalled-deal triage |
| stock.move + stock.quant | Inventory movements + stock levels | Stock turn, dead-stock detection |
Decision framework: which Odoo architecture fits your shape
Match the architecture to the Odoo footprint
The Odoo partner playbook: 5 cross-database workflows that change the cadence
The temptation is to switch on the native MCP endpoint per client and call it done. However, the actual value comes from compressing the workflows that recur across an entire client portfolio, and those are precisely the ones a per-database endpoint cannot reach. Notably, five workflows repeat across the Odoo partners we have seen running this architecture.
1. Multi-database consolidation across the partner book
“Show me the top 20 customers across all 12 of our client databases by trailing 90-day revenue, with their bank rec status and any open Sev-2 helpdesk tickets.” That is one Postgres SQL query against a unified warehouse, with a UNION across all client tenants and per-tenant isolation preserved. By contrast, the same prompt against raw Odoo is 12 separate MCP endpoints and a manual spreadsheet merge. Cross-source joins in Peliqan handle the cross-tenant aggregation cleanly.
2. Odoo + Salesforce cross-source revenue picture
“For our enterprise clients running Odoo and Salesforce, show me pipeline coverage in Salesforce versus actual invoicing in Odoo by customer – and flag any account where pipeline does not match invoice trajectory.” Specifically, this is the cross-source question no per-database MCP can answer, native endpoint included. By contrast, the warehouse holds both systems side-by-side; Claude returns the consolidated view in seconds. Building AI agents in Peliqan covers the implementation pattern.
3. Odoo + Stripe revenue reconciliation
“For our SaaS clients running Odoo + Stripe, reconcile Stripe charges against Odoo invoices for the last quarter, and flag any Stripe payment without a matching Odoo invoice or any Odoo invoice without a Stripe payment.” This is the revenue reconciliation workflow that finance teams do manually today. With a warehouse-backed MCP, on the other hand, it becomes a recurring prompt that refreshes daily. The Stripe + Claude playbook covers the payments-side pattern.
4. Odoo CRM to Exact Online ledger sync via MCP writeback
“When a Won opportunity in Odoo CRM crosses €50k, create the matching customer record in Exact Online with full account details and Peppol participant ID.” This is the writeback workflow that closes the loop between CRM and finance for clients running Exact Online for accounting alongside Odoo for operations. Reverse ETL in Peliqan handles the orchestration and the audit log – every mutation records the originating prompt, the user, and the destination API response. (See also the destination-side pattern covered in the decision framework above.)
5. The Odoo Partner cockpit across 50 client databases
“Across all 50 of our client databases, show me which clients have stalled bank reconciliations, unsent invoices over €10k, project overruns above 20% of budget, or upcoming subscription renewals – ranked by client revenue to our practice.” Specifically, this is the partner cockpit that does not exist in Odoo today. Here the warehouse aggregates every client’s operational signals into one view; Claude returns the prioritised list for next week’s account-manager calls. Multi-customer management in Peliqan handles the per-client isolation and the cross-client aggregation in a single MCP context.
How Peliqan handles Odoo
What you get with the Odoo MCP server on Peliqan
Real-world example: OdooExperts
An Odoo partner consolidating reporting across many separate client environments, which is the multi-database problem this post describes rather than a single-tenant one. Read the full case study.
Why Peliqan is built specifically for Odoo partners
Odoo partners are a distinct ICP, and Peliqan ships a dedicated offering for them (referenced in the decision framework above). Cross-client portfolio AI, white-label dashboards, multi-database fan-out, EU compliance posture, and writeback-safe operations across the entire client book – all packaged for the partner-channel motion.
Notably, the native MCP server does not compete with this; it complements it. Every client database can expose its own endpoint for in-Odoo work while the partner runs portfolio questions through one warehouse-backed context. For a partner running 20+ Odoo databases, that combination is the difference between an AI initiative that pays for itself in the first quarter and one that absorbs months of integration time.
Where Odoo + Claude fits in the broader EU stack
Briefly, the cluster topology matters because most Belgian and Dutch SMBs do not run Odoo in isolation. Specifically, a typical mid-market client has Odoo for ERP, plus a separate accounting or compliance tool on top, plus payment processing on the side. Naturally, the cross-source story is what unlocks meaningful AI value across all of them, and it is the one thing no ERP-native MCP server can provide.
For Belgian partners specifically, the cluster story compounds. Many partners run Odoo for operational ERP, alongside the Silverfin MCP pattern for compliance workpapers on their accountancy-firm clients. All such systems feed the same warehouse and answer the same Claude prompts.
For B2B invoicing under the 2026 Belgian Peppol mandate, the Billit Peppol playbook covers the e-invoicing side that pairs with Odoo’s account.move entity. Failed Peppol acknowledgements become an audit signal the AI agent surfaces before they become a VAT penalty.
For larger NL/BE/DE enterprises running AFAS for HR alongside Odoo, the AFAS + Claude playbook covers the HR-side join – useful when sick leave or contract data needs to land in the same prompt as the Odoo operational view.
Meanwhile, for multi-division Dutch clients consolidating onto Exact Online for accounting while running Odoo on the operational side, the Exact Online CFO playbook covers the finance-side pattern that joins natively to Odoo’s account.move entity in the same MCP context.
Implementation primitives that power the partner workflows
Materialized tables show how to stage Odoo data once and serve it to Claude in milliseconds – critical for the conversational latency a partner expects in a client meeting.
Furthermore, data quality monitoring handles the alerting layer for the patterns a partner wants surfaced automatically across the client book – bank rec backlog spikes, debtor concentration changes, project overrun signals.
Additionally, alerting and messaging pushes those signals to Slack or email before they become client phone calls. Ultimately, combined with reverse ETL writeback, the partner closes the loop without leaving Claude.
For engineering teams that want to build their own
For engineering teams that prefer to roll their own MCP layer on top of Odoo, the build MCP server guide covers the protocol details. However, for most Odoo partners, the Peliqan-managed Odoo connector is the faster path – the per-database credentials, the rate-limit handling, the audit trail, and the cross-source joins all ship pre-wired.
Additionally, the Odoo AI page shows the live agent patterns for partner cockpit, multi-database consolidation, and Odoo + Stripe reconciliation.
For the protocol-level details, the general Claude MCP overview walks through how MCP works end-to-end.
Furthermore, the main MCP hub covers the cross-source architecture and the ROI math for a typical Odoo partner – useful when defending the architectural choice to a managing partner or a CFO.
What Odoo partners and enterprise users should do this quarter
Overall, three steps turn an Odoo + Claude conversation from a slide into an operating model.
Firstly, switch on the native MCP endpoint for one client database and see how far it gets you. It is free, it takes minutes, and it will answer single-database questions well. The point of the exercise is to find the first question it cannot answer, which is usually the first question that spans two clients or two systems.
Secondly, pick one cross-client question that has been stuck in spreadsheets for a quarter – portfolio-wide debtor view, bank rec backlog, project overrun list – and prove it can be answered from a single Claude prompt against a warehouse-backed Odoo.
Thirdly, audit your current AI tooling against EU GDPR and EU AI Act requirements. Specifically, any US-hosted MCP serving an EU client is a future compliance gap; any endpoint without a prompt-level audit log is a future review risk.
Overall, Odoo has closed the connection question itself, and that is good news for the ecosystem. What 19.4 does not answer, and by design cannot, is the practice-level question: one prompt across 50 client databases, joined to the other systems those clients run.
Putting a warehouse and a cross-database MCP server between the per-database Odoo footprint and the prompt surface is not optional anymore – it is the difference between a partner that scales gracefully past 50 clients and one that hits a ceiling at 20. Ultimately, the odoo claude stack is the next operating-model change, and it is one short architectural decision away.



