odoo-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ODOO_DB | No | Database name (only needed for multi-database setups) | |
| ODOO_URL | Yes | URL of the Odoo instance (e.g., https://your-odoo-instance.com or http://localhost:8069) | |
| ODOO_API_KEY | No | API key for bearer authentication (recommended for production) | |
| ODOO_PASSWORD | No | Password for session authentication | |
| ODOO_USERNAME | No | Username for session authentication (convenient for local dev) | |
| ODOO_INSTANCE_LABEL | No | Label shown in the MCP server name (default: "odoo") |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_recordsA | Search for records in any Odoo model. |
| read_recordA | Read specific Odoo records by their IDs. |
| list_modelsA | List installed Odoo models. |
| get_model_fieldsA | Get field definitions for an Odoo model. |
| create_recordA | Create a new record in an Odoo model. |
| update_recordsA | Update existing records in an Odoo model. |
| delete_recordsA | Delete records from an Odoo model. |
| get_model_docA | Get API documentation for an Odoo model. |
| call_methodA | Call any public method on an Odoo model. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 9 tools
Each tool targets a distinct operation: schema discovery (list_models, get_model_doc, get_model_fields), CRUD (create, read, update, delete), search, and generic method call. No overlap.
All tool names follow a uniform verb_noun pattern (e.g., list_models, create_record, search_records) using lowercase and underscores, making them predictable.
9 tools is well-scoped for an Odoo integration, covering model discovery, CRUD, search, and a generic method call without being excessive or insufficient.
The tool set provides full CRUD, search, and schema discovery; the only minor gap is the absence of a dedicated count/aggregate operation, but search_records with limit=0 can approximate it.