search_partnersLABSCO SUMMARY
The allowlist is required, not optional.
Making TOOLS_TO_REGISTER a mandatory setting is a real design decision: there is no default surface to forget to lock down, and adding a capability is a deliberate edit to a config value. Paired with runtime-loaded external tool directories, that means you shape the server around your Odoo rather than around what the author decided to ship. The author is upfront that this is very early development, so expect rough edges.
What it is
An extensible MCP server between Odoo and LLMs. Its defining choice is that the tool surface is not fixed: TOOLS_TO_REGISTER is a required setting listing exactly which tools to expose, drawn from the ones shipped in the project or from your own files loaded at runtime. The author describes the project as in very early development.
What you get
- A tool set you choose rather than inherit — nothing is exposed unless you name it in
TOOLS_TO_REGISTER, so a read-only deployment simply never registers anything else - Tools bundled with the project covering common Odoo objects, with the documented example registering
search_partners,search_quotations,search_sales_ordersandsearch_customer_invoices - Runtime extension:
EXT_DIRECTORIEStakes a list of paths to search for additional tools loaded at startup, so a custom search against your own Odoo model does not require forking the server - Transport chosen per deployment —
stdiofor local-only use, orsseandstreamable-httpfor remote, withHOSTcontrolling which interfaces it listens on - A Dockerfile for running it as a container, with the note that a container needs an HTTP-based transport and a bind address of all interfaces to be reachable
Requirements
An Odoo instance and an account on it. Five required environment variables — ODOO_BASE_URL, ODOO_DATABASE, ODOO_USERNAME, ODOO_PASSWORD (a password or an API key) and ODOO_VERSION for the major version of your server — plus TRANSPORT_PROTOCOL and TOOLS_TO_REGISTER, both of which are also required. LOG_LEVEL, HOST and EXT_DIRECTORIES are optional. uv is the only prerequisite: install the server with uv tool install --from git+https://github.com/alberto-re/mcp-server-odoo mcp-server-odoo, or build the included Dockerfile. The client configurations run it with uvx --from git+https://github.com/alberto-re/mcp-server-odoo mcp-server-odoo; the shorter uvx mcp-server-odoo fetches a different project of the same name from PyPI.
Setup effort
One command plus credentials — uv tool install --from git+https://github.com/alberto-re/mcp-server-odoo mcp-server-odoo, then supply credentials
USE CASES
Asking about customers, quotes or invoices
Register the searches you need and query them in plain language against your live Odoo database.
Keeping an assistant to a narrow slice of Odoo
List only the tools you want in the registration setting; anything you did not name is simply not there.
Adding a search against your own Odoo model
Drop a tool file into an external directory and point the extension setting at it — no fork, no rebuild.
Running it as a shared service
Switch the transport to SSE or streamable HTTP, bind to all interfaces, and run it from the included container image.
4 tools
Listed in project docs. Your client may show a different list.
search_quotationssearch_sales_orderssearch_customer_invoicesBEFORE YOU INSTALL
What to know first
Tools you get
4 tools named in the project's documentation.
Requires
- uvx on PATH
- ODOO_BASE_URL in your environment
- ODOO_DATABASE in your environment
- ODOO_USERNAME in your environment
- ODOO_PASSWORD in your environment
- ODOO_VERSION in your environment
- TRANSPORT_PROTOCOL in your environment
- TOOLS_TO_REGISTER in your environment
Where it runs
Both documented clients run the server on your machine.
INSTALLATION
Connect your client
Server setup
uv tool install --from git+https://github.com/alberto-re/mcp-server-odoo mcp-server-odooMCP Clients
Claude Desktop, MCPHost
{
"mcpServers": {
"mcp-server-odoo": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/alberto-re/mcp-server-odoo",
"mcp-server-odoo"
],
"env": {
"ODOO_BASE_URL": "http://localhost:8069",
"ODOO_DATABASE": "mydatabase",
"ODOO_USERNAME": "admin",
"ODOO_PASSWORD": "admin",
"ODOO_VERSION": "18",
"TRANSPORT_PROTOCOL": "stdio",
"TOOLS_TO_REGISTER": "search_partners,search_quotations,search_sales_orders,search_customer_invoices"
}
}
}
}