Skip to Content
Technical product documentation

Model Context Protocol for Odoo.

An in-depth technical introduction to MCP, the architecture behind an Odoo integration and the way DAADit makes hosting, security, governance and support manageable.

Product: DAADit Hosted MCP Reading time: approx. 15 minutes Last updated: July 2026
Conceptual architectureManaged Odoo MCP
AI applicationClaude, ChatGPT or another MCP client
→
DAADit MCP GatewayAuthentication, policy and logging
UserPrompt, confirmation and context
↕
OdooData, models and business logic
Model gating
Capabilities
Audit trail
In één alinea

Model Context Protocol (MCP) is an open standard for connections between AI applications and external systems. In an Odoo context, an MCP server allows an authorised AI client to discover available data and functions, retrieve information and perform permitted actions. DAADit Hosted MCP adds management on top: hosting, authentication, permissions, capability gating, logging and support are set up centrally.

Foundation

What is Model Context Protocol?

Model Context Protocol is an open protocol that lets AI applications connect to external data, tools and workflows in a consistent way.

Definition

An MCP server publishes capabilities and context in a standardised format. An MCP client in an AI application can discover those capabilities and use them within the configured permissions.

Without a standard such as MCP, every combination of AI model and business system becomes a separate integration. The interface from model A to system X then differs from model B to the same system, while switching to another AI platform requires new development work. MCP aims to reduce this integration problem by standardising the connection between AI applications and external systems.

MCP does not replace the underlying system. Odoo remains responsible for data, users, access rights and business logic. The MCP server forms a controlled translation layer between the AI client and the functions made available to that client.

Open standardDesigned for interoperability between AI applications and external systems.
Client-server modelThe AI host contains a client; the external integration is provided by a server.
Discoverable functionsClients can request the available tools and resources instead of hard-coding everything.
Background

Why does MCP exist?

A language model has no live access to an Odoo database by itself. It does not automatically know the current stock, outstanding invoices or a user's permissions. To work with up-to-date business information, the AI application needs a controlled connection to external systems.

Traditionally, such a connection is developed per application. A team defines endpoints, tool descriptions, authentication, error handling and mappings for every model or agent platform. That works, but quickly leads to multiple variants of the same integration.

MCP introduces a common layer. As a result, an MCP-compatible client can work with multiple servers and a single server can make its capabilities available to multiple compatible clients. The exact support and functionality still depend on the chosen client and implementation.

What MCP does and does not solve

TopicMCP helps withMCP does not automatically solve
InteroperabilityA standardised interface between clients and servers.Functional differences between AI models and clients.
DiscoverabilityPublishing available tools, resources and prompts.Determining which functions are desirable from a business perspective.
SecurityA framework for authorisation and controlled connections.A secure configuration without additional policy and management.
Business logicAccess to a system's existing functions.Correct Odoo processes, data and user permissions.
Technical

How does the MCP architecture work?

MCP uses a host, client and server model. The user works in an AI application; the client maintains the protocol connection; the server exposes controlled functions and context.

AI hostChat, IDE or agent application
→
MCP clientProtocol session and messages
→
MCP serverTools, resources and prompts
Figure 1. Simplified client-server model. In an Odoo implementation, the MCP server then communicates with the Odoo environment via controlled interfaces.

The host is the application in which the user works with the AI model. The host can contain one or more MCP clients. Each client maintains a connection with an MCP server. The server describes which capabilities are available and processes requests that fall within the permitted policy.

Tools, resources and prompts

Tools

Executable functions, for example retrieving a quotation or creating a record.

Resources

Context or data a client can read, such as documentation or structured records.

Prompts

Reusable templates or guided interactions a server can make available.

Not every implementation needs to use all primitives. For an enterprise Odoo integration, the emphasis is usually on controlled tools and structured results. Which functions are published should be an explicit design decision.

Product

How does MCP work with Odoo?

In the DAADit architecture, the MCP server sits outside the Odoo user interface. The server receives standardised MCP requests, checks the identity and the configured policy, and translates a permitted action into an Odoo operation.

