MCP Server for Odoo
by FriendlySB
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ODOO_DB | No | Database name (auto-detected if not set). Required if database listing is restricted on your server. | |
| ODOO_URL | Yes | Your Odoo instance URL (e.g., https://mycompany.odoo.com) | |
| ODOO_USER | No | Username (if not using API key). Required unless using ODOO_API_KEY. In YOLO mode, required even when using an API key. | |
| ODOO_YOLO | No | YOLO mode - bypasses MCP security (⚠️ DEV ONLY). Possible values: off, read, true. Default: off. | off |
| ODOO_LOCALE | No | Language/locale for Odoo responses (e.g., es_ES, fr_FR, de_DE). | |
| ODOO_API_KEY | No | API key for authentication. Required unless using ODOO_USER and ODOO_PASSWORD. In YOLO mode, ODOO_USER is required even when using an API key. | |
| ODOO_MCP_HOST | No | Host to bind for HTTP transport. Default: localhost. | localhost |
| ODOO_MCP_PORT | No | Port to bind for HTTP transport. Default: 8000. | 8000 |
| ODOO_PASSWORD | No | Password (if not using API key). Required unless using ODOO_API_KEY. | |
| SSL_CERT_FILE | No | Path to the system's SSL certificate bundle for HTTPS connections (e.g., /etc/ssl/cert.pem). Used to fix SSL certificate verification errors. | |
| ODOO_MCP_LOG_FILE | No | Path for rotating log file (10 MB, 5 backups). | |
| ODOO_MCP_LOG_JSON | No | Enable structured JSON log output. Default: false. | false |
| ODOO_MCP_LOG_LEVEL | No | Log level (DEBUG, INFO, WARNING, ERROR, CRITICAL). Default: INFO. | INFO |
| ODOO_MCP_MAX_LIMIT | No | Maximum allowed record limit per request. Default: 100. | 100 |
| ODOO_MCP_TRANSPORT | No | Transport type (stdio, streamable-http). Default: stdio. | stdio |
| ODOO_MCP_LOG_FORMAT | No | Custom Python logging format string (default: %(asctime)s - %(name)s - %(levelname)s - %(message)s). | |
| ODOO_MCP_ALLOWED_HOSTS | No | Comma-separated Host headers to accept for HTTP transport (DNS-rebinding protection). Set when running streamable-http behind a reverse proxy that forwards an external host, e.g. odoo.example.com,localhost. IPv6 literals may be bracketed or bare ([::1]:8000, ::1). Unset, protection is only auto-enabled for a loopback bind — binding any other host (e.g. 0.0.0.0) runs with no Host/Origin validation at all. | |
| ODOO_MCP_DEFAULT_LIMIT | No | Default number of records returned per search. Default: 10. | 10 |
| ODOO_MCP_MAX_BINARY_SIZE | No | Maximum bytes returned by a single binary/attachment resources/read. Default: 52428800. | 52428800 |
| ODOO_MCP_MAX_SMART_FIELDS | No | Maximum fields returned by smart field selection. Default: 15. | 15 |
| ODOO_MCP_ENABLE_METHOD_CALLS | No | Enable the call_model_method tool — requires ODOO_YOLO=true. Possible values: false, true. Default: false. | false |
| ODOO_MCP_SESSION_IDLE_TIMEOUT | No | Seconds of inactivity before a streamable-http session is closed and its server-side state freed, e.g. 600. Unset means sessions never expire. | |
| ODOO_MCP_SLOW_OPERATION_THRESHOLD_MS | No | Threshold in milliseconds above which an operation is logged as slow. Default: 1000. | 1000 |
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
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
No tools | |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
This server cannot be deployed
Maintenance
ActivityMaintained
ResponsivenessNo issues