Card snapshot
postari.io
·
2026-06-23 10:47:08 UTC
·
a9bd8d9804a83a17fa1779b303c0ccaa06cf2fec9b921f6fbde8cd70e4785d8b
This is a frozen copy of the agent's agent-card.json as we observed it at the timestamp above. We capture a new snapshot every time the card's content hash changes. Useful for: forensic drift analysis, verifying downstream callers see the right version, reproducing routing decisions made historically.
{
"protocolVersion": "0.3.0",
"name": "Postari",
"description": "Email marketing y correo transaccional, AI-native. Genera y env\u00eda campa\u00f1as completas desde un brief, gestiona contactos/listas/etiquetas, dispara flujos, env\u00eda correos 1-a-1 (cotizaciones, recibos) y consulta m\u00e9tricas \u2014 todo operable por agentes.",
"url": "https://postari.io/api/mcp",
"preferredTransport": "mcp-streamable-http",
"additionalInterfaces": [
{
"transport": "mcp-streamable-http",
"url": "https://postari.io/api/mcp"
}
],
"version": "1.0.0",
"provider": {
"organization": "Postari",
"url": "https://postari.io"
},
"iconUrl": "https://postari.io/brand/postari-logo.png",
"documentationUrl": "https://postari.io/desarrolladores",
"privacyPolicyUrl": "https://postari.io/privacidad",
"termsOfServiceUrl": "https://postari.io/terminos",
"capabilities": {
"streaming": false,
"pushNotifications": true,
"stateTransitionHistory": false
},
"defaultInputModes": [
"application/json"
],
"defaultOutputModes": [
"application/json"
],
"securitySchemes": {
"bearer": {
"type": "http",
"scheme": "bearer",
"description": "API key del tenant: Authorization: Bearer ef_live_xxx (scopes read/write/send/admin). Tambi\u00e9n OAuth 2.1 + PKCE para conexi\u00f3n 1-clic (ver /.well-known/oauth-authorization-server)."
}
},
"security": [
{
"bearer": []
}
],
"skills": [
{
"id": "send_transactional_email",
"name": "send_transactional_email",
"description": "Env\u00eda un correo transaccional 1-a-1 (cotizaci\u00f3n, recibo, bienvenida, recordatorio) a UNA direcci\u00f3n, usando una plantilla y variables. S\u00edncrono. Requiere scope `send`.",
"tags": [
"write",
"sensitive"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json"
]
},
{
"id": "create_subscriber",
"name": "create_subscriber",
"description": "Crea o actualiza (upsert) un contacto/suscriptor. Si ya existe, lo actualiza sin duplicar.",
"tags": [
"write"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json"
]
},
{
"id": "get_subscriber",
"name": "get_subscriber",
"description": "Busca un contacto por su correo y devuelve sus datos, estado, etiquetas e historial b\u00e1sico.",
"tags": [
"read"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json"
]
},
{
"id": "update_subscriber",
"name": "update_subscriber",
"description": "Actualiza datos de un contacto existente (nombre, pa\u00eds, tel\u00e9fono, etiquetas).",
"tags": [
"write"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json"
]
},
{
"id": "list_lists",
"name": "list_lists",
"description": "Lista todas las listas de contactos del tenant con su nombre y conteo.",
"tags": [
"read"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json"
]
},
{
"id": "create_list",
"name": "create_list",
"description": "Crea una nueva lista de contactos.",
"tags": [
"write"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json"
]
},
{
"id": "add_subscriber_to_list",
"name": "add_subscriber_to_list",
"description": "A\u00f1ade un contacto (por email o contact_id) a una lista.",
"tags": [
"write"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json"
]
},
{
"id": "tag_subscribers",
"name": "tag_subscribers",
"description": "A\u00f1ade o quita una etiqueta a varios contactos (por emails o contact_ids).",
"tags": [
"write"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json"
]
},
{
"id": "trigger_flow",
"name": "trigger_flow",
"description": "Mete un contacto (por email o contact_id) en un flujo autom\u00e1tico para que reciba esa secuencia.",
"tags": [
"write",
"sensitive"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json"
]
},
{
"id": "account_stats",
"name": "account_stats",
"description": "M\u00e9tricas globales de la cuenta (enviados, entregados, aperturas \u00fanicas, clics \u00fanicos, bajas, rebotes) en un rango de fechas.",
"tags": [
"read"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json"
]
},
{
"id": "list_campaigns",
"name": "list_campaigns",
"description": "Lista las campa\u00f1as/correos del tenant. Filtrable por estado (draft, scheduled, sending, sent).",
"tags": [
"read"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json"
]
},
{
"id": "get_campaign_stats",
"name": "get_campaign_stats",
"description": "M\u00e9tricas reales de una campa\u00f1a (enviados, aperturas \u00fanicas/totales, clics, rebotes, bajas, ingresos).",
"tags": [
"read"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json"
]
},
{
"id": "launch_campaign",
"name": "launch_campaign",
"description": "AG\u00c9NTICA \u00b7 Lanza una campa\u00f1a de correo COMPLETA desde un brief en lenguaje natural. Postari GENERA el correo (asunto + dise\u00f1o con la voz y el color de marca del tenant), lo arma sobre una lista y devuelve un BORRADOR con preview (preview_html). Por defecto NO env\u00eda: para enviar de verdad, vuelve a llamar con los mismos campos + confirm_send:true (o scheduled_at para agendar). Es la forma de \"dile el objetivo y Postari lo logra\". Requiere scope `write` (borrador) o `send` (enviar).",
"tags": [
"write",
"sensitive"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json"
]
}
]
}