MCP Odoo
UnclaimedOdoo MCP for AI agents — gated writes, multi-instance. Hosted product: https://erpipe.com
Set up this server
01 / Choose your client
02 / Before you connect
Authentication is not specified. Check the project instructions before connecting.
Project instructions03 / Add the configuration
claude mcp add --transport stdio 'mcp-odoo' -- 'uvx' 'odoo-mcp' '--setup'04 / Check it in your client
Open your client’s MCP settings and confirm the server connects and lists its tools. A copied configuration does not confirm a working connection.
More in AI & ML
Browse the full directoryUnclaimed listing
Is this your MCP server?
This listing was auto-indexed from the public record. Claim it to edit the page, set compatibility and unlock growth tools. Takes under two minutes.
Claim this serverSecurity profile
Claimed and verified servers get a weekly static scan that shows what the code can reach: external services, environment variables, shell commands, agent configuration folders, plus any dependencies with known advisories. Claim this listing to get one. How the security profile works
39 of 39 tools
Documented tools (39)
From project documentation. A server handshake does not verify each tool’s description or behavior.
accounting_health_across_instances
AR/AP aging across every client DB with combined buckets — the partner-network sweep.
accounting_health_summary
Open receivable/payable item counts plus the draft invoice backlog.
aggregate_across_instances
Group/aggregate per instance plus additive grand totals across the fleet.
aggregate_records
Server-side groupby/aggregation via formattedreadgroup (Odoo 19+) or readgroup (16-18).
build_domain
Build and validate an Odoo domain from structured conditions.
business_pack_report
Report expected modules, models, and discovery calls for sales, CRM, inventory, accounting, or HR.
cancel_async_task
Cancel a pending or running task.
chatter_post
Post a chatter message on a mail.thread record. Default mode requires the approval-token preview/execute flow.
diagnose_access
Diagnose ACL and record-rule visibility for the current Odoo credential.
diagnose_odoo_call
Diagnose a model call without executing it.
execute_approved_write
Execute only a same-session, live-validated, confirmed write when ODOOMCPENABLEWRITES=1.
execute_method
Execute a reviewed model method. Direct create, write, and unlink are blocked. Side-effect methods require an exact allowlist or ODOOMCPALLOWUNKNOWNMETHODS=1.
fit_gap_report
Classify requirements into standard, configuration, Studio, custom module, avoid, or unknown.
generate_json2_payload
Convert XML-RPC-shaped input into JSON-2 endpoint, headers, and named body.
get_async_task
Poll a task's status and result.
get_model_fields
Read field metadata for one model.
get_odoo_profile
Read server version, user context, transport, database, and installed module summary.
health_check
Report non-secret MCP runtime posture, including rate-limit counters and field-ACL status when enabled.
index_knowledge
Fetch a bounded record slice once and build a local BM25 index (accent-insensitive; data never leaves the machine).
inspect_model_relationships
Group relationship fields, required fields, and create/write hints.
knowledge_stats
Report per-model index sizes and the ODOOMCPKNOWLEDGEMAXDOCS budget.
list_async_tasks
List live and recently finished tasks.
list_instances
List configured Odoo instance names, URLs, databases, transports, and cross-instance tags — never credentials.
list_models
List Odoo model technical names and labels.
lookup_model_history
Resolve outdated model names (account.invoice → account.move) against a curated per-version rename catalog.
preview_write
Produce a non-executing approval payload for create, write, or unlink.
read_attachment
Read an ir.attachment's metadata and size-capped base64 content (ODOOMCPMAXATTACHMENTBYTES, default 1 MiB).
read_record
Read one record by model and ID. Smart-field selection when caller omits fields.
receivable_payable_aging
Aged AR/AP report bucketed by days overdue (not due / 1-30 / 31-60 / 61-90 / 90+), with per-partner totals.
scan_addons_source
Scan local addon source without importing addon code.
schema_catalog
Build a bounded model catalog with optional field metadata.
search_across_instances
Search every opted-in instance (or a list/tag selection); rows tagged with instance, partial results on per-instance failure.
search_employee
Search employees by name.
search_holidays
Search leave records by date range.
search_knowledge
Relevance-ranked free-text search over indexed records with zero further RPC calls.
search_records
Run bounded read-only searchread. Smart-field selection when caller omits fields.
submit_async_task
Run an allowlisted long read operation (scanaddonssource, indexknowledge, receivablepayableaging) on a bounded worker pool. Writes are never accepted.
upgrade_risk_report
Surface transport, method, and migration risks across Odoo versions.
validate_write
Validate a write payload against trusted live fieldsget metadata.
Tool change history
FAQ
Questions about MCP Odoo MCP Server
- How do I connect MCP Odoo MCP Server to Claude?
- Run `claude mcp add mcp-odoo -- uvx odoo-mcp --setup` in Claude Code, or add the same command and arguments under mcpServers in Cursor's mcp.json or Claude Desktop's claude_desktop_config.json, then restart the client. The blocks above are ready to paste.
- Is MCP Odoo MCP Server free?
- The listed licence is MIT. Check the upstream terms for permitted use and commercial requirements; a public repository does not by itself mean the software is free or open source. Connected APIs and hosted services may have separate charges.
- What can MCP Odoo MCP Server do?
- MCP Odoo MCP Server documents 39 tools to the agent, including accounting_health_across_instances, accounting_health_summary, aggregate_across_instances. The descriptions above come from project documentation. A live handshake does not test individual tool behavior.