Let Claude, and any other MCP-compatible AI assistant, work with your real Odoo data
If you've ever worked with Claude Code, Claude Desktop, or another AI assistant that supports the Model Context Protocol (MCP), you already know how useful it is when an assistant can reach directly into your actual tools, instead of just chatting in the abstract. Endoo MCP brings that same capability to Odoo: it turns your Odoo database into an MCP server, so any MCP-compatible AI client can securely read from it, and, where you allow it, act on it too.
No separate integration project, no extra API to maintain. If your Odoo already has an AI tool that works with Odoo's own AI agents, it can be made available externally in just a few clicks. And the reverse is true as well: anything you expose this way instantly becomes usable by your own AI agents within Odoo.
What you actually get
Endoo MCP ships with 48 ready-to-use tools by default, covering the parts of Odoo teams most often want an assistant to work with:
- CRM: search leads, view a lead's details, look up pipeline stages, create and update leads, mark them as won or lost
- Helpdesk: create tickets, search your open tickets, update and view them
- Knowledge: search articles, read and edit them, lock/unlock for safe concurrent editing, browse the article structure
- Project: search projects and tasks, view details, create and update tasks, pull project statistics
- Timesheets: log hours, search and summarise timesheets, and export/import them as Excel files
- Sales & Products: look up products, pull sales figures by country
On top of that, a set of database-level tools gives a properly authorised assistant the ability to inspect your data model, run read-only SQL queries, or run short read-only Python snippets, genuinely useful for troubleshooting or ad-hoc reporting, with the necessary safeguards explained below. And if your organisation uses Endoo's Git-based code search service, a dedicated set of tools lets an assistant search your codebase, trace how a method or field is overridden across modules, and answer developer questions directly from the source code.
Finally, your own Odoo AI agents can be exposed as MCP tools themselves, so an external assistant can list which agents exist, look at what each one does, and hand off a question to one of them.
How it fits into a conversation
Once set up, this is invisible to the end user; the AI assistant they're already using simply gains new capabilities.
- You (or your administrator) create an Odoo API key specifically intended for MCP. It won't work for anything else, and other API keys won't work here.
- Your AI client (Claude Code, Claude Desktop, or another MCP-compatible tool) connects to one simple web address and authenticates with that key.
- The assistant asks Odoo which tools are available to that key's owner, and Odoo answers only with what that user is allowed to see.
- When the assistant calls a tool, for example "find all open helpdesk tickets for this customer," "log two hours against this task," or "what does our pipeline look like this quarter," Odoo runs it under that user's identity and returns a clear, structured answer.
Every call can optionally be logged, so you can always check what an AI assistant asked for and what it got back.
Read-only where it truly matters
A tool marked as read-only isn't just documented that way; it's actually enforced at the database level. Odoo opens a savepoint before the tool runs and rolls it back afterwards, undoing any change the tool attempted, whether the call succeeded or not. For the most sensitive read-only tool, running a raw SQL query, Odoo goes a step further and puts the database connection itself into read-only mode, so PostgreSQL flatly refuses any write.
Of the 48 tools available today, 34 are read-only. The 14 that can write are exactly the ones you'd expect: creating or updating a lead, ticket, article, task, or timesheet entry, plus the handful of actions that change a status, such as marking a lead as won or lost.
Keeping an eye on what the AI is doing
Two features exist specifically so that an AI-connected Odoo doesn't become a black box:
- Audit logging keeps track of every tool call: who ran it, from where, what was asked, what was returned, whether it succeeded, and how long it took. That way you always have a clear answer if a question ever comes up about what an assistant actually did.
- Rate limiting lets you cap how many requests a user, a tool, or an agent can make per minute, so a runaway script or an overly enthusiastic automation can't overload your database.
Both are configurable per rule; you could, for example, allow generous limits for your own team while keeping a tighter budget on a shared integration key.
Built for the tools you're already using
- One endpoint, one URL. Every request goes through the same address, exactly what tools like Claude Code expect when you register an integration.
- Client-specific instructions. An administrator can attach extra guidance to a tool's description that only appears for a specific AI client, for example, reminding a coding assistant to summarise a large schema dump instead of pasting it in full, or to always show the user the result of a tool call rather than assuming they can already see it. Endoo ships ready-made rules for Claude Code CLI out of the box.
- Large files handled sensibly. Rather than pushing a multi-megabyte spreadsheet or image directly through the AI conversation (which is slow and can turn out surprisingly expensive), the connector gives the assistant a temporary download link instead; the assistant fetches the file directly, works with it, and can upload a result back the same way.
Which Odoo version do you run?
Endoo MCP is built and tested against Odoo 19, and is backwards compatible with Odoo V18 & 17. Get in touch and we'll scope what that looks like for your setup.
Curious what this could look like for your team?
We're happy to walk you through a real setup: which tools make sense for your workflows, how to scope access sensibly, and what a first rollout could look like. Get in touch with Endoo for a demo or a no-obligation conversation.