GetAff
Artículo

Reclutar afiliados desde Claude, ChatGPT o Cursor con el servidor MCP de GetAff

Todo lo que hacen las pantallas de captación de socios de GetAff está disponible también como herramientas que un asistente de IA puede invocar, a través del Model Context Protocol (MCP). Usted lo pide con sus propias palabras —«busca creadores de bodas franceses con entre 10 000 y 100 000 seguidores para mi sitio»— y el asistente elige las herramientas, las ejecuta y le informa del resultado.

Este artículo recorre la conexión, las instrucciones que funcionan, el orden en que se encadenan las herramientas y las salvaguardas que impiden que un asistente gaste créditos o envíe correos sin su consentimiento explícito.

Actualizado el

Qué necesita

  • Una cuenta de GetAff con al menos un sitio y su programa de afiliados: cada herramienta de búsqueda de socios trabaja sobre un sitio, identificado por su siteId.
  • Un cliente MCP: claude.ai, Claude Desktop, Claude Code, ChatGPT, Cursor, VS Code o cualquier cliente compatible con Streamable HTTP.
  • Para los pasos de pago (búsquedas en vivo en los datos de creadores, búsquedas de correos): el plan Pro. Las fuentes gratuitas —el índice de creadores de GetAff, los perfiles parecidos a su preselección y quienes promocionan a sus competidores— funcionan en todos los planes.
  • Para la prospección: un buzón de Gmail conectado en la aplicación y los ajustes del remitente completos (nombre, empresa, dirección postal).

El servidor vive en una única URL, https://www.getaff.org/api/mcp. El descubrimiento (initialize, tools/list) responde sin credenciales para que un cliente pueda mostrar las herramientas; cada llamada a una herramienta exige una credencial.

Conecte su asistente con OAuth

El camino más sencillo es OAuth 2.1: nada que copiar ni pegar. En claude.ai, abra Ajustes › Conectores › Añadir conector personalizado; en ChatGPT, añada un conector (app). En ambos casos, introduzca la URL del servidor. El cliente recibe un 401 de GetAff, sigue los metadatos que este le indica y abre la pantalla de consentimiento de GetAff.

  1. Inicie sesión en GetAff si aún no lo ha hecho.
  2. Lea la pantalla de consentimiento: nombra la aplicación, a dónde le devolverá y qué podrá hacer.
  3. Marque los permisos (scopes) que desee conceder. spend nunca está marcado de antemano.
  4. Apruebe. El conector queda listo; el token está ligado al servidor MCP y la API REST lo rechaza.

Los tokens de acceso duran una hora; los de actualización, 30 días, y se renuevan en cada uso. Puede desconectar una aplicación en cualquier momento desde Ajustes de la cuenta › API › Aplicaciones conectadas.

Con una clave de API

Los clientes sin OAuth —o los scripts— se autentican con una clave de API (gaff_live_…) creada en la página Claves de API. Con Claude Code, basta un comando:

Claude Code
claude mcp add --transport http getaff https://www.getaff.org/api/mcp \
  --header "Authorization: Bearer $GETAFF_API_KEY"

En Cursor, declare el servidor en ~/.cursor/mcp.json; la clave se lee de su entorno:

Cursor — ~/.cursor/mcp.json
{
  "mcpServers": {
    "getaff": {
      "url": "https://www.getaff.org/api/mcp",
      "headers": { "Authorization": "Bearer ${env:GETAFF_API_KEY}" }
    }
  }
}

La documentación MCP incluye las configuraciones para Claude Desktop, VS Code y la API de OpenAI. Guarde la clave en una variable de entorno o en el almacén de secretos del cliente, nunca en un archivo de configuración compartido.

Elija los scopes

Los scopes deciden lo que puede hacer el asistente. Ninguno implica a otro, salvo read, que lleva toda credencial.

  • read — sitios, criterios, resultados, preselección, prospectos, secuencias.
  • search — búsquedas que no gastan créditos: fuentes gratuitas de la búsqueda de socios, el índice de creadores, perfiles parecidos, consultas de competidores, turnos de conversación.
  • write — cambios en sus datos: criterios, preselección, prospectos, competidores, inscripción en una secuencia.
  • spend — créditos de los proveedores: búsquedas en vivo y búsquedas de correos de pago, siempre con una confirmación adicional.

Un buen punto de partida es read search write: el asistente puede buscar, clasificar y preseleccionar, pero todo lo que es de pago queda fuera de su alcance. Si más adelante necesita spend, un cliente OAuth recibe un 403 insufficient_scope y puede pedirle que lo conceda: una ampliación que usted aprueba en la pantalla de consentimiento.

El flujo, herramienta por herramienta

