Sinch Voice API: Choosing between v1 and v2
For all new projects, please use Voice API v2. This is especially important for projects involving:
- AI capabilities like Streams and Voice Relay
- Voice campaigns like Batch calling
You should only use the older Voice API v1 if one of the following is a strict requirement:
- The project must be in General Availability (GA).
- The project requires In-App voice or Conferencing (until these features are available in v2).
This guide includes best practices for using generative AI tools with Sinch's Voice API v2 API. Generative AI can make mistakes, and Sinch has limited influence over the output of any given generative AI tool. Ensure you review any code produced by generative AI to confirm its accuracy, stability, and security against our documentation, your environment, and your needs.
You can use AI tools to facilitate the generation of code that you can use with Sinch's Voice API v2.
While there are any number of ways to make use of AI tools, we provide guidance on using Sinch's documentation MCP server to utilize our documentation.
In order to generate code samples using AI tools, you may connect directly to Sinch's documentation MCP server. This will make several tools available to your system that facilitate endpoint identification, information lookups, and general context-setting.
Sinch's documentation MCP server provides tools that help you navigate Sinch's documentation. Because Sinch's documentation includes various code samples, it can also help you generate code samples. It will not make calls to the identified endpoints for you; you must include any provided code in your solution and customize it to correctly reference your account and credentials.
The tools are described in the table below. Note that, while you may not have to explicitly call out these tools when designing your prompt (or using the prompts we provide later in this document), you must still ensure the tools are activated in whatever AI environment you work in:
| Tool | Parameters | Description |
|---|---|---|
whoami | None | Returns information about the authenticated user. |
list-apis | name?: string | Lists available APIs with their context and purpose. |
get-endpoints | name: string | Returns all endpoints and their descriptions for a specific API. |
get-endpoint-info | name: string``path: string``method: string | Returns comprehensive information about a specific endpoint, including parameters, security, and examples. |
get-security-schemes | name: string``path: string``method: string | Gets the security schemes for a specific API. |
get-full-api-description | name: string | Returns the complete OpenAPI description. |
search | query: string | Searches documentation and returns relevant content for a query. |
You may connect to our documentation MCP server by clicking the Connect MCP button:
The AI tools listed in the Connect MCP button drop-down list and the tools described below are for illustrative purposes. You may use our documentation MCP server with any AI tool that can connect to MCP servers.
Alternatively, copy the following URL and add it to your AI tool: https://developers.sinch.com/mcp. Some examples of how to add the Sinch documentation MCP server tools to your AI solution are detailed in the tabs below:
- In Cursor, open the command palette.
- macOS:
Command + Shift + P - Windows/Linux:
Ctrl + Shift + P
- Type "Open MCP settings" in the command palette.
- Select "Add custom MCP".
Cursor opens the mcp.json file.
- In
mcp.json, add your server configuration:
{
"mcpServers": {
"sinch-mcp": {
"url": "https://developers.sinch.com/mcp"
}
}
}- Save the
mcp.jsonfile. - Return to MCP settings and confirm the connection.
If authentication is required, select Needs login and complete the sign-in flow. After connecting, Cursor displays the list of available tools.
In Cursor chat (Agent mode), ask a question that triggers an MCP tool.
A coding agent working on a Voice API v2 integration can drive the Sinch CLI directly instead of hand-writing the webhook server that the Voice API v2 tutorials build by hand. sinch functions init scaffolds a function from a template, sinch functions dev runs it locally and reaches it from a real Sinch number without a manually configured tunnel, and sinch functions deploy ships it and points the Voice service's webhook at the deployed function.
Most commands, including functions deploy, accept a --json flag that prints machine-readable output instead of interactive progress, which an agent can parse without screen-scraping.
Credentials are not left in project files for an agent to read or leak: sinch auth login stores the key secret in the OS keychain (Windows Credential Manager, macOS Keychain, or Linux Secret Service), and sinch secrets add does the same for a function's custom secrets.
The CLI covers the rest of the platform too, so an agent working across a call flow does not need separate tooling: sinch voice, sinch numbers, sinch sip, sinch fax, and sinch conversation manage Voice API v2 resources, phone numbers, Elastic SIP Trunking, fax, and the Conversation API from the same commands.



