Llevá SalesPilot a tu código y a tu agente.

Preguntale a tu tienda cómo viene vendiendo desde Claude, integrá recomendaciones con un SDK que nunca corta tu página y medí cada venta con la API. Todo documentado para personas y para agentes, en español, inglés y portugués.

Tu tienda, en Claude

claude mcp add --transport http salespilot https://salespilot.crossup.ai/mcp/merchants

Recomendaciones en tu tienda

npm install @crossup/storefront

La documentación, para tu agente

https://docs.crossup.ai/llms.txt

SalesPilot en Claude

Tu tienda, también en Claude.

SalesPilot es el conector de CrossUp para Claude: le preguntás a tu tienda cómo le va y te contesta con tus números. Se agrega con una URL, se autoriza con tu sesión de CrossUp y no hay ninguna clave que copiar.

En claude.ai, Claude Desktop o el celular

  1. Abrí Personalizar → Conectores → Agregar → Conector personalizado.
  2. Nombre: SalesPilot. Dirección del servidor: la URL de abajo. Tocá Agregar y después Conectar.
  3. Claude te trae a CrossUp: entrá con tu cuenta, revisá qué va a poder hacer y tocá Permitir.
https://salespilot.crossup.ai/mcp/merchants

En Claude Code

claude mcp add --transport http salespilot https://salespilot.crossup.ai/mcp/merchants

Después escribí /mcp, elegí salespilot y tocá Authenticate.

Cursor y los clientes que no hacen OAuth usan una clave de agente (sak_…) en el header Authorization.

Qué podés preguntarle

  • «¿Cómo me fue este ciclo?»
  • «¿Qué momento rinde más?»
  • «¿Qué vendió más SalesPilot en el checkout?»
  • «Apagá SalesPilot en la página de producto.»
  • 24 herramientas: métricas, el reporte de ventas, los momentos, SalesPilot prendido o apagado y tu feedback.
  • OAuth 2.1 con PKCE y registro dinámico de clientes: sin claves que copiar ni pegar.
  • Antes de apagar SalesPilot te muestra qué cambia y te pide confirmar. Crear o editar sugerencias sigue en el panel.
  • La conexión aparece en API & Agentes → Conexiones activas, y la revocás cuando quieras.

Storefront SDK

Recomendaciones en tu tienda, sin riesgo para tu página.

Para tiendas VTEX, propias o headless: @crossup/storefront pide recomendaciones, lleva el visitante y manda las señales agrupadas. Si CrossUp no contesta, tu tienda sigue vendiendo.

  • 0.1.0 · MIT · con tipos · sin dependencias de terceros.
  • Corre en el navegador y en el servidor.
  • La clave spk_ es pública por diseño y queda atada a tu dominio: la tienda sale de la clave.
  • tryGetRecommendations devuelve null en vez de tirar un error, y track.* nunca espera la red.

¿Servidor o conector? @crossup/sdk es el cliente de la API, generado desde el contrato OpenAPI.

Instalá

npm install @crossup/storefront

Pedí y avisá

import { createStorefront } from "@crossup/storefront";

const crossup = createStorefront({
  apiKey: "spk_…",       // tu clave pública de storefront
  connectionId: "cn_…",  // la conexión de tu tienda
});

const decision = await crossup.tryGetRecommendations({
  surface: "pdp",
  placementKey: "pdp-related",
  contextItemId: item.id,
});
// null si algo falló: tu página sigue igual

if (decision) crossup.track.impression(decision); // el bloque se vio

API v1

Dos llamadas alcanzan.

Pedí una recomendación y registrá qué hizo el comprador con ella. Con las dos, cada venta queda atribuida, orden por orden.

Operaciones de la API v1
MétodoRutaPara qué
POST/v1/recommendationsPedí qué recomendar en un momento de la compra.
POST/v1/connections/{connection_id}/storefront-signalsRegistrá lo que hizo el comprador, hasta 50 señales por lote.
GET/v1/catalog/items/{item_id}Leé un producto del catálogo, con variantes y disponibilidad.
POST/v1/connections/{connection_id}/ingest-signalsPara conectores: mandá los eventos de catálogo de tu plataforma.

Tu primera recomendación

curl -X POST "$CROSSUP_BASE_URL/v1/recommendations" \
  -H "Authorization: Bearer $CROSSUP_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "connection_id": "cn_…",
    "surface": "pdp",
    "placement_key": "pdp-related",
    "context_item_id": "itm_…"
  }'

La URL base está en la referencia de la API; la clave y el connection_id los generás en tu panel.

Autenticación
Authorization: Bearer spk_…
Cuota
60 pedidos por minuto por clave; ante un 429, Retry-After.
Errores
Problem Details (RFC 9457), con once tipos documentados.
Contrato
OpenAPI 3.1, con playground en la documentación.
surface
pdpcartcarouselin-checkoutsuccess-page

¿Sos agencia? La misma integración en cada tienda, con una clave por tienda. Conocé el programa para agencias

Para tu agente

Tu agente integra. Vos revisás el diff.

Pasale a Claude, Cursor o Codex tu clave de storefront y la documentación: verifica la clave, escribe el snippet y prueba una recomendación y una señal. Dársela es seguro: la clave de storefront es pública y acotada.

  1. llms.txtToda la documentación en un archivo, escrita para modelos.docs.crossup.ai/llms.txt
  2. La skill de integradorEl recorrido de integración con sus verificaciones, en un archivo que dejás en tu repo..claude/skills/crossup/SKILL.md
  3. La evidenciaUn decision_id y un signal_id con status accepted: lo mismo que le pedirías a una persona.decision_id · signal_id
Un pedido para arrancar
Integrá CrossUp en la página de producto de esta tienda. Clave de storefront: spk_… · connection_id: cn_… · Documentación: https://docs.crossup.ai/llms.txt. Cuando termines, mostrame el decision_id de una decisión de prueba y el signal_id aceptado.

Todo lo que necesitás para integrar CrossUp.

Guías, referencia de la API con playground y novedades, escritas para personas y para agentes. En español, inglés y portugués.