MCP clientRequest with user context
→
Policy & GatewayAuthentication, scope, validation, log
ResultStructured response
←
Odoo API / methodsRecords and business logic
Figure 2. Conceptual request flow for DAADit Hosted MCP. The exact implementation may differ per Odoo version, hosting variant and customer policy.

Example of a tool definition

From the live DAADit Hosted MCP serverJSON
// One of the tools your AI client receives after tools/list.
{
  "name": "odoo_search_read",
  "description": "Search and read records in a single call — the most-used tool for questions about your data.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "model": { "type": "string" },
      "domain": { "type": "array" },
      "fields": { "type": "array" },
      "limit":  { "type": "integer" }
    },
    "required": ["model"]
  }
}

The full toolset of the hosted server consists of odoo_list_instances, odoo_list_models, odoo_fields_get, odoo_search, odoo_search_read, odoo_read, odoo_create, odoo_write and odoo_execute_kw. Which of these a client actually sees is determined per environment and per user with capability gating; by default only the read-only tools are enabled.

The server does not determine on its own what the user means. The AI client selects a tool based on the description and the interaction. That is why tool names, schemas, error messages and authorisation must be carefully designed and tested.

Prefer to work directly with your own test environment?The campaign page “Live within one minute” offers a short activation route for technical users.
View the activation route
Comparison

MCP versus a traditional REST API

MCP and REST are not direct alternatives. An MCP server often uses existing APIs or system methods to communicate with the source system. The difference lies mainly in the interface towards the AI application.

AttributeREST APIMCP
Primary audienceSoftware applications and developers.AI hosts, agents and MCP clients.
DiscoverabilityVia external API documentation or schemas.Server can publish capabilities during the session.
Semantic descriptionNot necessarily aimed at model selection.Tools include descriptions and input schemas for AI use.
Gebruik in OdooDirect integration between applications.A standardised AI layer on top of controlled Odoo actions.
ManagementPer integration and application.Potentially centralised per MCP server or gateway.

An important architectural principle is that MCP must not bypass existing authorisation. The MCP layer should respect the permissions in Odoo and can additionally apply stricter scopes.

Enterprise

Security, privacy and governance

An MCP implementation is not secure simply because the protocol is used. Security comes from identity, least privilege, explicit boundaries, controlled tools, logging and operational management.

ImportantMCP connects a probabilistic AI system to real data and potentially executable actions. Prompt injection, overly broad tools, incorrect user context and untrusted servers must therefore be treated as concrete risks.
1. Identity

The server must be able to establish which user, tenant and client is making a request. Shared credentials reduce traceability.

2. Authorisation

Permissions are restricted based on user, role, Odoo model, action and environment. Read-only is a sensible default for a first production trial.

3. Tool design

Tools are given a limited purpose, validatable input and predictable results. Generic execution functions require additional safeguards.

4. Confirmation

High-risk actions can require explicit human confirmation before the server executes the change.

5. Observability

Calls, errors, actor, tool, timing and result status are recorded for monitoring, investigation and improvement.

Model gating and capability gating

Model gating determines which AI clients or models may access a tenant or functional area. Capability gating restricts which categories of actions are available, for example reading, searching, creating, modifying or executing specific methods.

DAADit applies these concepts as product policy on top of the existing Odoo permissions. A user can never be allowed more than the linked Odoo identity, while the MCP layer can restrict access further.

Logging and audit trail

For management and governance, it must at minimum be visible which user or service identity started a call, which tool was chosen, which tenant and environment were involved, whether the action was permitted and whether it succeeded. Sensitive prompt content and results require a separate retention policy.

Logging is not a substitute for preventive security. It forms the basis for incident investigation, usage analysis, troubleshooting and improving tool definitions.

Want to explore your own tenant and dashboard?The free-account page is aimed at users who want to look at administration, permissions and connections first.
View the management route
Delivery

Implementation of DAADit Hosted MCP

The implementation does not start with an AI model, but with the desired business processes and the risk class of the associated actions. An information request about stock requires a different level of control than creating or confirming financial entries.

Recommended implementation phases

