One install per database
The MCP Server for Odoo is a module, and a module lives inside one Odoo database. So covering ten databases means ten installs, ten endpoints and ten credentials. Teams doing this at any scale script the install into their normal provisioning rather than clicking through it each time.
That is the whole architecture, and it is worth being direct that there is no shared endpoint on the roadmap to wait for. If your evaluation depends on one connection covering a whole estate, this is the point to know it.
Why the boundary is the point
An API key here inherits the permissions of one Odoo user in one database, and can be narrowed or revoked from inside that database by whoever owns it. That single fact is what makes granting an AI agent access to an ERP a decision a finance lead can actually sign off.
A credential that spanned several databases would sit outside that model. A compromise, or simply a prompt scoped more loosely than intended, would reach further than any individual database owner had agreed to — and none of them could revoke it alone. For an estate of client databases in particular, that is the failure mode worth designing against, which is why the separation is not something we intend to remove.
If you genuinely need one view across databases
Then the answer is not MCP. Cross-database reporting is a warehouse problem: land each database into a common store on a schedule and query the store. The BigQuery Connector for Odoo exists for exactly that, and the AI layer then points at the warehouse rather than at ten live ERPs.
These solve different problems and it is worth not conflating them. MCP is for asking a live database a question right now, with permissions intact. A warehouse is for asking aggregate questions across many databases where a scheduled copy is good enough. Most estates that ask for cross-database MCP actually want the second one.
Running this across client databases
If the databases belong to clients rather than to you, the per-database boundary stops being an inconvenience and becomes the thing you sell: each client holds their own key, scoped to their own users, revocable without a call to you. The deployment specifics for agencies and implementation partners are on MCP for Odoo partners.
Multi-database questions
How does a multi-database Odoo MCP setup work?
One server per database. The MCP Server is a module that lives inside a single Odoo database, so covering several databases means one install per database, each exposing its own MCP endpoint with its own scoped API keys, permissions and audit log. There is no shared cross-database endpoint, and that is deliberate: a single credential spanning multiple databases would break the permission boundary that makes AI access safe to grant. Teams managing many databases usually script the install and keep one credential per database.
Can one MCP endpoint query across several Odoo databases?
No. Each install is scoped to the database it is in, and there is no cross-database query path. If you need a single view spanning several databases, that is a data warehouse question rather than an MCP one — the usual answer is to land the data in BigQuery and query it there, which the BigQuery Connector for Odoo does on a schedule.
Why not offer a single endpoint across databases?
Because the credential would have to be trusted across all of them at once. The reason AI access to an ERP is grantable at all is that the key inherits the permissions of one Odoo user in one database, and can be narrowed or revoked there. A cross-database credential would sit outside that model, so a compromise or a badly scoped prompt would reach further than any single database owner had agreed to. The boundary is the security property, not an implementation shortcut.
How do I add several Odoo databases to one AI client?
Add them as separate connectors. Claude, ChatGPT and Cursor all support more than one MCP server at a time, so a consultant working across several client databases adds one connector per database, each with its own name and its own token. The AI client sees them as distinct tools, which also keeps it from silently mixing one client’s data into an answer about another.
Does each database need its own licence?
The MCP Server is a one-time purchase from the Odoo App Store per deployment, with no per-seat or per-call subscription, and free setup support is included. If you are deploying across many databases rather than one, get in touch before purchasing rather than working it out from the listing.
What about a mix of self-hosted and Odoo Online databases?
They need different architectures. Self-hosted, on-premise and Odoo.sh databases can install the module. Odoo Online (*.odoo.com) blocks custom server-side modules entirely, so those databases connect through the Odoo Online MCP Gateway, which runs outside Odoo and reaches it over the standard external API. A mixed estate ends up running both, one per database either way.