Sinch MCP Server
OfficialServidor MCP de Sinch — Vista previa para desarrolladores
Este repositorio contiene el código fuente del servidor MCP de Sinch, que proporciona un conjunto de herramientas para interactuar con las API de Sinch. Este archivo README se centra en el uso del servidor MCP con el cliente Claude Desktop, pero también puede utilizarse con cualquier otro cliente MCP.
Descripción general de las 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, p. ej., +33612345678 para Francia).
Herramientas de conversación
Herramienta | Descripción | Etiquetas |
send-text-message | Envía un mensaje de texto plano a un destinatario en un canal compatible. Ejemplo de prompt: "Envía una actualización rápida al número de teléfono +33612345678 por SMS." | conversation, notification |
send-media-message | Envía una imagen, vídeo o documento a través de un mensaje multimedia. Ejemplo de prompt: "Envía el PDF del folleto del producto al número de teléfono +33612345678 por WhatsApp." | conversation, notification |
send-template-message | Envía un mensaje utilizando una plantilla predefinida (solo omni-template). Ejemplo de prompt: "Envía la plantilla de recordatorio de cita en español a este usuario por Messenger." | conversation, notification |
send-whatsapp-template-message | Envía un mensaje utilizando una plantilla de WhatsApp predefinida. Ejemplo de prompt: "Envía un mensaje usando la plantilla "appointment-reminder" en WhatsApp." | conversation, notification |
send-choice-message | Envía un mensaje que incluye opciones interactivas (botones o respuestas rápidas). Ejemplo de prompt: "Envía una encuesta RCS sobre el sabor de helado preferido al +33612345678 con las siguientes opciones: Vainilla, Fresa, Avellana". | conversation, notification |
send-location-message | Envía un pin de ubicación o coordenadas a un usuario. Ejemplo de prompt: "Envía un pin a la ubicación del Museo Guggenheim en Bilbao al número de teléfono +33612345678." | conversation, notification |
list-conversation-apps | Enumera todas las aplicaciones de conversación configuradas en la cuenta de Sinch. Ejemplo de prompt: "¿Qué aplicaciones de mensajería tengo configuradas en mi cuenta?" | conversation, notification |
list-messaging-templates | Enumera todas las plantillas de mensajes omnicanal y específicas de canal. Ejemplo de prompt: "Muéstrame todas las plantillas de mensajes en mi cuenta." | conversation, notification |
Herramientas de correo electrónico (Mailgun)
Herramienta | Descripción | Etiquetas |
send-email | Envía un correo electrónico utilizando una plantilla HTML predefinida o contenido HTML/texto sin formato. Ejemplo de prompt: "Envía un correo de bienvenida a john@example.com usando nuestra plantilla de incorporación." | email, notification |
list-email-templates | Enumera todas las plantillas de correo electrónico disponibles para un dominio específico. Ejemplo de prompt: "¿Qué plantillas de correo electrónico tengo disponibles?" | email, notification |
retrieve-email-info | Recupera metadatos, contenido y estado de entrega de un mensaje de correo electrónico específico. Ejemplo de prompt: "¿Puedes obtener el estado de entrega del correo electrónico con ID ?" | email, notification |
list-email-events | Recupera y agrupa eventos recientes de entrega de correo electrónico, como rebotes, aperturas o clics. Ejemplo de prompt: "Muéstrame toda la actividad reciente de correo electrónico de mi cuenta." | |
analytics-metrics | Recupera métricas de análisis de correo electrónico, como tasas de apertura o tasas de clics. Ejemplo de prompt: "¿Cuáles son las tasas de apertura durante la última semana?" |
Herramientas de verificación
Herramienta | Descripción | Etiquetas |
number-lookup | Busca un número de teléfono para conocer su estado y capacidades. Ejemplo de prompt: "Busca las capacidades del siguiente número de teléfono: +33501020304." | verification |
start-sms-verification | Inicia una verificación por SMS enviando una OTP al número de teléfono de un usuario. Ejemplo de prompt: "Inicia la verificación telefónica para el número +33612345678." | verification |
report-sms-verification | Envía una contraseña de un solo uso (OTP) para completar la verificación por SMS. Ejemplo de prompt: "Verifica el número de teléfono con este código: 1234." | verification |
Herramientas de voz
Herramienta | Descripción | Etiquetas |
tts-callout | Realiza una llamada de voz y lee en voz alta un mensaje utilizando texto a voz (TTS). Ejemplo de prompt: "Llama al número de teléfono +33612345678 y di: 'Tu cita es mañana a las 10 AM'." | voice, notification |
conference-callout | Inicia una llamada de voz a uno o más participantes y los conecta a una conferencia compartida. Ejemplo de prompt: "Llama a John (+33612345678) y a Lisa (+34987654321) y conéctalos a una sala de conferencias." | voice |
manage-conference-participant | Silencia, reactiva el sonido, pone en espera o reanuda a un participante individual en una llamada de conferencia. Ejemplo de prompt: "Silencia al llamante con ID xyz789 en la conferencia." | voice |
close-conference | Finaliza una llamada de conferencia desconectando a todos los participantes utilizando el ID de la conferencia. Ejemplo de prompt: "Finaliza la llamada de conferencia actual con ID abc123." | voice |
Herramientas de números
Herramienta | Descripción | Etiquetas |
list-available-regions | Enumera todas las regiones donde hay números de teléfono disponibles para el proyecto. Se puede filtrar por tipo de número (MOBILE, LOCAL, TOLL_FREE). Ejemplo de prompt: "¿Qué regiones tienen números gratuitos disponibles?" | numbers |
list-rented-numbers | Enumera todos los números de teléfono activos (alquilados) para el proyecto. Se puede filtrar por región, tipo, patrón y capacidad. Ejemplo de prompt: "Muéstrame todos mis números de teléfono activos en EE. UU." | numbers |
search-for-available-numbers | Busca números de teléfono disponibles para alquilar, con filtros por región, tipo, patrón y capacidades. Ejemplo de prompt: "Encuentra números locales disponibles en EE. UU. que admitan SMS." | numbers |
rent-sinch-virtual-numbers | Alquila (activa) uno o más números de teléfono proporcionándolos en formato E.164. Ejemplo de prompt: "Alquila el número de teléfono +12025551234." | numbers |
Herramientas de configuración
Herramienta | Descripción | Etiquetas |
sinch-mcp-configuration | Enumera todas las herramientas disponibles en el servidor MCP de Sinch y su estado. Si una herramienta está deshabilitada, mostrará el motivo. Ejemplo de prompt: "¿Qué herramientas están disponibles en el servidor MCP de Sinch?" |
Related MCP server: SendGrid MCP Server
Introducción
Requisitos previos
Una cuenta de Sinch Build aprovisionada
Claude Desktop (o cualquier otro cliente MCP). Este README se centra en Claude Desktop, pero el servidor MCP puede utilizarse con cualquier cliente MCP.
Credenciales de API
Para utilizar las API empleadas por las herramientas MCP, necesitará las siguientes credenciales:
Credenciales de la API de Conversación / Números:
(Obligatorio)
PROJECT_ID: Seleccione el proyecto que desea utilizar desde su panel de control de Sinch Build (ubicado a la izquierda de la barra de herramientas superior)
(Obligatorio)
KEY_ID: Seleccione o cree una nueva clave de acceso en la sección de claves de acceso del panel de control de Sinch Build.(Obligatorio)
KEY_SECRET: Este es el secreto asociado con laAccess Keyque seleccionó o creó en el paso anterior. Tenga cuidado, elAccess Key Secretsolo se muestra una vez cuando crea laAccess Key. Si lo pierde, deberá crear una nuevaAccess Key.CONVERSATION_APP_ID: Este es el ID de la aplicación de conversación que desea utilizar. Puede encontrarlo en la sección de aplicaciones de la API de Conversación del panel de control de Sinch Build. Si no lo configura, deberá especificarlo en el prompt.CONVERSATION_REGION: Esta es la región donde se encuentran su aplicación de conversación y sus plantillas. Puede serus,euobr. Si no lo configura, el valor predeterminado esus.Al utilizar el canal SMS, también puede configurar la variable de entorno
DEFAULT_SMS_ORIGINATORcon el número de teléfono que se utilizará como remitente para los mensajes SMS. Dependiendo de su país, esta configuración puede ser obligatoria.También puede configurar la variable de entorno
GEOCODING_API_KEYcon su clave de API de Google Geocoding si desea utilizar la función de ubicación. Esto es necesario para convertir una dirección en un par de latitud/longitud.
Credenciales de la API de Verificación: navegue a la sección de aplicaciones de Verificación del panel de control de Sinch Build y cree una nueva aplicación o seleccione una existente. Necesitará las siguientes credenciales:
(Obligatorio)
APPLICATION_KEY(Obligatorio)
APPLICATION_SECRET
Credenciales de la API de Voz: navegue a la sección de aplicaciones de Voz del panel de control de Sinch Build y cree una nueva aplicación o seleccione una existente. Necesitará las siguientes credenciales:
(Obligatorio)
APPLICATION_KEY(Obligatorio)
APPLICATION_SECRETTambién puede configurar la variable de entorno
CALLING_LINE_IDENTIFICATIONcon el número de teléfono que se mostrará al usuario cuando reciba una llamada.
Credenciales de la API de Mailgun: navegue a la sección de dominios de Mailgun del panel de control de Mailgun y cree un nuevo dominio o seleccione uno existente. Necesitará las siguientes credenciales:
(Obligatorio)
MAILGUN_API_KEYMAILGUN_DOMAINMAILGUN_SENDER_ADDRESS
Configuración del servidor MCP
El servidor MCP de Sinch está disponible como un paquete NPM para ser ejecutado. Aquí le explicamos cómo configurarlo en el archivo de configuración de Claude Desktop (claude_desktop_config.json). Recuerde completar las variables de entorno con sus propias credenciales:
{
"mcpServers": {
"sinch": {
"command": "npx",
"args": [
"-y",
"@sinch/mcp"
],
"env": {
"PROJECT_ID": "",
"KEY_ID": "",
"KEY_SECRET": "",
"CONVERSATION_APP_ID": "",
"CONVERSATION_REGION": "",
"DEFAULT_SMS_ORIGINATOR": "",
"GEOCODING_API_KEY": "",
"APPLICATION_KEY": "",
"APPLICATION_SECRET": "",
"CALLING_LINE_IDENTIFICATION": "",
"MAILGUN_API_KEY": "",
"MAILGUN_DOMAIN": "",
"MAILGUN_SENDER_ADDRESS": ""
}
}
}
}Ejecución del servidor MCP localmente
Opción 1: Iniciar el servidor MCP con stdio usando Claude Desktop
Para ejecutar el servidor MCP localmente con Claude Desktop, deberá 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/sinch/sinch-mcp-server.gitPaso 2: Compilar el servidor MCP
cd sinch-mcp-server
npm install
npm run buildPaso 3: Configurar Claude Desktop
Aquí hay un ejemplo de cómo configurar el servidor MCP en el archivo de configuración de Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"sinch": {
"command": "node",
"args": [
"/your/path/to/sinch-mcp-server/dist/index.js"
],
"env": {
"PROJECT_ID": "",
"KEY_ID": "",
"KEY_SECRET": "",
"CONVERSATION_APP_ID": "",
"CONVERSATION_REGION": "",
"DEFAULT_SMS_ORIGINATOR": "",
"GEOCODING_API_KEY": "",
"APPLICATION_KEY": "",
"APPLICATION_SECRET": "",
"CALLING_LINE_IDENTIFICATION": "",
"MAILGUN_API_KEY": "",
"MAILGUN_DOMAIN": "",
"MAILGUN_SENDER_ADDRESS": ""
}
}
}
}Paso 4: (Opcional) Filtrar las herramientas disponibles en el servidor MCP
Demasiadas herramientas significan un contexto más grande, lo que implica un mayor uso de tokens y más confusión para que el LLM seleccione la herramienta correcta a utilizar.
Puede filtrar las herramientas que están disponibles en el servidor MCP utilizando las opciones de tags. Por ejemplo, si solo desea utilizar las herramientas de conversación, puede añadir las siguientes opciones a la matriz args:
"args": [
"/your/path/to/sinch-mcp-server/dist/index.js",
"--tags",
"conversation"
],Puede combinar varias etiquetas separándolas con comas. Por ejemplo, si desea utilizar tanto las herramientas de conversación como las de verificación, puede utilizar el siguiente comando:
"args": [
"/your/path/to/sinch-mcp-server/dist/index.js",
"--tags",
"conversation,verification"
],Si desea utilizar todas las herramientas, puede omitir la opción --tags o utilizar la etiqueta all:
"args": [
"/your/path/to/sinch-mcp-server/dist/index.js",
"--tags",
"all"
],Opción 2: Iniciar el servidor MCP de forma remota y conectarse a él mediante SSE
Con esta opción, puede ejecutar el servidor MCP en una máquina remota y conectarse a él mediante Server-Sent Events (SSE). Esto es útil si desea ejecutar el servidor MCP en un servidor en la nube o en una máquina dedicada. De forma predeterminada, Claude Desktop se conectará al servidor MCP mediante STDIO; utilizaremos la biblioteca supergateway para conectarnos al servidor MCP mediante SSE.
Paso 1: Compilar el servidor MCP
cd sinch-mcp-server
npm install
npm run buildPaso 2: Configurar el servidor MCP
Copie el archivo .template.env y cámbiele el nombre a .env. Luego, reemplace los marcadores de posición con sus propias credenciales y elimine cualquier clave que no necesite. El archivo .env debería verse así ():
# Conversation / Numbers tools related environment variables
PROJECT_ID=
KEY_ID=
KEY_SECRET=
## Optional but recommended: the App ID holding your channels integration configuration. If not set it must be present in the prompt
CONVERSATION_APP_ID=
## Optional, defaults to "us". Other possible values are "eu" and "br"
CONVERSATION_REGION=
## Needed only if you want to send SMS messages: it is the number that will be used as the sender for SMS messages
DEFAULT_SMS_ORIGINATOR=
## Needed only if you want to send location messages: it converts an address to a latitude/longitude pair
GEOCODING_API_KEY=
# Verification / Voice tools related environment variables
APPLICATION_KEY=
APPLICATION_SECRET=
## Needed only if you want to make calls: it is the number that will be displayed to the user when they receive a call
CALLING_LINE_IDENTIFICATION=
# Mailgun tools related environment variables
MAILGUN_DOMAIN=
MAILGUN_API_KEY=
MAILGUN_SENDER_ADDRESS=Paso 3: Iniciar el servidor MCP
npm run start:stdioDe forma predeterminada, este comando iniciará el MCP con todas las herramientas disponibles. Si desea filtrar las herramientas que están disponibles en el servidor MCP, puede utilizar la opción --tags. Por ejemplo, si solo desea utilizar las herramientas de conversación, puede modificar el comando de la siguiente manera:
# Original command
"start:sse": "tsc --project tsconfig.build.json && (npx -y supergateway --stdio \"node dist/index.js\" --port 8000 --baseUrl http://localhost:8000 --ssePath /sse --messagePath /message)"
# Modified command to only use conversation tools
"start:sse": "tsc --project tsconfig.build.json && (npx -y supergateway --stdio \"node dist/index.js --tag conversation\" --port 8000 --baseUrl http://localhost:8000 --ssePath /sse --messagePath /message)"Puede combinar varias etiquetas separándolas con comas. Por ejemplo, si desea utilizar tanto las herramientas de conversación como las de verificación, puede utilizar el siguiente comando:
"start": "tsc --project tsconfig.build.json && (npx -y supergateway --stdio \"node dist/index.js --tag conversation,verification\" --port 8000 --baseUrl http://localhost:8000 --ssePath /sse --messagePath /message)"Paso 4: Configurar el servidor MCP en Claude Desktop
A continuación, puede configurar el servidor MCP en el archivo de configuración de Claude de la siguiente manera:
{
"mcpServers": {
"sinch": {
"command": "npx",
"args": [
"-y", "supergateway", "--sse", "http://localhost:8000/sse"
]
}
}
}(Reemplace http://localhost:8000/sse con la URL de su servidor MCP si no se está ejecutando localmente)
Contribución: Definición de nuevas herramientas
Las herramientas se registran en el archivo src/index.ts.
Herramientas de conversación: enviar
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/sinch/sinch-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server