Ir al contenido principal

Fin Agent API: Servidor MCP

Qué es el Fin Agent API MCP Server y cómo usarlo

Escrito por Brian McKiernan

Nota

El MCP Server para el Fin Agent API está actualmente en beta y puede cambiar sustancialmente antes del lanzamiento final. Agradecemos sus comentarios, que serán útiles para guiar el futuro de esta función del producto.

El Fin Agent API expone un servidor remoto Model Context Protocol (MCP) que permite a agentes externos de IA llamar a Fin como una herramienta. En lugar de reconstruir la lógica de soporte en su propio agente, puede conectar la knowledge base, procedimientos y capacidades de conversación multi-turn de Fin directamente desde cualquier cliente compatible con MCP, incluyendo Claude, Claude Code, Cursor o su propio marco de agente.

Hay dos formas de conectarse, dependiendo de quién actúa como cliente:

Compañero de equipo

Usuario final

URL

Autentica

Un espacio de trabajo, a través de la clave api del Fin Agent API

Un único usuario final verificado, a través de un JWT de Messenger

Modelo de confianza

Backend confiable servidor a servidor

Cliente no confiable por usuario (un asistente de IA que se ejecuta en o cerca del entorno del usuario final)

¿De quién es la identidad?

El cliente afirma qué usuario final (user_id) representa cada llamada

El token es la identidad — el cliente no puede actuar como otra persona

¿Tiene un secreto a nivel de aplicación?

Sí (la clave Fin Agent API)

No — solo un JWT limitado a un usuario

Casos de uso

El Fin Agent API MCP server está diseñado para escenarios multi-agente donde su propio agente necesita acceso a las capacidades de Fin:

  • Soporte integrado en agentes de producto. Brinde a su asistente de IA la capacidad de responder preguntas de soporte usando su knowledge base configurada de Fin, sin duplicar su knowledge base o contenido.

  • Automatización de procedimientos. Permita que un agente orquestador active procedimientos de Fin (reembolsos, actualizaciones, cancelaciones) en nombre de los users y maneje interacciones multi-turn programáticamente.

  • Enrutamiento basado en capacidades. Use list_fin_capabilities para determinar qué acciones están disponibles para un user dado, luego enrute a la herramienta correcta en la lógica de decisión de su agente.

  • Herramientas para desarrolladores. Muestre su knowledge base de Fin dentro de herramientas para desarrolladores como Claude Code o Cursor, para que los users internos puedan consultar su contenido de soporte desde su flujo de trabajo existente.

Prerrequisitos

Su espacio de trabajo de Intercom debe tener habilitada la función Fin Agent API. Contacte a su equipo de cuenta de Intercom si no tiene acceso.

Puntos finales

Hay dos puntos finales, dependiendo de quién realiza la solicitud.

Punto final para compañeros de equipo

https://api.intercom.io/fin/mcp

Use esto cuando un servicio backend confiable llama a Fin en nombre de un user. El llamante se autentica con un token de acceso OAuth para el espacio de trabajo. La identidad del usuario final se suministra en el cuerpo de la solicitud por el servicio que llama.

Este modelo es apropiado para integraciones servidor a servidor donde su backend controla quién realiza la solicitud.

Punto final para usuario final

https://api.intercom.io/fin/mcp/{YOUR_APP_ID_CODE}

Use esto cuando el cliente MCP se ejecuta en o cerca del entorno del user final — por ejemplo, un asistente de IA que se ejecuta localmente en la máquina de un user. El llamante se autentica con un JWT firmado que representa a un único user final verificado.

El parámetro de ruta {YOUR_APP_ID_CODE} es el identificador de su espacio de trabajo de Intercom (el mismo app_id usado en los fragmentos de instalación de Messenger).

La autenticación usa el mismo mecanismo JWT de Messenger ya usado para la verificación de identidad — si ya tiene configurada la verificación de identidad de Messenger, no se necesita configuración adicional en el lado de Intercom.

Autenticación

Punto final para compañeros de equipo

Pase su clave api del Fin Agent API como token Bearer en el encabezado Authorization:

Authorization: Bearer YOUR_FIN_AGENT_API_KEY

Punto final para usuario final

Genere un JWT firmado usando el secreto Messenger de su espacio de trabajo (encontrado en Configuración → Seguridad → Verificación de identidad). El JWT debe estar firmado con HS256 e incluir el ID externo del user en la reclamación sub. Este es el mismo JWT exacto que generaría para autenticar users finales para Messenger.

Ejemplo de carga útil JWT:

{
"user_id":"user@example.com"
}

Páselo como token Bearer:

Authorization: Bearer YOUR_USER_JWT

El user identificado en el JWT es el user al que Fin responderá. Usará este user para crear conversaciones y para coincidir procedimientos. Su backend genera este token del lado del servidor y lo proporciona al cliente — nunca exponga su secreto Messenger del lado del cliente.

Conexión desde Claude

Claude Desktop

Agregue lo siguiente a su claude_desktop_config.json:

Punto final para compañeros de equipo:

{
"mcpServers": {
"fin": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://api.intercom.io/fin/mcp",
"--header",
"Authorization: Bearer {YOUR_FIN_AGENT_API_KEY}"
}
}
}
}

Punto final para usuario final:

{
"mcpServers": {
"fin": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://api.intercom.io/fin/mcp/{YOUR_APP_ID_CODE}",
"--header",
"Authorization: Bearer {YOUR_USER_JWT}"
}
}
}
}

Claude Code (CLI)

Punto final para compañeros de equipo:

claude mcp add intercom-fin \
--transport http \
https://api.intercom.io/fin/mcp \
--header "Authorization: Bearer YOUR_FIN_AGENT_API_KEY"

Punto final para usuario final:

claude mcp add intercom-fin \
--transport http \
https://api.intercom.io/fin/mcp/YOUR_APP_ID_CODE \
--header "Authorization: Bearer YOUR_USER_JWT"

O agregue el JSON equivalente a .mcp.json bajo mcpServers.

Herramientas

Una vez conectado, el servidor MCP expone cinco herramientas al cliente.

list_fin_capabilities

Devuelve las capacidades del Fin Agent API disponibles para un user dado: los procedimientos coincidentes con la audiencia que el user puede activar, además de las acciones estáticas disponibles para todos los users (hacer una pregunta, responder a una conversación).

Llame a esto primero para descubrir qué puede hacer Fin para un user específico antes de llamar a otras herramientas. El acceso a procedimientos está coincidente con la audiencia — no todos los users tienen acceso a todos los procedimientos.

Entrada: user_id — el ID externo del user.

Devuelve: Un documento JSON que lista las capacidades disponibles, cada una con su tipo, ID y nombre.

ask_fin

Envía una pregunta puntual a Fin y devuelve una respuesta. Fin busca en sus fuentes de conocimiento configuradas y devuelve una respuesta directa sin iniciar una conversación persistente.

Úselo para consultas informativas donde desea una respuesta directa y no necesita un flujo multi-turn.

Entradas: user_id, mensaje (la pregunta a hacer).

get_fin_response

Consulta la respuesta de Fin a una conversación o flujo de procedimiento en curso. Úselo después de iniciar una conversación o procedimiento para obtener la última respuesta de Fin.

Entrada: conversation_id.

reply_to_fin_conversation

Envía un mensaje de seguimiento en una conversación existente con Fin. Úselo para continuar una interacción multi-turn — por ejemplo, proporcionando información adicional que Fin solicitó durante un procedimiento.

Entradas: conversation_id, mensaje.

run_fin_procedure

Activa un procedimiento específico de Fin para un user. Un procedimiento es un flujo de trabajo multi-paso configurado — por ejemplo, procesar un reembolso o actualizar una suscripción. Fin iniciará el procedimiento, puede pedir información adicional y dirigirá la interacción hasta completarla.

Use list_fin_capabilities primero para encontrar el ID del procedimiento para la acción que desea ejecutar.

Entradas: procedure_id, user_id.

¿Ha quedado contestada tu pregunta?