Reteno MCP Server

The Reteno MCP server exposes the Reteno API as Model Context Protocol (MCP) tools, so AI agents can read and act on your account data β€” contacts, segments, events, message templates, sending, and analytics β€” without you opening the platform.

The server endpoint is:

https://mcp.reteno.com
🚧

Research Preview

The Reteno MCP server is available as a research preview and is currently offered for Reteno only. Expect iteration and evolving capabilities.

What MCP Is

Model Context Protocol (MCP) is an open standard that lets AI agents communicate with external services and take actions on your behalf. The Reteno MCP server is the connection layer behind the Reteno plugin for Claude Code and Claude Cowork and the Reteno plugin for OpenAI Codex.

Authentication

Authorization happens at two separate levels.

The MCP connection uses OAuth 2.0. When you set up the plugin, you sign in to Reteno and grant access, and the plugin connects to the server with the issued access token. You don't put an API key in the plugin configuration. Your Reteno account's access rights determine what the agent can do, and the agent can read contact data, including personal data.

The Reteno REST API β€” for calling the API directly, outside MCP β€” is separate and uses HTTP Basic authentication with a Reteno API key (see API Keys). You don't need an API key for the MCP connection.

Connecting to the MCP Server

The Reteno MCP server is hosted by Reteno. You connect to it through the official Reteno plugin for Claude Code, Claude Cowork, and OpenAI Codex β€” the plugin registers the hosted server and sets up the connection for you. Connecting directly from other MCP clients is not supported during the research preview.

To verify the connection after setup, follow the verification steps in your client's setup guide.

Available Tools

The server groups its tools by area. Each tool corresponds to a Reteno API method, and the tool name is the exact identifier an agent uses to call it.

Account, Organization and Directories

  • get_account_info β€” Get Reteno account information.
  • get_organisation_info β€” Get organization-level configuration data.
  • get_addressbooks β€” Get account address books.
  • list_email_interfaces β€” Get email interfaces (senders).
  • list_sms_interfaces β€” Get SMS interfaces (senders).
  • get_event_types β€” List event types for the authenticated organization.

Contacts

  • upsert_contact β€” Create or update one contact synchronously by its identifiers.
  • bulk_upsert_contacts β€” Create or update many contacts in one request.
  • upload_contacts β€” Start an asynchronous contact import from a file or batch payload.
  • get_import_status β€” Check the status of an asynchronous contact import by session ID.
  • update_contact β€” Update a contact by ID.
  • delete_contact β€” Delete a contact by ID.
  • delete_contact_by_external_customer_id β€” Delete a contact by external customer ID.
  • subscribe_contact β€” Create or update a contact from a subscription form; new contacts are created as unconfirmed.
  • list_contacts β€” Search contacts using the supplied query filters.
  • get_contact β€” Get a contact by ID.
  • get_contacts_by_email β€” Get a contact by email address.
  • get_contact_id_by_token β€” Get a contact ID by mobile push token.
  • update_interaction_status β€” Update interaction status.

Segments

  • list_groups β€” List segments available in the account.
  • get_group_contacts β€” Search contacts in a segment by segment ID.
  • attach_group_contacts β€” Attach contacts to a static segment by segment ID.
  • detach_group_contacts β€” Remove contacts from a segment by segment ID.

Events and Behavior Tracking

  • create_event β€” Create a current event.
  • create_past_events β€” Upload historical events.
  • get_contacts_activity_v2 β€” Get contacts activity from the v2 behavior tracking API.
  • get_contact_message_history β€” Get a contact's message history from the v2 behavior tracking API.

Email Messages (Templates)

  • create_email_message β€” Create a reusable email message template.
  • list_email_messages β€” Search email messages by partial name or tag (up to 500 results per request).
  • update_email_message β€” Update an existing email message template by internal message ID.
  • delete_email_message β€” Delete an email message by ID.
  • update_email_message_translation β€” Update a translated email message variant.
  • delete_email_message_translation β€” Delete a translated email message variant.
  • get_email_message_view_link β€” Get the hosted preview link for an email message template.
  • get_email_message_export β€” Get downloadable export links (HTML/CSS/JSON) for an email message and its translations.
  • get_email_model β€” Get a download link for the structured (editor) model of an email.
  • prepare_email_model_upload β€” Prepare a short-lived upload session for one structured model file.
  • update_email_model β€” Finalize a structured-model edit from a completed upload session.
  • prepare_email_message_upload β€” Prepare a short-lived upload session for email HTML and CSS.

