Odoo MCP Server
Exposes Odoo 19 ERP as MCP tools, enabling AI agents to query and act on CRM data (leads, semantic search) via natural language without custom integration.
README
Odoo MCP Server
An MCP (Model Context Protocol) server that exposes an Odoo 19 ERP as a set of standard tools — so any MCP-compatible AI agent (Claude Desktop, an IDE, a custom agent) can query and act on the ERP without writing a single line of custom integration.
MCP is the open standard adopted in 2026 by Anthropic, OpenAI, Google and Microsoft — often described as "the USB-C of AI". It turns the M×N integration problem into M+N: one server per data source, usable by every client.
Exposed tools
| Tool | What it does |
|---|---|
contar_leads |
Counts CRM leads, optionally filtered by AI temperature |
listar_leads |
Lists leads with company and expected revenue |
crear_lead |
Creates a new lead in the CRM |
buscar_semantico |
Semantic search over lead notes (RAG with pgvector) |
Architecture MCP client ──JSON-RPC/stdio──> Odoo MCP Server ──XML-RPC──> Odoo 19
(any agent) (this repo) + pgvector
The server runs as a separate process from Odoo and talks to it through Odoo's official external API (XML-RPC) — the same interface any third-party system would use. This keeps a clean client/server separation, as the protocol intends.
buscar_semantico reuses the RAG layer implemented in the companion module
odoo_ai_agent (local embeddings + pgvector).
Tech stack
- Python 3.12,
fastmcp - Transport: stdio (JSON-RPC)
- Odoo 19 external API (XML-RPC)
- PostgreSQL + pgvector for the semantic layer
Setup
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
Create a .env file (never committed):
ODOO_URL=http://localhost:8069 ODOO_DB=your_database ODOO_USER=your_odoo_user ODOO_PASSWORD=your_odoo_password
Usage
Run the test client to list and call the published tools:
python3 test_client.py
Or register the server with any MCP client by pointing it to server.py.
Security notes
- Credentials are loaded from environment variables /
.env, never hardcoded. - The server only exposes explicitly declared tools — no arbitrary ORM access.
Author
Salima Terbah — Multiplatform App Developer (DAM), specializing in applied AI for Odoo.
License
LGPL-3
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.