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

Examples

Real-world examples of using the Odoo MCP Server with AI agents.

Querying data

List confirmed sale orders

"Show me all confirmed sale orders from this month"

The agent calls odoo_search_read with:

{
  "model": "sale.order",
  "domain": [["state", "=", "sale"], ["create_date", ">=", "2026-03-01"]],
  "fields": ["name", "partner_id", "amount_total", "state"],
  "limit": 20
}

Count overdue invoices

"How many overdue invoices do we have?"
{
  "model": "account.move",
  "domain": [
    ["move_type", "=", "out_invoice"],
    ["payment_state", "!=", "paid"],
    ["invoice_date_due", "<", "2026-03-23"]
  ]
}

Export contacts to spreadsheet

"Export all customers with their email and phone"
{
  "model": "res.partner",
  "domain": [["customer_rank", ">", 0]],
  "fields": ["name", "email", "phone", "city", "country_id"],
  "limit": 2000
}

Use next_offset to page through large datasets.

Creating records

Create a new contact

"Create a contact for Acme Corp, email acme@example.com"
{
  "model": "res.partner",
  "values": {
    "name": "Acme Corp",
    "email": "acme@example.com",
    "is_company": true
  }
}

Create a quotation

"Create a quote for partner 42 with product 15, qty 10"

The agent first creates the order, then the order line:

{
  "model": "sale.order",
  "values": { "partner_id": 42 }
}
{
  "model": "sale.order.line",
  "values": {
    "order_id": 123,
    "product_id": 15,
    "product_uom_qty": 10
  }
}

Executing workflows

Confirm a sale order

"Confirm sale order SO-0042"
{
  "model": "sale.order",
  "method": "action_confirm",
  "ids": [42]
}

Post an invoice

"Post draft invoice INV/2026/0001"
{
  "model": "account.move",
  "method": "action_post",
  "ids": [101]
}

Discovery

"What models are available for stock/inventory?"
{
  "model": "",
  "keyword": "stock"
}

Returns models like stock.picking, stock.move, stock.warehouse, etc.

Inspect invoice fields

"Show me all required fields on invoices"
{
  "model": "account.move",
  "attributes": ["string", "type", "required"]
}

Health check

"Is the Odoo instance healthy?"

Calls odoo_doctor — returns server version, module count, active users, cron job status, and recent errors.

Last updated: 2026-03-23