PhaseActivitiesResult
1. Use case and scopeDescribe persona, moment, data, actions and acceptance criteria.A clearly scoped first use case.
2. Technical designDetermine Odoo identities, tools, authentication, environment and logging.Architecture and security policy.
3. ConfigurationSet up tenant, connection, gating, users and toolset.Working development or staging environment.
4. TestingRun positive, negative and abuse scenarios.Insight into quality and residual risk.
5. Production and administrationPhased access, monitoring, evaluation and support.A managed operational service.

Dashboard and support

The customer gets a compact dashboard for connections, users, models, capabilities and activity. The complex server configuration remains under DAADit's management. When a user reports a problem, the helpdesk can investigate the relevant environment, logging and configuration. A support question can be forwarded to DAADit from the same AI assistant.

In practice

Examples of Odoo MCP applications

The examples below illustrate different levels of reading, analysing and executing. The final toolset is designed per customer and persona.

Sales

Prepare quotation

Retrieve customer, product and pricing information and prepare a draft quotation for human review.

Management

Current briefing

Summarise revenue, margin, open quotations and exceptions from live Odoo data.

Finance

Closing checklist

Identify open items and missing entries and rank them by impact.

Warehouse

Available stock

Combine free stock, reservations and expected receipts into a delivery answer.

Support

Order status

Bring sales, delivery and purchasing together in one explainable customer update.

Service

Complete work order

Record hours, parts and follow-up maintenance after confirmation by the technician.

More extensive business stories can be included in the section Put Odoo to work. This product page deliberately stays focused on the technical workings and administration.

Answers

Frequently asked questions about MCP and Odoo

What is Model Context Protocol?

MCP is an open protocol for standardised connections between AI applications and external data sources, tools and workflows.

Is MCP open source?

The specification and official SDKs are developed as an open-source project. A separate MCP server or commercial service may have its own licence terms.

Does MCP only work with Claude?

No. As an open standard, MCP is intended for multiple hosts and clients. The precise functions and support differ per AI platform.

Does MCP work with ChatGPT or OpenAI?

That depends on the MCP support in the OpenAI product used or the chosen client. Always check the client's current documentation.

How does MCP work with Odoo?

An MCP server publishes controlled tools and translates permitted requests into Odoo operations. The server then returns a structured result to the client.

Is MCP a replacement for the Odoo API?

No. An MCP server can in fact make use of existing Odoo interfaces. MCP mainly standardises the layer towards the AI client.

Is MCP secure?

MCP can be applied securely when identity, least privilege, tool scopes, human confirmation, logging and protection against prompt injection are carefully set up.

What is capability gating?

Capability gating restricts which categories of functions a client or user may use, for example read-only or also creating records.

What is model gating?

Model gating determines which AI clients, models or applications get access to a tenant, user group or toolset.

Can an environment be set up as read-only?

Yes. A read-only configuration is suitable for reporting, investigation and a controlled first production trial.

Are all actions logged?

The DAADit setup provides logging of calls and relevant metadata. The exact content and retention period are aligned with security and privacy policy.

Do I have to host the server myself?

No. DAADit provides a hosted and managed variant. Self-hosting is technically possible with other implementations, but falls outside this service.

Which Odoo versions are supported?

Odoo 16, 17, 18 and 19 — Odoo Online (odoo.com), Odoo.sh and on-premise alike, as long as the environment is reachable via the external API. You choose the version when creating the connection; the server tests the link immediately and reports any version mismatch.

Can I test on staging first?

Yes. Development or staging is the recommended starting point for tools that modify data.

How do I get started?

A technical user can follow an activation route. Organisations with governance or implementation questions can schedule a technical intake first.

Topical authority

Related documentation and articles

Primary sources

Sources and further reading

  1. Model Context Protocol — Introduction
  2. Model Context Protocol — Architecture overview
  3. Model Context Protocol — Specification
  4. Model Context Protocol — Security best practices
  5. Anthropic — Introducing the Model Context Protocol
  6. Odoo 19 Documentation

A specific Odoo MCP question?

DAADit helps with architecture, security, configuration and a controlled first use case. The product documentation remains the primary reference; getting in touch is a logical next step when the technical situation calls for it.

Start now — live within 1 minute → Discuss the technical situation