Files
odoo-expertos.com/blog/odoo-xml-rpc-hermes-agent.html
T

176 lines
14 KiB
HTML

<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Conecta Odoo con Hermes Agent vía XML-RPC — Guía completa | Odoo Expertos</title>
<meta name="description" content="Guía paso a paso para conectar Odoo Community con Hermes Agent usando XML-RPC. Sin middleware, sin MCP, sin n8n. Tu agente IA hablando directamente con tu ERP.">
<meta name="robots" content="index, follow">
<link rel="canonical" href="https://odoo-expertos.com/blog/odoo-xml-rpc-hermes-agent.html">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/npm/tailwindcss@2.2.19/dist/tailwind.min.css" rel="stylesheet">
<meta property="og:type" content="article">
<meta property="og:title" content="Conecta Odoo con Hermes Agent vía XML-RPC">
<meta property="og:description" content="Guía paso a paso para conectar Odoo con Hermes Agent usando XML-RPC.">
<meta property="article:published_time" content="2026-08-07">
<meta property="article:tag" content="Guía Técnica">
<meta property="article:tag" content="XML-RPC">
<meta property="article:tag" content="Hermes Agent">
<meta property="article:tag" content="API">
<meta name="twitter:card" content="summary_large_image">
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "Conecta Odoo con Hermes Agent vía XML-RPC — Guía completa",
"description": "Guía paso a paso para conectar Odoo Community con Hermes Agent usando XML-RPC. Sin middleware, sin MCP, sin n8n.",
"author": {"@type": "Organization", "name": "Odoo Expertos", "url": "https://odoo-expertos.com"},
"publisher": {"@type": "Organization", "name": "Odoo Expertos", "logo": {"@type": "ImageObject", "url": "https://odoo-expertos.com/favicon.svg?v=2"}},
"datePublished": "2026-08-07",
"dateModified": "2026-08-07",
"mainEntityOfPage": {"@type": "WebPage", "@id": "https://odoo-expertos.com/blog/odoo-xml-rpc-hermes-agent.html"}
}
</script>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{"@type": "ListItem", "position": 1, "name": "Inicio", "item": "https://odoo-expertos.com/"},
{"@type": "ListItem", "position": 2, "name": "Blog", "item": "https://odoo-expertos.com/#blog"},
{"@type": "ListItem", "position": 3, "name": "Conecta Odoo con Hermes Agent vía XML-RPC", "item": "https://odoo-expertos.com/blog/odoo-xml-rpc-hermes-agent.html"}
]
}
</script>
<link rel="icon" type="image/svg+xml" href="/favicon.svg?v=2">
<style>
*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;background:#f8fafc;color:#0f172a;-webkit-font-smoothing:antialiased;}
.container{max-width:1200px;margin:0 auto;padding:0 24px;}
.container--narrow{max-width:740px;}
.glass-nav{background:rgba(248,250,252,0.85);backdrop-filter:blur(16px);border-bottom:1px solid rgba(0,0,0,0.05);}
.btn-primary{display:inline-flex;align-items:center;gap:8px;padding:14px 32px;background:linear-gradient(135deg,#4338ca,#3b82f6);color:#fff;border-radius:12px;font-weight:600;font-size:0.9375rem;border:none;cursor:pointer;transition:all 0.3s;text-decoration:none;}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(67,56,202,0.25);}
article h1{font-size:clamp(2rem,3.5vw,3rem);font-weight:800;line-height:1.1;letter-spacing:-0.03em;color:#0f172a;margin-bottom:1.5rem;}
article h2{font-size:1.375rem;font-weight:700;color:#0f172a;margin-top:2.5rem;margin-bottom:1rem;}
article h3{font-size:1.125rem;font-weight:700;color:#0f172a;margin-top:1.5rem;margin-bottom:0.75rem;}
article p{font-size:1rem;line-height:1.8;color:#334155;margin-bottom:1.5rem;max-width:65ch;}
article ul,article ol{margin-bottom:1.5rem;padding-left:1.5rem;}
article li{font-size:1rem;line-height:1.8;color:#334155;margin-bottom:0.5rem;}
article a{color:#4338ca;font-weight:500;}
article a:hover{text-decoration:underline;}
article pre{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:12px;padding:20px;overflow-x:auto;margin-bottom:1.5rem;font-size:0.875rem;line-height:1.6;font-family:'SFMono-Regular',Consolas,monospace;color:#0f172a;}
article code{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;padding:2px 8px;font-size:0.875em;font-family:'SFMono-Regular',Consolas,monospace;color:#4338ca;}
article pre code{background:none;border:none;padding:0;color:#0f172a;}
.meta{display:flex;align-items:center;gap:1.5rem;color:#64748b;font-size:0.875rem;padding-bottom:1.5rem;border-bottom:1px solid #e2e8f0;margin-bottom:2rem;flex-wrap:wrap;}
.badge{display:inline-block;background:rgba(67,56,202,0.1);color:#4338ca;font-size:0.75rem;font-weight:600;padding:4px 10px;border-radius:100px;margin-bottom:1rem;letter-spacing:0.02em;text-transform:uppercase;}
.video-wrapper{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;border-radius:16px;margin-bottom:2rem;background:#0f172a;}
.video-wrapper iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:0;}
</style>
<script defer data-domain="odoo-expertos.com" src="https://plausible.odoo4projects.com/js/script.file-downloads.outbound-links.pageview-props.tagged-events.js"></script>
<script>window.plausible = window.plausible || function() { (window.plausible.q = window.plausible.q || []).push(arguments) }</script>
</head>
<body>
<nav class="glass-nav fixed top-0 left-0 right-0 z-50" style="height:64px;">
<div class="container h-full flex items-center justify-between">
<a href="/" class="flex items-center gap-2.5" style="text-decoration:none;">
<img src="/favicon.svg?v=2" alt="Odoo Expertos" width="28" height="28" style="display:block;">
<span style="font-weight:700;font-size:1rem;color:#0f172a;letter-spacing:-0.3px;">Odoo <span style="font-weight:300;color:#64748b;">Expertos</span></span>
</a>
<div class="hidden md:flex items-center gap-8">
<a href="/#blog" style="color:#475569;font-size:0.875rem;font-weight:500;text-decoration:none;transition:color 0.2s;" onmouseover="this.style.color='#4338ca'" onmouseout="this.style.color='#475569'">Blog</a>
<a href="/#expertos" style="color:#475569;font-size:0.875rem;font-weight:500;text-decoration:none;transition:color 0.2s;" onmouseover="this.style.color='#4338ca'" onmouseout="this.style.color='#475569'">Expertos</a>
<a href="/about.html" style="color:#475569;font-size:0.875rem;font-weight:500;text-decoration:none;">Sobre Nosotros</a>
</div>
</div>
</nav>
<div style="padding-top:120px;padding-bottom:80px;">
<div class="container container--narrow">
<article>
<span class="badge">Guía Técnica</span>
<h1>Conecta Odoo con Hermes Agent vía XML-RPC</h1>
<div class="meta">
<span>Odoo Expertos</span>
<span>7 agosto 2026</span>
<span>6 min lectura</span>
</div>
<div class="video-wrapper">
<iframe src="https://www.youtube.com/embed/odoo-hermes-xmlrpc" title="Odoo + AI Agent en 3 minutos (XML-RPC)" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen loading="lazy"></iframe>
</div>
<p>Imagina poder preguntarle a un asistente de IA cosas como <em>"¿cuántos clientes tenemos en CRM?"</em> o <em>"crea una orden de venta para el cliente X"</em> y que responda en tiempo real desde tu Odoo. Eso es exactamente lo que permite <strong>Hermes Agent</strong> conectado a Odoo vía XML-RPC, sin middleware, sin servidores MCP y sin pipelines de n8n. Solo tu agente y tu ERP hablando directamente.</p>
<p>Esta es la primera y más simple de las <strong>tres formas de integrar Odoo con Hermes Agent</strong> —llamadas directas a la API XML-RPC. Es la ruta más rápida: un salto, un bloque de configuración, y una cosa menos que puede fallar. Para consultas simples, prototipos y demostraciones, es la elección correcta.</p>
<h2>Qué vas a construir</h2>
<p>Al final de esta guía tendrás un agente Hermes que puede consultar y manipular datos de tu Odoo en tiempo real usando XML-RPC.</p>
<h2>Prerrequisitos</h2>
<ul>
<li>Una instancia de Odoo (Community o Enterprise) con acceso de administrador</li>
<li>Hermes Agent instalado. Si aún no lo tienes, sigue la <a href="https://derez.ai/blog/posts/odoo-xml-rpc-hermes-agent.html" rel="noopener" target="_blank">guía de instalación en derez.ai</a></li>
<li>Acceso a la terminal o interfaz de Hermes</li>
</ul>
<h2>Paso 1 — Generar una clave API de Odoo</h2>
<p>Ve a <strong>Ajustes → Usuarios → Técnico</strong> en tu Odoo. Selecciona tu usuario y, en la pestaña <strong>Claves API</strong>, genera una nueva clave. Asígnale un nombre descriptivo como <code>hermes-agent</code>. Copia la clave generada: la necesitarás en el siguiente paso.</p>
<h2>Paso 2 — Añadir la conexión a Hermes</h2>
<p>En tu archivo de configuración de Hermes, añade un bloque de conexión Odoo. La estructura básica incluye la URL de tu instancia, el nombre de la base de datos, el usuario y la clave API:</p>
<pre><code>url: "https://tu-instancia.odoo.com"
db: "nombre-de-tu-base-de-datos"
user: "tu@email.com"
api_key: "tu-clave-api-generada"
readonly: true</code></pre>
<p>El parámetro <code>readonly: true</code> es recomendable si solo quieres realizar consultas. Para operaciones de escritura, cámbialo a <code>false</code>.</p>
<h2>Paso 3 — Darle el prompt de conexión a tu agente</h2>
<p>Hermes Agent necesita un prompt que le indique cómo conectarse a tu Odoo. El prompt debe incluir las credenciales y el alcance de las operaciones permitidas. Puedes usar el prompt de ejemplo que encontrarás en la <a href="https://derez.ai/blog/posts/odoo-xml-rpc-hermes-agent.html" rel="noopener" target="_blank">guía completa en derez.ai</a>.</p>
<h2>Paso 4 — Iniciar Hermes y verificar</h2>
<p>Inicia Hermes Agent y haz tu primera consulta. Por ejemplo, pregúntale: <em>"¿Cuántos clientes hay en CRM?"</em>. Si todo está configurado correctamente, tu agente responderá con el número de registros.</p>
<pre><code>&gt; ¿Cuántos clientes tenemos en CRM?
Total: 8 clientes en CRM</code></pre>
<h2>Qué puedes hacer ahora</h2>
<p>Una vez conectado, tu agente puede:</p>
<ul>
<li>Consultar clientes, productos, pedidos y facturas</li>
<li>Crear y actualizar registros en cualquier modelo</li>
<li>Ejecutar búsquedas complejas con filtros en múltiples modelos</li>
<li>Automatizar tareas rutinarias desde una sola conversación</li>
</ul>
<h2>Seguridad primero</h2>
<p>La conexión XML-RPC expone tu Odoo directamente al agente. Es importante usar <strong>claves API específicas</strong> para cada integración, activar <strong>readonly</strong> cuando sea posible, y limitar el acceso del agente a los modelos estrictamente necesarios.</p>
<h2>¿Por qué XML-RPC?</h2>
<p>La vía directa por XML-RPC es el camino más rápido: un salto, un bloque de configuración, una cosa menos que puede fallar. Sin servidores MCP que mantener, sin flujos de n8n que depurar. Para consultas simples, prototipos y experimentación, es la elección correcta. Para integraciones más complejas, puedes explorar los otros dos enfoques (MCP y n8n) en el <a href="https://derez.ai" rel="noopener" target="_blank">blog de derez.ai</a>.</p>
<p style="margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e2e8f0;font-size:0.875rem;color:#64748b;">Este artículo está basado en la guía original de <a href="https://derez.ai/blog/posts/odoo-xml-rpc-hermes-agent.html" rel="noopener" target="_blank">derez.ai</a>.</p>
</article>
</div>
</div>
<footer style="background:#0f172a;padding:60px 0 32px;margin-top:40px;">
<div class="container">
<div class="flex items-center gap-3 mb-8">
<img src="/favicon.svg?v=2" alt="Odoo Expertos" width="24" height="24" style="display:block;">
<span style="font-weight:700;color:#fff;letter-spacing:-0.3px;">Odoo <span style="font-weight:300;color:#64748b;">Expertos</span></span>
</div>
<div style="display:flex;flex-wrap:wrap;gap:48px;margin-bottom:32px;">
<div><h4 style="color:#94a3b8;font-size:0.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:12px;">Secciones</h4><div style="display:flex;flex-direction:column;gap:8px;"><a href="/#blog" style="color:#64748b;font-size:0.875rem;text-decoration:none;">Blog</a><a href="/#expertos" style="color:#64748b;font-size:0.875rem;text-decoration:none;">Expertos</a></div></div>
<div><h4 style="color:#94a3b8;font-size:0.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:12px;">Partner</h4><div style="display:flex;flex-direction:column;gap:8px;"><a href="https://ODOO4projects.com/?utm_campaign=expertos" style="color:#64748b;font-size:0.875rem;text-decoration:none;" rel="nofollow sponsored" target="_blank">ODOO4projects &mdash; ODOO Community Hosting</a><a href="https://derez.ai" style="color:#64748b;font-size:0.875rem;text-decoration:none;" target="_blank">Derez AI &mdash; Agent Hosting</a><a href="https://oca-py.org" style="color:#64748b;font-size:0.875rem;text-decoration:none;" target="_blank">OCA Paraguay &mdash; Comunidad Odoo</a></div></div>
<div><h4 style="color:#94a3b8;font-size:0.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:12px;">Empresa</h4><div style="display:flex;flex-direction:column;gap:8px;"><a href="/about.html" style="color:#64748b;font-size:0.875rem;text-decoration:none;">Sobre nosotros</a><a href="/contact.html" style="color:#64748b;font-size:0.875rem;text-decoration:none;">Contacto</a></div></div>
</div>
<div style="border-top:1px solid #1e293b;padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;"><span style="color:#475569;font-size:0.8125rem;">&copy; 2026 Odoo Expertos. Independiente y no afiliado a Odoo S.A.</span></div>
</div>
</footer>
</body>
</html>