io.github.management-cmyk/odoo-mcp-connector
Query, report on, and optionally modify any Odoo ERP from Claude. Read-only by default.
ماذا يمكنك أن تفعل مع io.github.management-cmyk/odoo-mcp-connector؟
- 🔍 Generic access to any model — search, read, count, introspect fields, list models
- 📊 Ready-made business tools — overdue invoices, sales summary, low-stock products, top customers
- 🔒 Read-only by default — create/update/delete only when you opt in (
ODOO_ENABLE_WRITES=true) - 🔑 Your data, your machine — configured entirely through environment variables
التثبيت
أضف هذا إلى إعدادات MCP في عميلك (Claude Desktop: claude_desktop_config.json، وCursor: .cursor/mcp.json، ويستخدم VS Code وغيره الصيغة نفسها «mcpServers»).
odoo-mcp-connectorclaude mcp add odoo-mcp-connector -e 'ODOO_URL=<ODOO_URL>' -e 'ODOO_DB=<ODOO_DB>' -e 'ODOO_USERNAME=<ODOO_USERNAME>' -e 'ODOO_API_KEY=<your odoo_api_key>' -e 'ODOO_ENABLE_WRITES=<ODOO_ENABLE_WRITES>' -e 'ODOO_TIMEOUT_MS=<ODOO_TIMEOUT_MS>' -- npx -y odoo-mcp-connector@0.1.0
{
"mcpServers": {
"odoo-mcp-connector": {
"command": "npx",
"args": [
"-y",
"odoo-mcp-connector@0.1.0"
],
"env": {
"ODOO_URL": "<ODOO_URL>",
"ODOO_DB": "<ODOO_DB>",
"ODOO_USERNAME": "<ODOO_USERNAME>",
"ODOO_API_KEY": "<your odoo_api_key>",
"ODOO_ENABLE_WRITES": "<ODOO_ENABLE_WRITES>",
"ODOO_TIMEOUT_MS": "<ODOO_TIMEOUT_MS>"
}
}
}
}
متغيرات البيئة
ODOO_URLإلزامي Odoo base URL, e.g. https://your-company.odoo.comODOO_DBإلزامي Odoo database nameODOO_USERNAMEإلزامي Odoo login (email)ODOO_API_KEYإلزامي سري Odoo API key (or password)ODOO_ENABLE_WRITESSet to 'true' to allow create/update/delete. Default false (read-only).ODOO_TIMEOUT_MSPer-request timeout in milliseconds (default 30000).
التوثيق
مأخوذ من ملف README للمشروع على GitHub ويُحدَّث أسبوعيًا. تفتح الروابط على GitHub.
Odoo MCP Server
A Model Context Protocol server for Odoo. Connect Claude (or any MCP client) to your own Odoo ERP and query, report on, and optionally modify your data in natural language.
Works with any Odoo model. Safe by default: read-only unless you explicitly enable writes. Your credentials stay on your machine — nothing is stored or sent anywhere except your own Odoo instance.
Features
- 🔍 Generic access to any model — search, read, count, introspect fields, list models
- 📊 Ready-made business tools — overdue invoices, sales summary, low-stock products, top customers
- 🔒 Read-only by default — create/update/delete only when you opt in (
ODOO_ENABLE_WRITES=true) - 🔑 Your data, your machine — configured entirely through environment variables
Install
Add this to your MCP client config (e.g. Claude Desktop or Claude Code):
{
"mcpServers": {
"odoo": {
"command": "npx",
"args": ["-y", "odoo-mcp-connector"],
"env": {
"ODOO_URL": "https://your-company.odoo.com",
"ODOO_DB": "your-database",
"ODOO_USERNAME": "you@example.com",
"ODOO_API_KEY": "your-odoo-api-key"
}
}
}
}
Getting an Odoo API key
In Odoo: Settings → Users → (your user) → Account Security → New API Key. Paste the generated key into ODOO_API_KEY. (A password also works, but an API key is safer and revocable.)
Enabling writes
Read-only is the default. To let the model create, update, or delete records, add:
"ODOO_ENABLE_WRITES": "true"
⚠️ Odoo holds real business data. Enable writes only when you accept that the model can create, modify, or delete records — always within your Odoo user's own permissions.
Tools
Always available (read-only)
| Tool | Purpose |
|---|---|
odoo_search_read | Search + read records from any model |
odoo_read | Read records by ID |
odoo_count | Count records matching a domain |
odoo_fields | Introspect a model's fields (name, type, label) |
odoo_list_models | List available models |
odoo_overdue_invoices | Unpaid customer invoices past their due date |
odoo_sales_summary | Revenue + order count over a date range |
odoo_low_stock | Products at/below a quantity threshold |
odoo_top_customers | Top customers by invoiced revenue |
Only when ODOO_ENABLE_WRITES=true
| Tool | Purpose |
|---|---|
odoo_create | Create a record |
odoo_write | Update records by ID |
odoo_unlink | Delete records by ID (irreversible) |
odoo_call | Call an arbitrary model method |
Configuration reference
| Variable | Required | Default | Description |
|---|---|---|---|
ODOO_URL | yes | — | Your Odoo base URL |
ODOO_DB | yes | — | Database name |
ODOO_USERNAME | yes | — | Login (email) |
ODOO_API_KEY | yes | — | API key (or password) |
ODOO_ENABLE_WRITES | no | false | Set "true" to allow writes |
ODOO_TIMEOUT_MS | no | 30000 | Per-request timeout (ms) |
Development
npm install
npm test # vitest — fully mocked, no live Odoo needed
npm run build
License
MIT © Falak Sarhan Saade
الأسئلة الشائعة
ما هو io.github.management-cmyk/odoo-mcp-connector؟
Query, report on, and optionally modify any Odoo ERP from Claude. Read-only by default.
كيف أثبّت io.github.management-cmyk/odoo-mcp-connector؟
يعمل على جهازك. في Claude Code: claude mcp add odoo-mcp-connector -e 'ODOO_URL=<ODOO_URL>' -e 'ODOO_DB=<ODOO_DB>' -e 'ODOO_USERNAME=<ODOO_USERNAME>' -e 'ODOO_API_KEY=<your odoo_api_key>' -e 'ODOO_ENABLE_WRITES=<ODOO_ENABLE_WRITES>' -e 'ODOO_TIMEOUT_MS=<ODOO_TIMEOUT_MS>' -- npx -y odoo-mcp-connector@0.1.0. وفي العملاء الآخرين، الصق إعداد JSON من هذه الصفحة في إعدادات MCP الخاصة بهم.
هل يحتاج io.github.management-cmyk/odoo-mcp-connector إلى مفتاح API؟
نعم. يتطلب ODOO_URL, ODOO_DB, ODOO_USERNAME, ODOO_API_KEY، وتضبطها في إعداداته.
هل io.github.management-cmyk/odoo-mcp-connector مفتوح المصدر؟
نعم. شيفرته متاحة على GitHub بترخيص MIT.
من يصون io.github.management-cmyk/odoo-mcp-connector؟
ينشره management-cmyk. يدرجه AI.tn لكنه لا يصونه ولا يوصي به.
من سجل MCP الرسمي. الإدراج ليس توصية: راجع شيفرة الخادم وصلاحياته قبل منحه الوصول إلى بياناتك.