Mobile Push

  • list_mobile_push_messages β€” Search mobile push messages by partial name.
  • create_mobile_push_message β€” Create a base mobile push message.
  • get_mobile_push_message β€” Get a mobile push message by ID.
  • update_mobile_push_message β€” Update a base mobile push message.
  • delete_mobile_push_message β€” Delete a base mobile push message.
  • update_mobile_push_message_translation β€” Update a translated mobile push message variant.
  • delete_mobile_push_message_translation β€” Delete a translated mobile push message variant.
  • get_mobile_push_token_activation β€” Get mobile push token activation state.
  • update_mobile_push_token_activation β€” Update mobile push token activation state.

App Inbox

  • list_app_inbox_messages β€” Search app inbox messages by partial name.
  • create_app_inbox_message β€” Create a base app inbox message.
  • get_app_inbox_message β€” Get an app inbox message by ID.
  • update_app_inbox_message β€” Update a base app inbox message.
  • delete_app_inbox_message β€” Delete a base app inbox message.
  • update_app_inbox_message_translation β€” Update a translated app inbox message variant.
  • delete_app_inbox_message_translation β€” Delete a translated app inbox message variant.

SMS

  • list_sms_messages β€” Search SMS messages by partial name or tag (up to 500 results per request).
  • create_sms_message β€” Create a base SMS message.
  • get_sms_message β€” Get SMS message content, title, sender, and text by internal SMS message ID.
  • update_sms_message β€” Update a base SMS message.
  • delete_sms_message β€” Delete a base SMS message.
  • update_sms_message_translation β€” Update a translated SMS message variant.
  • delete_sms_message_translation β€” Delete a translated SMS message variant.
  • get_sms_callouts β€” Get SMS callout statistics for the requested filters or period.

Workflows

  • list_workflows β€” List workflows available in the account.
  • create_workflow β€” Create a new inactive workflow shell for the organization.
  • update_workflow β€” Save an edited workflow graph file from a completed upload session.
  • get_workflow_export β€” Export a workflow's structure (graph and start/stop configuration) as JSON.
  • prepare_workflow_upload β€” Prepare a short-lived upload session for workflow graph JSON and optional configs JSON.

Sending and Broadcasts

  • send_email_message β€” Send an email to a contact; if the address doesn't exist, Reteno creates a new contact.
  • send_sms_message β€” Send an SMS to a contact; if the phone number doesn't exist, Reteno creates a new contact.
  • smart_send_message β€” Send a prepared message to one or many contacts, with optional per-contact personalization.
  • get_message_status β€” Get delivery status for a single sent message.
  • send_broadcast β€” Start a broadcast for email, SMS, mobile push, or web push.
  • list_broadcasts β€” List or filter broadcast campaigns.
  • get_broadcast β€” Get a broadcast by ID.
  • delete_broadcast β€” Delete a broadcast by ID.

Analytics and Deliverability

  • get_messaging_analytics β€” Export aggregated messaging performance, grouped by organization, workflow, or message (up to 185 days).
  • get_events_analytics β€” Export aggregated event counts for the organization.
  • get_email_deliverability_setup β€” Get a read-only snapshot of email domain, sender, short-link, and unsubscribe setup.
πŸ“˜

Note

Analytics data is sourced from BigQuery reports and updated once per day. Data for the current day is not yet available β€” an agent can only access data through yesterday.

Media

  • prepare_image_upload β€” Prepare a short-lived upload session for one image file.
  • upload_image β€” Upload a previously staged image file to Reteno file storage.

Brand Kit (AI)

  • extract_brandkit β€” Extract a brand kit (visual identity, palette, typography, voice) from a public storefront URL (long-running, ~8–10 minutes).

Capabilities and Limitations

The agent works through the tools listed above. A few hard limits apply during the research preview:

  • Only static segments are supported β€” dynamic segments are not.
  • The agent does not trigger bulk campaigns or scheduled sends on your behalf.
  • In email templates, layout and block structure cannot be changed.

For the full, canonical list of capabilities and limitations, see Integrating Reteno with AI Agents.

Related Articles