Sinch Engage / MessageMedia MCP server
oficialServidor MCP de Sinch Engage (Sinch MessageMedia en AU), que proporciona las APIs de Sinch Engage como herramientas MCP.
¿Qué puedes hacer con Sinch Engage MessageMedia MCP?
- Enviar un SMS — Usa
sendMessagepara enviar un mensaje de texto a un número móvil en formato E.164. - Generar un informe detallado de mensajes — Recupera un informe detallado de mensajes enviados y recibidos para un rango de fechas con
getDetailedMessageReport. - Generar un informe resumido de mensajes — Obtén un resumen de la actividad de mensajes para un rango de fechas usando
getSummaryMessageReportogetSummaryInsightMessageReport. - Solicitar un informe detallado asíncrono — Inicia una exportación asíncrona de un informe detallado con
requestAsyncDetailedMessageReporty verifica su estado mediantegetAsyncReportStatus. - Gestionar contactos y grupos — Crea, actualiza o elimina contactos y grupos de contactos usando
createContact,updateContact,createContactGroupydeleteContactGroup. - Buscar y ver contactos — Encuentra contactos por número de teléfono, nombre o grupo con
getContactWithSearch, y lista grupos mediantegetContactGroups.
Documentación
Servidor MCP de Sinch Engage
Este repositorio contiene el código fuente del servidor MCP de Sinch Engage (Sinch MessageMedia en AU), que proporciona las APIs de Sinch Engage como herramientas MCP.
Resumen de herramientas
Aquí está la lista de herramientas disponibles en el servidor MCP (todos los números de teléfono deben proporcionarse en formato E.164, por ejemplo, +61400000000 para Australia).
Mensajería
| Herramienta | Descripción | Categoría | Modo |
|---|---|---|---|
| sendMessage | Envía un SMS a un número de móvil | mensajería | escritura |
Informes
| Herramienta | Descripción | Categoría | Modo |
|---|---|---|---|
| getDetailedMessageReport | Genera un informe detallado de mensajes enviados y recibidos para un rango de fechas especificado, con filtros opcionales por dirección, cuentas, metadatos y agrupación. | informes | lectura |
| getSummaryMessageReport | Genera un informe resumido de mensajes enviados y recibidos para un rango de fechas especificado, con filtros opcionales por dirección, cuentas y agrupación. | informes | lectura |
| getSummaryInsightMessageReport | Obtiene un informe resumido precompilado de mensajes enviados y recibidos para un rango de fechas especificado, con filtros opcionales por dirección, cuentas y agrupación. | informes | lectura |
| getAsyncReportStatus | Recupera el estado de una solicitud de informe asíncrono por report_id. | informes | lectura |
| getAsyncReportFields | Recupera la lista de campos disponibles para la exportación de informes detallados asíncronos. | informes | lectura |
| requestAsyncDetailedMessageReport | Solicita un informe detallado asíncrono de mensajes enviados y recibidos para un rango de fechas especificado, con opciones de entrega para el formato del informe y el destino. | informes | lectura |
Contactos
| Herramienta | Descripción | Categoría | Modo |
|---|---|---|---|
| getContactGroups | Recupera una lista paginada de grupos de contactos (listas) asociados a la cuenta. | informes | lectura |
| getContactGroupDetails | Recupera los detalles de un grupo de contactos (lista) específico identificado por group_id. | informes | lectura |
| getContactWithSearch | Recupera una lista de contactos, filtrable por grupo, número de teléfono, nombre y tipo de canal. | informes | lectura |
| createContactGroup | Crea un nuevo grupo de contactos (lista) con el nombre especificado y un alias opcional. | informes | escritura |
| createContact | Crea un nuevo contacto con los detalles especificados. | informes | escritura |
| updateContact | Actualiza un contacto existente identificado por contact_id con nuevos detalles. | informes | escritura |
| deleteContactGroup | Elimina un grupo de contactos (lista) específico identificado por group_id. | informes | eliminación |
Primeros pasos
Requisitos previos
- Node.js >= 16.0
- Una cuenta aprovisionada de Sinch Engage
- Claude Desktop (o cualquier otro cliente MCP). Este README se centra en Claude Desktop, pero el servidor MCP puede usarse con cualquier cliente MCP.
Credenciales de API
Para usar las APIs que utilizan las herramientas MCP, necesitarás las siguientes credenciales:
SINCH_ENGAGE_API_KEYySINCH_ENGAGE_API_SECRETCredenciales de Sinch Engage
Configuración del servidor MCP
El servidor MCP de Sinch Engage está disponible como un paquete NPM para su ejecución. Aquí se muestra cómo configurarlo en el archivo de configuración de Claude Desktop (claude_desktop_config.json). Recuerda completar las variables de entorno con tus propias credenciales y la región (actualmente se admiten EU y AU):
{
"mcpServers": {
"Sinch Engage": {
"command": "npx",
"args": [
"-y",
"@sinch-engage/mcp-server"
],
"env": {
"SINCH_ENGAGE_API_KEY": "<your-key>",
"SINCH_ENGAGE_API_SECRET": "<your-secret>",
"SINCH_ENGAGE_REGION": "<region>",
"MCP_TOOL_CATEGORIES": "reporting, contacts, messaging",
"MCP_TOOL_MODES": "read, write, delete"
}
}
}
}
Ejecutar el servidor MCP localmente
Opción 1: Iniciar el servidor MCP con stdio usando Claude Desktop
Para ejecutar el servidor MCP localmente con Claude Desktop, necesitarás clonar el repositorio y compilar el servidor MCP. Esta opción es útil para el desarrollo y las pruebas locales.
Paso 1: Clonar el repositorio
git clone https://github.com/messagemedia/sinch-engage-mcp-server.git
Paso 2: Instalar dependencias
cd sinch-engage-mcp-server
npm install
Paso 3: Configurar Claude Desktop
Aquí tienes un ejemplo de cómo configurar el servidor MCP en el archivo de configuración de Claude Desktop (claude_desktop_config.json) donde puedes proporcionar tus credenciales de Sinch Engage y la región (EU o AU):
{
"mcpServers": {
"Sinch Engage": {
"command": "node",
"args": ["/path/to/sinch-engage-mcp-server/src/index.js"],
"env": {
"SINCH_ENGAGE_API_KEY": "<your-key>",
"SINCH_ENGAGE_API_SECRET": "<your-secret>",
"SINCH_ENGAGE_REGION": "<region>",
"MCP_TOOL_CATEGORIES": "reporting, contacts, messaging",
"MCP_TOOL_MODES": "read, write, delete"
}
}
}
}
Paso 4: (Opcional) Filtrar las herramientas disponibles en el servidor MCP
Demasiadas herramientas implican un contexto más amplio, mayor uso de tokens y más confusión para que el LLM seleccione la herramienta correcta.
Puedes filtrar las herramientas disponibles en el servidor MCP proporcionando MCP_TOOL_CATEGORIES en las opciones de configuración de Claude Desktop.
Si deseas filtrar herramientas por permisos, puedes usar MCP_TOOL_MODES para elegir solo herramientas que puedan leer, escribir o eliminar datos, o cualquier combinación de ellas.