- Home
- MCP servers
- Odoo MCP Unified Server
Odoo MCP Unified Server
- python
0
GitHub Stars
python
Language
7 months ago
First Indexed
3 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"golfamigo-odoomcp": {
"command": "python",
"args": [
"run_server.py"
],
"env": {
"HOST": "0.0.0.0",
"PORT": "8000",
"ODOO_DB": "your_database",
"ODOO_URL": "https://your-odoo.example",
"LOG_LEVEL": "INFO",
"ODOO_TIMEOUT": "60",
"MCP_TRANSPORT": "stdio",
"ODOO_PASSWORD": "your_password",
"ODOO_USERNAME": "your_username",
"ODOO_VERIFY_SSL": "false"
}
}
}
}You run a unified MCP server for Odoo that connects to your Odoo instance, exposes a suite of business tools, and supports dual transport modes (stdio for local/desktop use and SSE for web deployments). This server lets you execute Odoo methods, search and create records, and analyze sales, procurement, inventory, and accounting data through a clean, type-safe configuration.
How to use
You interact with the server through an MCP client. The server supports two transport modes: stdio for local or desktop integrations and SSE for web deployments. You can perform core actions like executing any Odoo method, searching and creating records, and running built-in analyses for sales, purchases, inventory, and accounting. To start, run the server in the mode you prefer, then point your MCP client at the corresponding transport endpoint. In SSE mode, your client connects to the SSE endpoint exposed by the server and streams responses as events.
How to install
# Prerequisites
- Python 3.8+ installed
- pip available on your system
# For Claude Desktop style (stdio) development
# 1) Create a virtual environment
cd E:\gitHub\odoo-mcp-unified
python -m venv venv
# 2) Activate the virtual environment
venv\Scripts\activate
# 3) Install dependencies
pip install -r requirements.txt
# 4) Install the package in editable mode
pip install -e .
# For SSE (web deployment) you will configure MCP_TRANSPORT in environment vars
Prereqs: you will need Python and a compatible MCP client. The server can run locally in stdio mode or be deployed with SSE for web hosting. After installation, you configure the server and start it with the appropriate environment variables.
Additional configuration and run options
Configure and start in stdio mode for desktop integrations by running the server with Python and pointing to the runtime script. See the environment variable details below for exact values you should provide.
Configure and run in SSE mode for web deployments by setting the transport to sse and exposing a port. This mode does not require a Supergateway.
Environment and startup notes
Set or export the following environment variables to connect to your Odoo instance and control server behavior.
Quick start examples
# Example: stdio mode (local desktop)
export ODOO_URL=https://your-odoo.example
export ODOO_DB=your_database
export ODOO_USERNAME=your_username
export ODOO_PASSWORD=your_password
export MCP_TRANSPORT=stdio
python run_server.py
# Example: SSE mode (web deployment)
export ODOO_URL=https://your-odoo.example
export ODOO_DB=your_database
export ODOO_USERNAME=your_username
export ODOO_PASSWORD=your_password
export MCP_TRANSPORT=sse
export PORT=8000
python run_server.py
# Access: http://localhost:8000/sse
Security and maintenance
Keep credentials in secure storage and limit access to the server. Use TLS for Odoo_URL connections and consider rotating credentials periodically. You can adjust logging with the provided environment variables to balance observability and performance.
Project structure and components
The server bundles core tools for executing Odoo methods and analyzing business data, plus a configuration system that validates settings on startup.
Available tools
execute_method
Execute any Odoo method with specified model, method name, and arguments.
search_employee
Search for employees in Odoo.
search_holidays
Search for holidays/time-off records in Odoo.
search_sales_orders
Search sales orders in Odoo.
create_sales_order
Create new sales orders in Odoo.
analyze_sales_performance
Analyze sales performance with trends and aggregates.
search_purchase_orders
Search purchase orders in Odoo.
create_purchase_order
Create new purchase orders in Odoo.
analyze_supplier_performance
Analyze supplier on-time delivery and performance.
get_stock_levels
Get current stock levels from inventory.
predict_stock_needs
Predict future stock needs.
get_financial_summary
Get a financial overview.
analyze_receivables
Analyze accounts receivable.
odoo_resources
List and access Odoo models and records via resource endpoints.