index_knowledge
Fetch a bounded record slice once and build a local BM25 index (accent-insensitive; data never leaves the machine).
How to use it
index_knowledge is exposed by the MCP Odoo MCP server. Add the server to your MCP client (Claude Desktop, Cursor, Windsurf and others), and the index_knowledge tool becomes available to the model automatically. See the full listing for setup details and every tool this server provides.
Install MCP Odoo
uvx odoo-mcp --setupOther tools in MCP Odoo (38)
AR/AP aging across every client DB with combined buckets — the partner-network sweep.
Open receivable/payable item counts plus the draft invoice backlog.
Group/aggregate per instance plus additive grand totals across the fleet.
Server-side groupby/aggregation via formattedreadgroup (Odoo 19+) or readgroup (16-18).
Build and validate an Odoo domain from structured conditions.
Report expected modules, models, and discovery calls for sales, CRM, inventory, accounting, or HR.
Cancel a pending or running task.
Post a chatter message on a mail.thread record. Default mode requires the approval-token preview/execute flow.
Diagnose ACL and record-rule visibility for the current Odoo credential.
Diagnose a model call without executing it.
Execute only a same-session, live-validated, confirmed write when ODOOMCPENABLEWRITES=1.
Execute a reviewed model method. Direct create, write, and unlink are blocked. Side-effect methods require an exact allowlist or ODOOMCPALLOWUNKNOWNMETHODS=1.
Classify requirements into standard, configuration, Studio, custom module, avoid, or unknown.
Convert XML-RPC-shaped input into JSON-2 endpoint, headers, and named body.
Poll a task's status and result.
Read field metadata for one model.
Read server version, user context, transport, database, and installed module summary.
Report non-secret MCP runtime posture, including rate-limit counters and field-ACL status when enabled.
Group relationship fields, required fields, and create/write hints.
Report per-model index sizes and the ODOOMCPKNOWLEDGEMAXDOCS budget.
List live and recently finished tasks.
List configured Odoo instance names, URLs, databases, transports, and cross-instance tags — never credentials.
List Odoo model technical names and labels.
Resolve outdated model names (account.invoice → account.move) against a curated per-version rename catalog.
Produce a non-executing approval payload for create, write, or unlink.
Read an ir.attachment's metadata and size-capped base64 content (ODOOMCPMAXATTACHMENTBYTES, default 1 MiB).
Read one record by model and ID. Smart-field selection when caller omits fields.
Aged AR/AP report bucketed by days overdue (not due / 1-30 / 31-60 / 61-90 / 90+), with per-partner totals.
Scan local addon source without importing addon code.
Build a bounded model catalog with optional field metadata.
Search every opted-in instance (or a list/tag selection); rows tagged with instance, partial results on per-instance failure.
Search employees by name.
Search leave records by date range.
Relevance-ranked free-text search over indexed records with zero further RPC calls.
Run bounded read-only searchread. Smart-field selection when caller omits fields.
Run an allowlisted long read operation (scanaddonssource, indexknowledge, receivablepayableaging) on a bounded worker pool. Writes are never accepted.
Surface transport, method, and migration risks across Odoo versions.
Validate a write payload against trusted live fieldsget metadata.