Odoo MCP Server

by tuanle96
Verified

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Provides comprehensive access to Odoo ERP systems, allowing interaction with Odoo models, records, and methods. Enables searching, reading, creating, updating, and deleting records, as well as executing custom methods on any Odoo model.

  • Implements XML-RPC communication for secure connections to Odoo instances, enabling the transmission of data between the MCP server and Odoo systems.

Servidor MCP de Odoo

Una implementación de servidor MCP que se integra con los sistemas ERP de Odoo, lo que permite que los asistentes de IA interactúen con los datos y la funcionalidad de Odoo a través del Protocolo de Contexto de Modelo.

Características

  • Integración completa con Odoo : acceso completo a los modelos, registros y métodos de Odoo
  • Comunicación XML-RPC : Conexión segura a instancias de Odoo a través de XML-RPC
  • Configuración flexible : Compatibilidad con archivos de configuración y variables de entorno
  • Sistema de patrones de recursos : acceso basado en URI a las estructuras de datos de Odoo
  • Manejo de errores : mensajes de error claros para problemas comunes de la API de Odoo
  • Operaciones sin estado : ciclo limpio de solicitud/respuesta para una integración confiable

Herramientas

  • método_de_ejecución
    • Ejecutar un método personalizado en un modelo de Odoo
    • Entradas:
      • model (cadena): el nombre del modelo (por ejemplo, 'res.partner')
      • method (cadena): Nombre del método a ejecutar
      • args (matriz opcional): argumentos posicionales
      • kwargs (objeto opcional): argumentos de palabras clave
    • Devuelve: Diccionario con el resultado del método y el indicador de éxito
  • búsqueda_empleado
    • Buscar empleados por nombre
    • Entradas:
      • name (cadena): el nombre (o parte del nombre) que se buscará
      • limit (número opcional): el número máximo de resultados a devolver (predeterminado 20)
    • Devuelve: Objeto que contiene un indicador de éxito, una lista de nombres e identificaciones de empleados coincidentes y cualquier mensaje de error
  • buscar_vacaciones
    • Busca días festivos dentro de un rango de fechas específico
    • Entradas:
      • start_date (cadena): Fecha de inicio en formato AAAA-MM-DD
      • end_date (cadena): Fecha de finalización en formato AAAA-MM-DD
      • employee_id (número opcional): ID de empleado opcional para filtrar días festivos
    • Devuelve: Objeto que contiene un indicador de éxito, una lista de días festivos encontrados y cualquier mensaje de error

Recursos

  • odoo://modelos
    • Enumera todos los modelos disponibles en el sistema Odoo
    • Devuelve: matriz JSON de información del modelo
  • odoo://modelo/{nombre_del_modelo}
    • Obtenga información sobre un modelo específico, incluidos los campos
    • Ejemplo: odoo://model/res.partner
    • Devuelve: objeto JSON con metadatos del modelo y definiciones de campo
  • odoo://registro/{nombre_del_modelo}/{id_del_registro}
    • Obtener un registro específico por ID
    • Ejemplo: odoo://record/res.partner/1
    • Devuelve: objeto JSON con datos de registro
  • odoo://search/{nombre_del_modelo}/{dominio}
    • Buscar registros que coincidan con un dominio
    • Ejemplo: odoo://search/res.partner/[["is_company","=",true]]
    • Devuelve: matriz JSON de registros coincidentes (limitada a 10 de forma predeterminada)

Configuración

Configuración de la conexión a Odoo

  1. Cree un archivo de configuración llamado odoo_config.json :
{ "url": "https://your-odoo-instance.com", "db": "your-database-name", "username": "your-username", "password": "your-password-or-api-key" }
  1. Alternativamente, utilice variables de entorno:
    • ODOO_URL : URL de su servidor Odoo
    • ODOO_DB : Nombre de la base de datos
    • ODOO_USERNAME : Nombre de usuario de inicio de sesión
    • ODOO_PASSWORD : Contraseña o clave API
    • ODOO_TIMEOUT : Tiempo de espera de conexión en segundos (predeterminado: 30)
    • ODOO_VERIFY_SSL : Si se deben verificar los certificados SSL (valor predeterminado: verdadero)
    • HTTP_PROXY : Fuerza la conexión ODOO a utilizar un proxy HTTP

Uso con Claude Desktop

Agregue esto a su claude_desktop_config.json :

{ "mcpServers": { "odoo": { "command": "python", "args": [ "-m", "odoo_mcp" ], "env": { "ODOO_URL": "https://your-odoo-instance.com", "ODOO_DB": "your-database-name", "ODOO_USERNAME": "your-username", "ODOO_PASSWORD": "your-password-or-api-key" } } } }

Estibador

{ "mcpServers": { "odoo": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "ODOO_URL", "-e", "ODOO_DB", "-e", "ODOO_USERNAME", "-e", "ODOO_PASSWORD", "mcp/odoo" ], "env": { "ODOO_URL": "https://your-odoo-instance.com", "ODOO_DB": "your-database-name", "ODOO_USERNAME": "your-username", "ODOO_PASSWORD": "your-password-or-api-key" } } } }

Instalación

Paquete Python

pip install odoo-mcp

Ejecución del servidor

# Using the installed package odoo-mcp # Using the MCP development tools mcp dev odoo_mcp/server.py # With additional dependencies mcp dev odoo_mcp/server.py --with pandas --with numpy # Mount local code for development mcp dev odoo_mcp/server.py --with-editable .

Construir

Compilación de Docker:

docker build -t mcp/odoo:latest -f Dockerfile .

Pautas de formato de parámetros

Al utilizar las herramientas MCP para Odoo, preste atención a estas pautas de formato de parámetros:

  1. Parámetro de dominio :
    • Se admiten los siguientes formatos de dominio:
      • Formato de lista: [["field", "operator", value], ...]
      • Formato del objeto: {"conditions": [{"field": "...", "operator": "...", "value": "..."}]}
      • Cadena JSON de cualquier formato
    • Ejemplos:
      • Formato de lista: [["is_company", "=", true]]
      • Formato del objeto: {"conditions": [{"field": "date_order", "operator": ">=", "value": "2025-03-01"}]}
      • Varias condiciones: [["date_order", ">=", "2025-03-01"], ["date_order", "<=", "2025-03-31"]]
  2. Parámetros de campos :
    • Debe ser una matriz de nombres de campos: ["name", "email", "phone"]
    • El servidor intentará analizar las entradas de cadena como JSON

Licencia

Este servidor MCP tiene licencia MIT.

-
security - not tested
A
license - permissive license
-
quality - not tested

Una implementación de servidor MCP que se integra con los sistemas ERP de Odoo, lo que permite que los asistentes de IA interactúen con los datos y la funcionalidad de Odoo a través del Protocolo de Contexto de Modelo.

  1. Features
    1. Tools
      1. Resources
        1. Configuration
          1. Odoo Connection Setup
          2. Usage with Claude Desktop
          3. Docker
        2. Installation
          1. Python Package
          2. Running the Server
        3. Build
          1. Parameter Formatting Guidelines
            1. License
              ID: xmb120fapj