Agent API Key (Recomendado)
X-Agent-Api-Key: agnt_xxxPara agentes de IA autónomos. Crea una clave una vez — úsala sin sesión.
- • agent:read — navegación de catálogo
- • agent:cart — creación de carrito
- • agent:checkout — inicio de checkout
Todo lo que necesitas para integrar AgenticMCPStores en tu aplicación
Configura tu agente de IA para explorar productos, crear carritos e iniciar el checkout a través del protocolo MCP.
Añade AgenticMCPStores a la configuración MCP de tu agente. Sustituye {slug} por el slug de la tienda.
{
"mcpServers": {
"agenticmcpstores": {
"url": "https://agenticmcpstores.com/{slug}/mcp",
"headers": { "X-Agent-Api-Key": "agnt_tu_clave" }
}
}
}¿Sin clave? Usa la demo pública: https://agenticmcpstores.com/demo-store/mcp (sin auth, solo lectura)
Llama a search_products para explorar el catálogo. Filtra por categoría, rango de precio o disponibilidad.
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "search_products",
"arguments": { "query": "zapatillas running", "max_price": 200, "in_stock_only": true, "limit": 5 }
}
}Recomendado: solo proceder al carrito si el trustScore del merchant es ≥ 0.70
Usa create_cart para añadir artículos, luego preview_checkout para revisar totales, y complete_checkout para finalizar. Confirma siempre con el usuario antes del checkout.
// Paso 3a — crear carrito
{ "method": "tools/call", "params": { "name": "create_cart", "arguments": { "items": [{ "product_id": "prod_abc123", "quantity": 1 }] } } }
// Paso 3b — vista previa del checkout
{ "method": "tools/call", "params": { "name": "preview_checkout", "arguments": { "cart_id": "cart_xyz789" } } }
// Paso 3c — completar checkout (devuelve URL, no procesa pago)
{ "method": "tools/call", "params": { "name": "complete_checkout", "arguments": { "cart_id": "cart_xyz789" } } }complete_checkout devuelve una URL — el pago ocurre en la página segura del comercio. Nunca confirmes automáticamente sin aprobación del usuario.
¿Sin API key? Comienza con el endpoint de demo público. ¿Ya tienes clave? Baja a los ejemplos REST autenticados.
Sin registro ni clave — funciona ya. Usa protocolo MCP (JSON-RPC 2.0). Límite: 20 peticiones/min por IP.
curl https://agenticmcpstores.com/demo-store/mcp \
-X POST \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "search_products",
"arguments": { "query": "zapatillas running" }
}
}'API REST autenticada (requiere X-Agent-Api-Key)
curl
curl -X POST https://www.agenticmcpstores.com/api/v1/agent/search \
-H "X-Agent-Api-Key: agnt_tu_clave" \
-H "Content-Type: application/json" \
-d '{"query": "zapatillas running", "limit": 5}'Python
import requests
response = requests.post(
"https://www.agenticmcpstores.com/api/v1/agent/search",
headers={"X-Agent-Api-Key": "agnt_tu_clave"},
json={"query": "zapatillas running", "limit": 5}
)
data = response.json()JavaScript
const res = await fetch(
"https://www.agenticmcpstores.com/api/v1/agent/search",
{
method: "POST",
headers: {
"X-Agent-Api-Key": "agnt_tu_clave",
"Content-Type": "application/json"
},
body: JSON.stringify({ query: "zapatillas running", limit: 5 })
}
);
const data = await res.json();Dos métodos de autenticación según el tipo de integración.
X-Agent-Api-Key: agnt_xxxPara agentes de IA autónomos. Crea una clave una vez — úsala sin sesión.
Authorization: Bearer <token>Para usuarios autenticados. Obtén el token con POST /api/v1/auth/login.
# 1. Primero obtén el JWT
curl -X POST https://www.agenticmcpstores.com/api/v1/auth/login \
-d '{"email":"tu@email.com","password":"..."}' | jq .token
# 2. Crear Agent API Key (el texto plano se devuelve una sola vez — guárdalo de forma segura)
curl -X POST https://www.agenticmcpstores.com/api/v1/agent-keys \
-H "Authorization: Bearer <jwt>" \
-d '{"scopes":["agent:read","agent:cart","agent:checkout"]}'El endpoint MCP de demo-store es público (catálogo de solo lectura, JSON-RPC 2.0). El health check tampoco requiere autenticación.
cURL listo para ejecutar — copia y pega:
curl https://agenticmcpstores.com/demo-store/mcp \
-X POST -H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"tools/call","params":{"name":"search_products","arguments":{"query":"zapatillas"}}}'POST https://agenticmcpstores.com/demo-store/mcpGET https://www.agenticmcpstores.com/api/v1/health8 herramientas disponibles vía el endpoint MCP y la API REST. Todas requieren autenticación con X-Agent-Api-Key. Las herramientas de solo lectura (search, detail, compare, availability) no requieren confirmación humana — las de escritura siempre la requieren.
| Herramienta | Método | Ruta | Auth. Requerida | Confirmación Humana |
|---|---|---|---|---|
search_productsBúsqueda en todos los comercios | POST | /api/v1/agent/search | Yes | Never |
get_product_detailDatos completos de producto con políticas | GET | /api/v1/agent/products/{id} | Yes | Never |
compare_productsComparación de productos | POST | /api/v1/agent/compare | Yes | Never |
check_availabilityStock y precio en tiempo real | GET | /api/v1/agent/availability/{id} | Yes | Never |
create_cartCarrito con validación de stock | POST | /api/v1/agent/cart | Yes | Required |
complete_checkoutDevuelve URL de checkout — sin procesar pago | POST | /api/v1/agent/checkout | Yes | Required |
get_merchant_profileTrust score, nivel de verificación, políticas | GET | /api/v1/agent/merchants/{slug} | Yes | Never |
Suscríbete a eventos en Ajustes > Webhooks. Todos los payloads incluyen el header X-Webhook-Signature.
order.createdorder.status_changedcheckout.abandonedEjemplo de payload — order.created
{
"event": "order.created",
"timestamp": "2026-03-19T14:32:00Z",
"orderId": "ord_xyz123",
"merchantSlug": "zapatillas-pro",
"totalAmount": 124.99,
"currency": "EUR",
"status": "pending"
}Verificar firma HMAC-SHA256
Python
import hmac, hashlib
def verificar_webhook(body: bytes, firma: str, secreto: str) -> bool:
esperado = hmac.new(
secreto.encode(), body, hashlib.sha256
).hexdigest()
return hmac.compare_digest(esperado, firma)Node.js
import crypto from "crypto";
function verificarWebhook(body: Buffer, firma: string, secreto: string): boolean {
const esperado = crypto
.createHmac("sha256", secreto)
.update(body)
.digest("hex");
return crypto.timingSafeEqual(
Buffer.from(esperado),
Buffer.from(firma)
);
}Todos los endpoints de agente devuelven un sobre JSON consistente. Los registros de producto están diseñados para pasarse directamente al contexto de un LLM.
{
"success": true,
"data": [
{
"id": "prod_abc123",
"name": "Zapatilla Running Ultra Boost",
"price": 119.99,
"currency": "EUR",
"stock_status": "in_stock",
"merchant": {
"slug": "zapatillas-pro",
"trust_score": 0.82,
"verification_level": "STANDARD"
},
"policies": {
"return_window_days": 30,
"free_shipping_threshold": 75,
"shipping_estimate_days": "2-4"
}
}
],
"meta": {
"total": 48,
"page": 1,
"limit": 5
}
}Explora y prueba todos los endpoints con Swagger UI. Prueba solicitudes directamente desde tu navegador.
Abrir Swagger UIGET /api/docs HTTP/1.1 200 OK Swagger UI - Interactive API Documentation
La API usa autenticación Bearer con JWT. Obtén el token llamando a POST /api/v1/auth/login, luego inclúyelo en el header Authorization de las siguientes peticiones.
Sí. Cada tienda tiene un endpoint MCP único en /mcp/{store-slug}. Los agentes compatibles con MCP pueden conectarse para buscar productos, comprobar disponibilidad e iniciar flujos de checkout.
Tier gratuito: 100 solicitudes/min. Pro: 1.000/min. Enterprise: sin límite. Los headers X-RateLimit-Limit, X-RateLimit-Remaining y X-RateLimit-Reset aparecen en cada respuesta.
Shopify y WooCommerce tienen soporte nativo con sincronización automática. PrestaShop está soportada en beta vía la API del Webservice. Cualquier otra plataforma se integra mediante nuestra REST API enviando catálogo y pedidos manualmente.
Crea una clave con POST /api/v1/agent-keys usando tu JWT. El texto plano se devuelve una sola vez, guárdalo con seguridad. Las claves usan el formato agnt_xxx y admiten permisos: search, checkout y orders.
Sí. Las respuestas incluyen campos normalizados: nombre, descripción, precio, moneda, estado de stock, política de devoluciones y estimación de envío, listos para pasar al contexto de un LLM.
Registra una URL en Ajustes > Webhooks. Enviamos POST con JSON para los eventos: order.created, order.status_changed y checkout.abandoned. Verifica los payloads con la firma HMAC-SHA256 del header X-Webhook-Signature.
Sí. La spec OpenAPI 3.0 completa está en /api/openapi.json. Puedes importarla en Postman o Insomnia.