trackmcp
Back to directory
messagemedia

sinch-engage-mcp-server

View on GitHub

A Model Context Protocol (MCP) server for Sinch Engage (EU) and Sinch MessageMedia (AU). Enables AI agents to use tools for sending messages, managing contacts, and retrieving reports.

2 stars JavaScriptOthers Updated Sep 18, 2025

Documentation

Sinch Engage MCP Server

Latest Release

This repository contains the source code for the Sinch Engage (Sinch MessageMedia in AU) MCP server, which provides Sinch Engage APIs as MCP tools.

Tools Overview

Here is the list of tools available in the MCP server (all the phone numbers must be provided in E.164 format, e.g., `+61400000000` for Australia).

Messaging

ToolDescriptionCategoryMode
sendMessageSend SMS to a mobile numbermessagingwrite

Reporting

ToolDescriptionCategoryMode
getDetailedMessageReportGenerates a detailed report of sent and received messages for a specified date range, with optional filters for direction, accounts, metadata, and grouping.reportingread
getSummaryMessageReportGenerates a summary report of sent and received messages for a specified date range, with optional filters for direction, accounts, and grouping.reportingread
getSummaryInsightMessageReportFetches a pre-compiled summary report of sent and received messages for a specified date range, with optional filters for direction, accounts, and grouping.reportingread
getAsyncReportStatusRetrieves the status of an asynchronous report request by report_id.reportingread
getAsyncReportFieldsRetrieves the list of available fields for asynchronous detailed report export.reportingread
requestAsyncDetailedMessageReportRequests an asynchronous detailed report of sent and received messages for a specified date range, with delivery options for report format and destination.reportingread

Contacts

ToolDescriptionCategoryMode
getContactGroupsRetrieves a paginated list of contact groups (lists) associated with the account.reportingread
getContactGroupDetailsRetrieves details for a specific contact group (list) identified by group_id.reportingread
getContactWithSearchRetrieves a list of contacts, filterable by group, phone number, name, and channel type.reportingread
createContactGroupCreates a new contact group (list) with the specified name and optional alias.reportingwrite
createContactCreates a new contact with the specified details.reportingwrite
updateContactUpdates an existing contact identified by contact_id with new details.reportingwrite
deleteContactGroupDeletes a specific contact group (list) identified by group_id.reportingdelete

Getting Started

Prerequisites

API credentials

To use the APIs used by the MCP tools, you will need the following credentials:

MCP Server Configuration

The Sinch Engage MCP server is available as an NPM package to the executed. Here is how to set it up in the Claude Desktop configuration file (`claude_desktop_config.json`). Remember to fill in the environment variables with your own credentials and the region (currently supported `EU` & `AU`):

json
{
  "mcpServers": {
    "Sinch Engage": {
      "command": "npx",
      "args": [
        "-y",
        "@sinch-engage/mcp-server"
      ],
      "env": {
        "SINCH_ENGAGE_API_KEY": "",
        "SINCH_ENGAGE_API_SECRET": "",
        "SINCH_ENGAGE_REGION": "",
        "MCP_TOOL_CATEGORIES": "reporting, contacts, messaging",
        "MCP_TOOL_MODES": "read, write, delete"
      }
    }
  }
}

Running the MCP Server locally

Option 1: Start the MCP server with stdio using Claude Desktop

To run the MCP server locally with Claude Desktop, you will need to clone the repository and build the MCP server. This option is useful for local development and testing.

Step 1: Clone the repository

bash
git clone https://github.com/messagemedia/sinch-engage-mcp-server.git

Step 2: Install dependencies

bash
cd sinch-engage-mcp-server
npm install

Step 3: Setup Claude Desktop configuration

Here is an example of how to configure the MCP server in the Claude Desktop configuration file (`claude_desktop_config.json`) where you can provide your Sinch Engage credentials and region (`EU` or `AU`):

json
{
  "mcpServers": {
    "Sinch Engage": {
      "command": "node",
      "args": ["/path/to/sinch-engage-mcp-server/src/index.js"],
      "env": {
        "SINCH_ENGAGE_API_KEY": "",
        "SINCH_ENGAGE_API_SECRET": "",
        "SINCH_ENGAGE_REGION": "",
        "MCP_TOOL_CATEGORIES": "reporting, contacts, messaging",
        "MCP_TOOL_MODES": "read, write, delete"
      }
    }
  }
}

Step 4: (Optional) Filter the tools available in the MCP server

Too many tools mean bigger context, mean higher tokens usage and more confusion for the LLM to select the right tool to use.

You can filter the tools that are available in the MCP server by providing `MCP_TOOL_CATEGORIES` in Claude Desktop configuration options.

If you want to filter tool by permissions, you can use `MCP_TOOL_MODES` to only choose tools that can either read, write or delete data or any combination of them

Frequently asked questions

What is sinch-engage-mcp-server?

sinch-engage-mcp-server is A Model Context Protocol (MCP) server for Sinch Engage (EU) and Sinch MessageMedia (AU). Enables AI agents to use tools for sending messages, managing contacts, and retrieving reports.

How do I install sinch-engage-mcp-server?

Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

Is sinch-engage-mcp-server open source?

Yes — it is hosted on GitHub at https://github.com/messagemedia/sinch-engage-mcp-server and has 2 stars.

Related MCP tools

Run your own MCP server? See who uses it and what to fix.

Measure it with TrackMCP