WORK IN PROGRESS WORK IN PROGRESS WORK IN PROGRESS WORK IN PROGRESS WORK IN PROGRESS WORK IN PROGRESS WORK IN PROGRESS WORK IN PROGRESS

Skills Reference

Detailed reference for each Odoo agent skill — what it does, when to use it, and which models it covers.

Read tier

Read-tier skills guide the agent toward read-only operations but do not enforce this at the tool level. For hard enforcement, use ODOO_READ_ONLY=true on your MCP server.

odoo-model-inspect

Tier: Read (safe on production)

General-purpose model inspection. Use when you need to understand model structure, field definitions, view XML, or record counts.

Models covered: Any Odoo model — this is the fallback for queries that don't fit a domain-specific skill.

When to use: "What fields does sale.order have?", "Show me the form view XML", "How many records exist in res.partner?"

When NOT to use: If the question is about a specific domain (accounting, inventory, manufacturing, system health), use the domain skill instead — they have field-name corrections specific to those models.


odoo-accounting-inspect

Tier: Read (safe on production)

Accounting-specific inspection. Knows the correct field names for Odoo 17+ accounting models.

Models covered: account.move, account.move.line, account.payment, account.journal

Key field corrections:

  • move_type not type (renamed in Odoo 16)
  • invoice_date not post_date
  • payment_state not payment_status

When to use: "Show unpaid invoices", "Aged receivables over 30 days", "Draft vs posted entries"


odoo-mrp-inspect

Tier: Read (safe on production)

Manufacturing inspection. Handles BoM recursion, production status, and MRP-specific field names.

Models covered: mrp.production, mrp.bom, mrp.bom.line, mrp.workorder, mrp.workcenter

Key field corrections:

  • date_start not date_planned_start (renamed in Odoo 17)
  • Verifies MRP module is installed before querying

When to use: "Stuck manufacturing orders", "Multi-level BoM breakdown", "Component availability", "Production throughput"


odoo-stock-inspect

Tier: Read (safe on production)

Inventory inspection. Covers stock levels, moves, transfers, and reordering rules.

Models covered: stock.quant, stock.move, stock.move.line, stock.picking, stock.warehouse.orderpoint

Key field corrections:

  • stock.move: name and quantity_done are not stored fields
  • stock.move.line: qty_done and reserved_uom_qty are not stored fields
  • product.product: qty_available is not a stored field

When to use: "Negative stock", "Overdue transfers", "Reorder point analysis", "Reserved quantities"


odoo-system-inspect

Tier: Read (safe on production)

System health inspection. Covers modules, cron jobs, error logs, and user activity.

Models covered: ir.module.module, ir.module.module.dependency, ir.cron, ir.logging, res.users, res.users.log

Key field corrections:

  • ir.cron: numbercall, last_call, doall are not stored fields
  • ir.module.module: version, category are not stored fields
  • res.users: last_login, groups_id are not stored fields

When to use: "Stuck cron jobs", "Recent error logs", "Module dependencies", "User login activity"


Write tier

odoo-model-customize

Tier: Write (mutates production)

Runtime-safe model customization. Knows the boundary between what can be done via RPC and what requires a custom Python module.

Capabilities:

  • Set field defaults via ir.default
  • Modify window action sort order and filters
  • Create saved filters (ir.filters)
  • Add custom x_ fields
  • Create inherited views with XPath
  • Set up automated actions (base.automation)

Safety boundary: Refuses to modify _order, _rec_name, add stored computed fields, or override Python methods — these require a custom module.

When to use: "Set the default sales team", "Change list view sort order", "Add a custom field to contacts"


Demo tier

odoo-model-customize-demo

Tier: Demo (sandboxed mutations)

Same capabilities as odoo-model-customize, but every artifact is tagged for clean removal:

  • Custom fields: x_demo_ prefix
  • Views: .demo. infix
  • Filters and automations: [DEMO] prefix

Includes a cleanup recipe that finds and removes all demo artifacts.

When to use: "Walk me through adding a custom field", "Try out a saved filter", "Prototype a view change"

Last updated: 2026-04-10