# odoo

Connect an AI agent to Odoo to inspect records, export data, and make changes. Read-only mode disables write operations when you want to browse an instance safely.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 5
- Author: oconsole
- License: MIT · policy=link-only · description only; the file stays with the author
- Source: https://github.com/oconsole/odoo-mcp-server
- Updated: 2026-05-14
- HTML: https://affpapa.org/en/nevibecode/mcp/odoo

## What it does

This MCP server gives an agent access to an Odoo instance. It can search records with filters and selected fields, count matches, export data, and create, update, or delete records. Other tools inspect models, fields, views, and window actions, or run model methods. The server selects JSON-RPC for Odoo 17-18 and the JSON-2 API for Odoo 19+.

Set the instance URL, database, and username to connect. Odoo 17-18 uses a password; Odoo 19+ uses an API key. Set `ODOO_READONLY=true` to disable create, update, delete, and method-execution tools. That setting matters on a production instance, since otherwise the agent has access to write operations. The local setup uses `uv` with Python 3.11; a hosted HTTP endpoint is also available for supported clients.

## Requirements
- Remote server: `https://mcp.odooconsole.com/mcp`

## Install

### Claude Code (native platform)

**Platform CLI: remote server**
```bash
claude mcp add --transport http odoo https://mcp.odooconsole.com/mcp
```

### Codex

**Platform CLI: remote server**
```bash
codex mcp add odoo --url https://mcp.odooconsole.com/mcp
```

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "odoo": {
            "url": "https://mcp.odooconsole.com/mcp"
        }
    }
}
```

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "odoo": {
            "type": "http",
            "url": "https://mcp.odooconsole.com/mcp"
        }
    }
}
```

### Gemini CLI

**Platform CLI: remote server**
```bash
gemini mcp add -t http odoo https://mcp.odooconsole.com/mcp
```

## When to use it
- find orders using domain filters
- count matching records without fetching them
- export product data for a spreadsheet
- inspect required fields and model views
- prevent record changes while browsing an instance

## Example prompts
- List this month's sale orders and show their fields.
- Inspect required fields and the default sort order for `sale.order`.
- Export all products from Odoo to a spreadsheet.

## Similar
- [MCP Toolbox for Databases](https://affpapa.org/en/nevibecode/mcp/googleapis-mcp-toolbox-for-databases.md) — MCP server · ★ 16730
- [PostHog MCP Server](https://affpapa.org/en/nevibecode/mcp/posthog-mcp-server.md) — MCP server · ★ 40459
- [OpenWork MCP Gateway](https://affpapa.org/en/nevibecode/mcp/openwork-mcp-gateway.md) — MCP server · ★ 24271
- [Keploy](https://affpapa.org/en/nevibecode/mcp/keploy.md) — MCP server · ★ 18779
- [Nhost](https://affpapa.org/en/nevibecode/mcp/nhost.md) — MCP server · ★ 9369
- [basebalance.cloud — x402 RPC & MCP gateway](https://affpapa.org/en/nevibecode/mcp/basebalancecloud-x402-rpc-mcp-gateway.md) — MCP server · ★ 7548

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
