odoo-mcp-server
v1.1.0
Published
Model Context Protocol server for Odoo API with enhanced features
Downloads
40
Readme
Odoo MCP Server
Un serveur MCP (Model Context Protocol) qui intègre Odoo avec des fonctionnalités avancées pour la gestion des produits, des images, des prix fournisseurs et plus encore.
Fonctionnalités
Outils Génériques Odoo
search_records- Recherche d'enregistrements dans n'importe quel modèlecreate_record- Création d'enregistrementsupdate_record- Mise à jour d'enregistrementsdelete_record- Suppression d'enregistrementsexecute_method- Exécution de méthodes personnaliséesget_model_fields- Récupération des définitions de champs
Gestion des Images
- Import d'images depuis des URLs externes
- Conversion automatique en base64
- Génération de différentes tailles (128px, 256px, 512px, 1024px, 1920px)
- Validation des images et des URLs
- Optimisation pour Odoo
Gestion des Prix Fournisseurs
- Synchronisation avec Supabase
- Mise à jour des prix et quantités minimales
- Suivi des mises à jour avec statuts
- Support pour plusieurs fournisseurs
Ressources Humaines
search_employee- Recherche d'employés par nomsearch_holidays- Recherche de congés par période
Installation
npm install -g odoo-mcp-serverConfiguration
Variables d'Environnement Odoo
export ODOO_URL="https://your-odoo-instance.com"
export ODOO_DB="your-database"
export ODOO_USERNAME="your-username"
export ODOO_PASSWORD="your-password"Configuration Claude Desktop
Ajoutez dans claude_desktop_config.json :
{
"mcpServers": {
"odoo": {
"command": "npx",
"args": ["-y", "odoo-mcp-server"],
"env": {
"ODOO_URL": "https://your-odoo-instance.com",
"ODOO_DB": "your-database",
"ODOO_USERNAME": "your-username",
"ODOO_PASSWORD": "your-password"
},
"disabled": false,
"autoApprove": []
}
}
}Exemples d'Utilisation
Recherche de Produits
use_mcp_tool
server_name: odoo
tool_name: search_records
arguments: {
"model": "product.template",
"domain": [["sale_ok", "=", true]],
"fields": ["name", "list_price", "default_code"],
"limit": 10
}Import d'Image Produit
use_mcp_tool
server_name: odoo
tool_name: import_product_image
arguments: {
"product_code": "PROD001",
"image_url": "https://example.com/images/product.jpg",
"generate_all_sizes": true
}Synchronisation des Prix Fournisseurs
use_mcp_tool
server_name: odoo
tool_name: sync_supplier_prices
arguments: {
"supabase_connection": {
"url": "https://your-project.supabase.co",
"key": "your-api-key",
"table": "supplier_prices"
},
"product_mapping": {
"supabase_product_field": "product_code",
"odoo_product_field": "default_code"
},
"price_mapping": {
"price_field": "purchase_price",
"min_qty_field": "minimum_quantity",
"supplier_field": "supplier_id"
}
}Recherche d'Employés
use_mcp_tool
server_name: odoo
tool_name: search_employee
arguments: {
"name": "John",
"limit": 5
}Recherche de Congés
use_mcp_tool
server_name: odoo
tool_name: search_holidays
arguments: {
"start_date": "2025-01-01",
"end_date": "2025-12-31",
"employee_id": 42
}Formats des Paramètres
Domaine de Recherche
Le paramètre domain accepte plusieurs formats :
// Format liste
[["is_company", "=", true]]
// Format objet
{
"conditions": [
{
"field": "date_order",
"operator": ">=",
"value": "2025-03-01"
}
]
}
// Conditions multiples
[
["date_order", ">=", "2025-03-01"],
["date_order", "<=", "2025-03-31"]
]Images
- Formats supportés : JPEG, PNG, GIF
- Taille maximale : 10MB
- Tailles générées : 128px, 256px, 512px, 1024px, 1920px
- Les images sont automatiquement optimisées pour Odoo
Prix Fournisseurs
- Les prix sont synchronisés par lot
- Support pour les quantités minimales
- Possibilité de spécifier un fournisseur par défaut
- Suivi des mises à jour avec statuts de synchronisation
Développement
Installation des Dépendances
npm installBuild
npm run buildDéveloppement avec Watch Mode
npm run devLicence
ISC
