Saltar al contenido
pcreative Commerce

Que ChatGPT y Claude puedan vender tus productos

La tienda puede hablar el idioma de los agentes de IA (el protocolo MCP).

La tienda puede hablar el idioma de los agentes de IA (el protocolo MCP). Con esto, Claude, ChatGPT o Perplexity pueden buscar en tu catálogo y recomendar productos concretos, con su precio y su stock reales.

El enlace de compra apunta siempre a tu web. Ganas el canal sin ceder la caja ni pagar un porcentaje por venta a nadie. Esa es toda la idea.

Está apagado hasta que lo enciendes

Una tienda recién instalada no contesta a los agentes. /mcp es una dirección pública a la que puede llamar cualquiera, y una búsqueda por significado cuesta algo de dinero, así que solo se abre cuando tú lo decides.

Para encenderlo:

  1. Pon al menos una clave de un proveedor de IA en el .env del backend y reinicia (las mismas que en IA → Conectores: ANTHROPIC_API_KEY, OPENAI_API_KEY, GOOGLE_API_KEY, MISTRAL_API_KEY, OPENROUTER_API_KEY, VOYAGE_API_KEY o COHERE_API_KEY).
  2. En el panel, entra en IA → Agentes y activa Dejar que los agentes de IA lean el catálogo.

Sin ninguna clave el interruptor sale gris, y el backend también lo niega («No se puede encender sin una clave de un proveedor de IA»). El ajuste se guarda con los de la tienda (store.metadata.mcp.activo), no en el .env.

Asegúrate también de tener puesto a dónde mandar a comprar:

STOREFRONT_URL=https://mitienda.com
STOREFRONT_RUTA_PRODUCTO=producto     # /producto/<handle>

Si tu tema usa otra ruta, cámbiala o los enlaces darán 404.

Conectarlo

Con el servidor encendido, IA → Agentes enseña la dirección que darle al agente. Es el /mcp del backend, por ejemplo https://mitienda.com/mcp. En Claude Desktop, en la configuración de servidores MCP:

{
  "mcpServers": {
    "mi-tienda": {
      "url": "https://mitienda.com/mcp"
    }
  }
}

Cada agente lo configura a su manera, pero todos piden lo mismo: esa dirección.

Qué puede hacer un agente

Tres cosas, y ninguna toca nada:

HerramientaPara qué
buscar_productosBuscar en el catálogo por lo que pida el cliente
ver_productoLa ficha completa de uno: precio, stock, descripción
informacion_tiendaNombre, moneda, zonas de envío y cómo comprar

Solo lectura. Un agente no puede crear pedidos, ni ver clientes, ni tocar precios. Lo único que sale de aquí es el catálogo que ya es público en tu web.

Precios

Cada variante lleva precio: { "amount": 19.99, "currency": "eur" }: la misma forma que el resto de la API pública. amount es un decimal en unidades mayores (19.99, no 1999) y currency es la moneda por defecto de tu tienda en ISO 4217, en minúsculas. Una tienda que vende en dólares contesta en dólares. Una variante sin precio en esa moneda sale con precio: null.

Límites y gasto

  • Por dirección. Cada IP puede mandar 30 mensajes por minuto (cuenta cada mensaje de un lote, y un lote lleva como mucho 20). Pasado eso contesta 429. El número se cambia con PCC_MCP_POR_MINUTO en el .env del backend.
  • El tope diario de IA. Una búsqueda por significado convierte la pregunta en un vector, y eso cuesta dinero. Se apunta en IA → Gasto como Búsqueda y suma al tope diario de la tienda. Pasado el tope, los agentes siguen teniendo respuesta, buscada solo por palabras.

Cuando está apagado

/mcp contesta 403 y no ejecuta ninguna herramienta:

{
  "jsonrpc": "2.0",
  "id": 1,
  "error": {
    "code": -32001,
    "message": "El servidor para agentes de IA de esta tienda está apagado. …",
    "data": { "motivo": "desactivado" }
  }
}

motivo es desactivado (apagado en el panel) o sin_claves (no hay ninguna clave de IA en el .env, así que no puede estar encendido). El mensaje sale en el idioma que pida el agente con Accept-Language (inglés o español).

Sin sesión, a propósito

El protocolo permite mantener sesión entre peticiones. Aquí cada una se basta sola, y no hace falta entrar con ninguna cuenta.

Guardar sesiones obligaría a limpiarlas, a compartirlas entre procesos si hay más de uno y a decidir qué pasa cuando se pierden — complejidad entera para algo que solo lee catálogo público.

Comprobar que funciona

curl -X POST https://mitienda.com/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

Debe responder con las tres herramientas. Un 403 es que está apagado (mira motivo). Un 404 es que la ruta no está publicada en tu proxy: /mcp tiene que llegar al backend.

Lo que conviene tener en cuenta

Un agente recomienda lo que entiende. Si tus fichas dicen «Modelo XR-200» y nada más, ningún agente sabrá para qué sirve.

Ahí es donde la IA que redacta fichas se paga sola: no por escribir bonito, sino porque una ficha que explica qué resuelve el producto es la que un agente puede recomendar.