Sinch MCP server
Sinch MCP server
This repository contains the source code for the Sinch MCP server, which provides a set of tools to interact with the Sinch APIs. This README focuses on using the MCP server with the Claude Desktop client, but it can also be used with any other MCP client.
Compare MCP servers by category, or browse hosted MCP servers if you prefer an endpoint over a local process.
Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.
| Tool | What it does |
|---|---|
| send-text-message | Send a plain text message to a recipient on a supported channel. _Example prompt_: "Send a quick update to the phone number +33612345678 on SMS." |
| send-media-message | Send an image, video, or document via a media message. _Example prompt_: "Send the product brochure PDF to the phone number +33612345678 on WhatsApp." |
| send-template-message | Send a message using a predefined template (omni-template only). _Example prompt_: "Send the appointment reminder template in Spanish to this user on Messenger. |
| send-whatsapp-template-message | Send a message using a predefined WhatsApp template. _Example prompt_: "Send a message using the template "appointment-reminder" on WhatsApp." |
| send-choice-message | Send a message that includes interactive choices (buttons or quick replies). _Example prompt_: "Send a RCS survey about preferred ice cream flavor to +336123456 |
| send-location-message | Send a location pin or coordinates to a user. _Example prompt_: "Send a pin to the Guggenheim Museum location in Bilbao to the phone number +33612345678." |
| list-conversation-apps | List all configured Conversation apps in the Sinch account. _Example prompt_: "What messaging apps do I have set up in my account?" |
| create-conversation-app | Create a new Conversation API app (no channels required at creation). _Example prompt_: "Create a Conversation app named My Support Bot in the EU region." |
| update-conversation-app | Update a Conversation API app display name. _Example prompt_: "Rename Conversation app abc123 to My Support Bot." |
| delete-conversation-app | Delete a Conversation API app by ID. _Example prompt_: "Delete Conversation app abc123." |
| set-sms-channel-on-app | Set (create or replace) the SMS channel on a Conversation app. _Example prompt_: "Set SMS on app abc123 using service plan XYZ and API token …" |
| set-rcs-channel-on-app | Set (create or replace) the RCS channel on a Conversation app. _Example prompt_: "Set RCS on app abc123 with sender ID … and bearer token …" |
| set-whatsapp-channel-on-app | Set (create or replace) the WhatsApp channel on a Conversation app. _Example prompt_: "Set WhatsApp on app abc123 with sender ID … and bearer token …" |
| list-messaging-templates | List the omni-channel message templates (managed by Sinch) for the configured region. WhatsApp-specific templates can be fetched with the list-whatsapp-template |
| list-webhooks | List webhooks configured for a Conversation app. _Example prompt_: "List all webhooks for my Conversation app." |
| get-webhook | Get a webhook by ID. _Example prompt_: "Show me the details of webhook ID abc123." |
| create-webhook | Create a webhook that delivers Conversation API events to a target URL. _Example prompt_: "Create a webhook for inbound messages at https://example.com/callback |
| update-webhook | Update a webhook target URL and/or triggers. _Example prompt_: "Update webhook abc123 to also receive MESSAGE_DELIVERY events." |
| delete-webhook | Delete a webhook by ID. _Example prompt_: "Delete webhook abc123." |
| send-email | Send an email using a predefined HTML template or raw HTML/text content. _Example prompt_: "Send a welcome email to john@example.com using our onboarding templa |
| list-email-templates | List all email templates available for a specific domain. _Example prompt_: "What email templates do I have available?" |
| retrieve-email-info | Retrieve metadata, content and delivery status for a specific email message. _Example prompt_: "Can you get the delivery status of the email with ID ?" |
| list-email-events | Retrieve and group recent email delivery events, such as bounces, opens, or clicks. _Example prompt_: "Show me all recent email activity for my account." |
| analytics-metrics | Retrieve email analytics metrics, such as open rates or click-through rates. _Example prompt_: "What are the open rates during the last week?" |
| number-lookup | Lookup a phone number for its status and capabilities. _Example prompt_: "Lookup for the following phone number capabilities: +33501020304." |
| start-sms-verification | Initiate an SMS verification by sending an OTP to a user's phone number. _Example prompt_: "Start phone verification for the number +33612345678." |
| report-sms-verification | Submit a one-time password (OTP) to complete SMS verification. _Example prompt_: "Verify the phone number with this code: 1234." |
| tts-callout | Place a voice call and read aloud a message using Text-to-Speech. _Example prompt_: "Call the phone number +33612345678 and say: 'Your appointment is tomorrow a |
| conference-callout | Start a voice call to one or more participants and connect them to a shared conference. _Example prompt_: "Call John (+33612345678) and Lisa (+34987654321) and |
| manage-conference-participant | Mute, unmute, hold, or resume an individual participant in a conference call. _Example prompt_: "Mute the caller with ID xyz789 in the conference." |
| close-conference | End a conference call by disconnecting all the participants using the ID of the conference. _Example prompt_: "End the current conference call with ID abc123." |
| get-call-information | Get information about a call using its ID. _Example prompt_: "Get the details of call ID abc123." |
| list-rcs-senders | List all RCS senders for the project, with pagination support. _Example prompt_: "Show me all my RCS senders." |
| get-rcs-sender | Get a full RCS sender by ID, including credentials, state, brand details, test numbers, and country status. _Example prompt_: "Get the details of my RCS sender |
| create-rcs-sender | Create a new RCS sender. Brand details, questionnaire, and countries can be provided upfront or added incrementally via update-rcs-sender. _Example prompt_: "Cr |
| update-rcs-sender | Update an RCS sender's brand, countries, test numbers, or questionnaire. _Example prompt_: "Update my RCS sender abc123 with the brand logo URL." |
| launch-rcs-sender | Submit an RCS sender for Google and carrier review. All brand details, countries, and questionnaire sections must be complete before launching. _Example prompt_ |
| add-rcs-test-number | Add test phone numbers to an RCS sender (max 20 per request, 200 total per sender). _Example prompt_: "Add +14155552671 as a test number to my RCS sender." |
| delete-rcs-test-number | Delete a test number from an RCS sender. _Example prompt_: "Remove test number +14155552671 from my RCS sender." |
| resend-rcs-test-number-invite | Resend a test number invite when state is PENDING or UNVERIFIED. _Example prompt_: "Resend the invite for test number +14155552671 on sender abc123." |
| get-rcs-test-number-state | Get the verification state of a single RCS test number. _Example prompt_: "What is the state of test number +14155552671 on sender abc123?" |
| get-rcs-number-capabilities | Get the RCS features supported by a test number's device (actions, rich card layouts, revocation). _Example prompt_: "What RCS features does +14155552671 suppor |
| get-whatsapp-account | Get the WhatsApp Business Account (WABA) of the project: onboarding state, WABA ID, business details, ban state, daily message limit and compatible regions. _Ex |
| list-whatsapp-templates | List the WhatsApp channel-specific message templates (managed by Meta). Omni-channel templates can be fetched with the list-messaging-templates tool. _Example p |
| create-whatsapp-template | Create a WhatsApp message template, as a draft or submitted for review. _Example prompt_: "Create a WhatsApp UTILITY template named order_confirmation in Englis |
| update-whatsapp-template | Update a WhatsApp message template draft (or reset an APPROVED/REJECTED/PAUSED/DISABLED template to draft) by name and language. _Example prompt_: "Update the o |
| delete-single-whatsapp-template-language | Delete a single language variant of a WhatsApp message template by name and language — other languages of the same template name are unaffected. _Example prompt |
| delete-all-whatsapp-template-languages | Delete every language variant of a WhatsApp message template by name in one call. _Example prompt_: "Delete all language variants of the order_confirmation What |
| list-available-regions | List all regions where phone numbers are available for the project. Can filter by number type (MOBILE, LOCAL, TOLL_FREE). _Example prompt_: "Which regions have |
| list-rented-numbers | List all active (rented) phone numbers for the project. Can filter by region, type, pattern, and capability. _Example prompt_: "Show me all my active phone numb |
| search-for-available-numbers | Search for phone numbers available to rent, with filters for region, type, pattern, and capabilities. _Example prompt_: "Find available local numbers in the US |
| rent-sinch-virtual-numbers | Rent (activate) one or more phone numbers by providing them in E.164 format. _Example prompt_: "Rent the phone number +12025551234." |
| release-rented-number | Release a rented phone number from your project. _Example prompt_: "Release the phone number +12025551234." |
| sinch-mcp-configuration | List all available tools in the Sinch MCP server and their status. If a tool is disabled, it will display the reason why. _Example prompt_: "Which tools are ava |
{
"mcpServers": {
"sinch": {
"command": "npx",
"args": [
"-y",
"@sinch/mcp"
],
"env": {
"PROJECT_ID": "",
"KEY_ID": "YOUR_KEY_ID",
"KEY_SECRET": "YOUR_KEY_SECRET",
"CONVERSATION_APP_ID": "",
"CONVERSATION_REGION": "",
"DEFAULT_SMS_ORIGINATOR": "",
"GEOCODING_API_KEY": "YOUR_GEOCODING_API_KEY",
"APPLICATION_KEY": "YOUR_APPLICATION_KEY",
"APPLICATION_SECRET": "YOUR_APPLICATION_SECRET",
"CALLING_LINE_IDENTIFICATION": "",
"MAILGUN_API_KEY": "YOUR_MAILGUN_API_KEY",
"MAILGUN_DOMAIN": "",
"MAILGUN_SENDER_ADDRESS": ""
}
}
}
}From the project documentation. Replace placeholders and example paths before connecting.
| Variable | Description | Required |
|---|---|---|
| PROJECT_ID | Declared in the maintainer’s client configuration. | Yes |
| KEY_ID | Declared in the maintainer’s client configuration. | Yes |
| KEY_SECRET | Declared in the maintainer’s client configuration. | Yes |
| CONVERSATION_APP_ID | Declared in the maintainer’s client configuration. | Check documentation |
| CONVERSATION_REGION | Declared in the maintainer’s client configuration. | Yes |
| DEFAULT_SMS_ORIGINATOR | Declared in the maintainer’s client configuration. | Check documentation |
| GEOCODING_API_KEY | Declared in the maintainer’s client configuration. | Check documentation |
| APPLICATION_KEY | Declared in the maintainer’s client configuration. | Yes |
| APPLICATION_SECRET | Declared in the maintainer’s client configuration. | Yes |
| CALLING_LINE_IDENTIFICATION | Declared in the maintainer’s client configuration. | Check documentation |
| MAILGUN_API_KEY | Declared in the maintainer’s client configuration. | Yes |
| MAILGUN_DOMAIN | Declared in the maintainer’s client configuration. | Check documentation |
| MAILGUN_SENDER_ADDRESS | Declared in the maintainer’s client configuration. | Check documentation |
Your assistant inside the workspace — read channels, search history, post messages and tame the noise.
Build a programmable telecommunications stack for connecting telephony services with the Internet via a cloud-based utility.
Inbox intelligence — search, read, draft and send Gmail through your assistant with OAuth auto-setup.
Read and write Jira, Confluence, Bitbucket, JSM and Compass from your AI client — with your own permissions.
Read and send Telegram messages through your assistant — chats, channels and history via the client API.
Enables Discord bot integration with Model Context Protocol (MCP) compatible applications like Claude Desktop.