Sonny MCP

Beta

Give AI tools a safe way to work in Sonny

Model Context Protocol is an open standard that lets compatible assistants discover and use Sonny actions with clear, machine-readable inputs.

Remote MCP configuration

JSON
{
  "mcpServers": {
    "sonny": {
      "url": "https://www.usesonny.com/api/mcp",
      "headers": {
        "Authorization": "Bearer ${SONNY_API_KEY}"
      }
    }
  }
}

Configuration formats vary by client. Add the remote Streamable HTTP endpoint and send your Sonny key in the Authorization header.

Why MCP

The same Sonny, through your AI tools

Every MCP tool uses the same workflows as Sonny's public API, so your automation and your team get consistent results.

Tools discover themselves
Your assistant can see available Sonny actions, their required inputs, and whether an action reads, writes, or deletes data.
Complete API coverage
Every public API operation is available as an MCP tool, from listing contacts to retrying a webhook delivery.
The same safety boundary
MCP uses the same API key, scopes, workspace boundaries, and business rules as every direct API request.

Tool catalog

Clear actions with narrow inputs

Read-only tools are marked for assistants. Destructive tools are identified separately, so your client can ask for confirmation before it acts.

list_contacts
Returns workspace contacts with tags and conversation counts.
create_contact
Creates a contact. Email addresses are unique within a workspace.
get_contact
Returns one workspace contact.
update_contact
Updates supplied contact fields.
archive_contact
Archives the contact without deleting conversation history.
list_channels
Returns the stable channel values accepted by conversation filters.
list_sources
Returns configured workspace sources and the conversation channels each source supports.
list_conversations
Returns non-trash, non-spam conversations.
get_conversation
Returns one conversation with contact, assignee, group, and tags.
update_conversation
Changes status, priority, or assignment while preserving audit, CSAT, notification, search, realtime, and webhook side effects.
list_messages
Returns a chronological page of messages, newest page first via the before cursor.
create_internal_note
Adds an internal note. This endpoint never sends a customer-facing message.
list_webhooks
Returns endpoints and recent delivery status. Secrets are never returned.
create_webhook
Creates an HTTPS endpoint. The signing secret is returned once.
list_webhook_events
Returns the canonical subscription catalog.
update_webhook
Changes endpoint configuration or enabled state.
delete_webhook
Deletes the endpoint and its delivery history.
test_webhook
Queues webhook.test for this enabled endpoint even when it is not subscribed to that event. Disabled endpoints return 409.
list_webhook_deliveries
Returns the 50 most recent delivery attempts.
retry_webhook_delivery
Resets a terminal failed delivery and queues it immediately. Disabled endpoints return 409.

Connect securely

One key, only the access you choose

Create a scoped key
Select only the resources and actions your assistant needs.
Add the MCP server
Use the remote endpoint and keep the key in your client's secret storage.
Stay in one workspace
Sonny scopes every tool call to the workspace that owns the key.