No hace falta nombrar las herramientas: el asistente lee sus descripciones y elige. Conocer la secuencia le ayuda a redactar mejores instrucciones y a comprobar lo que ha hecho.

  1. list_sites — sus sitios y el programa de cada uno. El asistente la llama primero, porque todas las demás herramientas necesitan un siteId.
  2. get_criteria (opcional) — las palabras clave, nichos, plataformas, países, idiomas, franjas de audiencia y actividad reciente que usará la próxima búsqueda, además de los términos temáticos con los que trabaja la clasificación. update_criteria los modifica.
  3. search_partners — una sola búsqueda en todas las fuentes, fusionada y clasificada para su programa, cada creador con una puntuación de afinidad de 0 a 100.
  4. explain_ranking — por qué un creador ocupa su posición: coincidencia temática, mercado, idioma, alcance, actividad reciente, indicios de competidores, parecido con su preselección.
  5. shortlist_add — guarda creadores de la última búsqueda por su key (por ejemplo instagram:1784140). La preselección admite 100.
  6. shortlist_to_prospects — convierte a los creadores preseleccionados en prospectos privados. Gratis; cuenta en la cuota de descubrimiento de su plan.
  7. find_emails — búsquedas de pago en los proveedores de datos de creadores para los prospectos sin dirección (Pro), con confirmación del coste.
  8. enrol_in_sequence — programa la secuencia de prospección de tres pasos para un prospecto desde su buzón conectado, tras una confirmación.
Una herramienta para todo

¿Prefiere conversar? La herramienta chat envía un mensaje al asistente de socios de GetAff de un sitio, que puede cambiar los criterios, lanzar una búsqueda gratuita o seleccionar creadores por sí mismo. Nunca gasta: un paso de pago vuelve como pending, y chat_confirm lo ejecuta cuando usted da su conformidad.

Instrucciones que funcionan

Sea concreto sobre el mercado, la audiencia y la siguiente acción. Algunas instrucciones que encajan directamente con el flujo:

  • «Muestra mis sitios de GetAff y luego los criterios del primero».
  • «Para mi sitio de organización de bodas, busca socios en Francia y Bélgica, en Instagram y YouTube, con audiencias micro y medianas. Solo fuentes gratuitas».
  • «¿Por qué el tercer creador está por delante del quinto? Explica ambas clasificaciones».
  • «Añade a mi preselección los cinco creadores con mayor coincidencia temática y luego convierte la preselección en prospectos».
  • «Encuentra los correos de esos prospectos. Dime antes el coste».
  • «Prepara la secuencia de prospección para el primer prospecto y enséñame el resumen antes de programar nada».

Si los resultados no son pertinentes, dígalo: «marca el término presupuesto como fuera de tema y vuelve a buscar» corresponde a correct_topic_term, y la siguiente búsqueda clasifica teniendo en cuenta su corrección.

Costes y envíos siempre confirmados

Dos tipos de herramienta actúan más allá de sus propios datos: las que gastan créditos de proveedores (search_partners con includeLive, find_emails) y la que programa correos reales (enrol_in_sequence). Ambas siguen los mismos dos pasos.

  1. La primera llamada no gasta ni programa nada. Devuelve una estimación —créditos, proveedor, lo que queda disponible hoy— o un resumen de la secuencia (prospecto, buzón, borrador), junto con un confirmToken.
  2. El asistente le muestra el coste o el resumen y espera un sí explícito.
  3. La misma llamada, con los mismos argumentos más confirmToken, se ejecuta, gastando como máximo los créditos confirmados.

El token está ligado a su credencial, a la herramienta y a los argumentos exactos, y caduca a los 15 minutos. Una llamada confirmada que se reintenta reproduce su primer resultado en lugar de pagar dos veces.

La segunda llamada, confirmada
{ "name": "find_emails",
  "arguments": { "ids": ["kJ2p8wQxYb_ig_1784140"], "confirmToken": "gcf_…" } }

Lo que el servidor no hará

  • Gastar créditos sin un token de confirmación emitido para esa llamada exacta.
  • Enviar un correo directamente: la inscripción solo programa una secuencia, tras todos los controles de la aplicación —dirección válida y fuera de la lista de exclusión, régimen de cumplimiento del país del destinatario, ajustes del remitente completos, programa publicado.
  • Aceptar una sesión de navegador: solo autentica una clave de API o un token OAuth emitido para este servidor.
  • Devolver una clave, un token o una credencial de red en el resultado de una herramienta.
  • Hacer pasar el texto de los creadores por instrucciones: nombres, usuarios y biografías proceden de perfiles públicos y se marcan como datos de terceros en cada resultado.

Los límites de su plan se aplican al asistente exactamente igual que a usted en la aplicación: las mismas asignaciones diarias, la misma cuota de descubrimiento, los mismos límites de uso. Un asistente nunca es una forma de eludirlos.

Para ir más allá

El asistente solo se entera de que una búsqueda ha terminado o de que un prospecto ha respondido cuando vuelve a llamar a una herramienta. Para una integración que deba reaccionar por sí sola, registre un webhook. Para una tarea programada sin asistente, las mismas operaciones existen en la API REST.

Documentación

El contrato exacto, generado a partir de los esquemas que aplican las rutas:

Para leer después