Send
| Tool | What it does | Write |
|---|---|---|
send_message | Send a message to a user using inline title and body content (no template). | Yes |
send_message_template | Send a message to a user using a published notification template. | Yes |
send_message_to_list | Send a message to all subscribers of a list using inline title and body content. | Yes |
send_message_to_list_template | Send a message to all subscribers of a list using a notification template. | Yes |
Messages
| Tool | What it does | Write |
|---|---|---|
list_messages | List messages you’ve previously sent. | |
get_message | Get the full details and status of a single message by its ID. | |
get_message_content | Get the rendered content (HTML, text, subject) of a previously sent message. | |
get_message_history | Get the event history for a message, showing each step in the delivery pipeline (enqueued, sent, delivered, etc.). | |
cancel_message | Cancel a message that is currently being delivered. | Yes |
resend_message | Resend a previously sent message. | Yes |
trace_message | Trace delivery in one call. |
Profiles
| Tool | What it does | Write |
|---|---|---|
get_user_profile_by_id | Get a user profile by their ID. | |
create_or_merge_user | Create a new user profile or merge supplied values into an existing profile (POST). | Yes |
replace_profile | Fully replace a user profile (PUT). | Yes |
patch_profile | Partially update a user profile via JSON Patch (RFC 6902). | Yes |
delete_profile | Delete a user profile permanently.The user ID to delete. | Yes |
get_user_list_subscriptions | Get all list subscriptions for a user.Pagination cursor. | |
subscribe_user_to_lists | Subscribe a user to one or more lists. | Yes |
delete_user_list_subscriptions | Delete all list subscriptions for a user. | Yes |
Lists
| Tool | What it does | Write |
|---|---|---|
list_lists | Get all lists. | |
get_list | Get a list by its ID. | |
get_list_subscribers | Get all subscribers of a list.Pagination cursor. | |
create_list | Create or update a list by list ID.Display name for the list. | Yes |
subscribe_user_to_list | Subscribe a user to a list. | Yes |
unsubscribe_user_from_list | Unsubscribe a user from a list.The user ID to unsubscribe. | Yes |
delete_list | Delete a list by its ID. | Yes |
restore_list | Restore a previously deleted list. | Yes |
bulk_subscribe_to_list | Replace all subscribers on a list with the given recipients. | Yes |
add_subscribers_to_list | Append subscribers to a list without removing existing subscribers. | Yes |
Audiences
| Tool | What it does | Write |
|---|---|---|
get_audience | Get an audience by its ID, including its filter definition. | |
list_audience_members | List all members of an audience.Pagination cursor. | |
list_audiences | List all audiences in the workspace.Pagination cursor. | |
update_audience | Create or update an audience with a filter definition. | Yes |
delete_audience | Delete an audience by its ID.The audience ID to delete. | Yes |
Notification templates
| Tool | What it does | Write |
|---|---|---|
list_notifications | List notification templates. | |
get_notification_content | Get the published content blocks of a notification template. | |
get_notification_draft_content | Get the draft (unpublished) content blocks of a notification template. | |
create_notification | Create a V2 notification template. | Yes |
get_notification | Retrieve a notification template by ID. | |
replace_notification | Replace a notification template entirely (full document PUT). | Yes |
archive_notification | Archive a notification template by ID.The notification template ID to archive. | Yes |
list_notification_versions | List version history for a notification template. | |
publish_notification | Publish a notification template, making it available for sending. | Yes |
list_notification_checks | List checks for a notification submission. | |
update_notification_checks | Update check statuses for a notification submission. | Yes |
put_notification_content | Replace the elemental content of a V2 notification template. | Yes |
put_notification_element | Update a single element within a V2 notification template. | Yes |
put_notification_locale | Set locale-specific content overrides for a V2 notification template. | Yes |
cancel_notification_submission | Cancel a notification template submission. | Yes |
Brands
| Tool | What it does | Write |
|---|---|---|
create_brand | Create a new brand. | Yes |
get_brand | Get a brand by its ID. | |
list_brands | List all brands in the workspace.Pagination cursor. | |
update_brand | Replace an existing brand with new values. | Yes |
delete_brand | Delete a brand by its ID.The brand ID to delete. | Yes |
Auth
| Tool | What it does | Write |
|---|---|---|
generate_jwt_for_user | Generate a JWT authentication token for a user. | Yes |
Device tokens
| Tool | What it does | Write |
|---|---|---|
list_user_push_tokens | List all push/device tokens for a user. | |
get_user_push_token | Get a specific push/device token for a user. | |
create_or_replace_user_push_token | Create or replace a push/device token for a user. | Yes |
bulk_add_user_tokens | Add multiple push/device tokens for a user in one request. | Yes |
patch_user_token | Apply a JSON Patch (RFC 6902) to a specific push token. | Yes |
delete_user_token | Delete a specific push token for a user.The token identifier to delete. | Yes |
Bulk
| Tool | What it does | Write |
|---|---|---|
create_bulk_job | Create a new bulk job for sending messages to multiple recipients. | Yes |
add_bulk_users | Add users to an existing bulk job.Array of user objects to add. | Yes |
run_bulk_job | Run a bulk job, triggering delivery to all added users. | Yes |
get_bulk_job | Get the status of a bulk job. | |
list_bulk_users | List the users in a bulk job.Pagination cursor. |
Tenants
| Tool | What it does | Write |
|---|---|---|
get_tenant | Get a tenant by its ID. | |
create_or_update_tenant | Create or replace a tenant. | Yes |
list_tenants | List all tenants in the workspace.Pagination cursor. | |
delete_tenant | Delete a tenant by its ID.The tenant ID to delete. | Yes |
list_tenant_users | List users associated with a tenant.Pagination cursor. | |
update_tenant_preference | Set the default notification preference for a subscription topic on a tenant. | Yes |
delete_tenant_preference | Remove default notification preference for a topic from a tenant. | Yes |
list_tenant_templates | List notification templates configured for a tenant. | |
get_tenant_template | Get a tenant notification template association by template ID. | |
replace_tenant_template | Create or replace a tenant notification template (draft unless published is true). | Yes |
publish_tenant_template | Publish a version of a tenant notification template. | Yes |
get_tenant_template_version | Get a specific version of a tenant notification template (e.g. | |
delete_tenant_template | Delete a tenant notification template. | Yes |
Users
| Tool | What it does | Write |
|---|---|---|
get_user_preferences | Get a user’s notification preferences (subscriptions, opt-outs, channel preferences). | |
get_user_preference_topic | Get a user’s preference for a specific subscription topic. | |
update_user_preference_topic | Update a user’s preference for a specific subscription topic (opt in, opt out, or set channel preferences). | Yes |
delete_user_preference_topic | Delete a user’s preference for a specific subscription topic, reverting it to the topic’s default status. | Yes |
list_user_tenants | List all tenants a user belongs to.Pagination cursor. | |
add_user_to_tenant | Add a user to a tenant.Tenant-scoped profile overrides. | Yes |
remove_user_from_tenant | Remove a user from a tenant. | Yes |
bulk_add_user_tenants | Add a user to multiple tenants at once. | Yes |
remove_all_user_tenants | Remove a user from all tenants. | Yes |
bulk_update_user_preferences | Additively create or update a user’s preferences for one or more topics in a single request. | Yes |
bulk_replace_user_preferences | Replace a user’s complete set of preference overrides in one request. | Yes |
update_user_preference_topic takes tenant_id to write the preference in one tenant’s context, and digest_schedule_id to move the user onto another of the topic’s digest schedules.
Routing strategies
| Tool | What it does | Write |
|---|---|---|
create_routing_strategy | Create a routing strategy defining how notifications are delivered across channels and providers. | Yes |
get_routing_strategy | Retrieve a routing strategy by ID. | |
replace_routing_strategy | Replace a routing strategy. | Yes |
archive_routing_strategy | Archive a routing strategy. | Yes |
list_routing_strategies | List routing strategies in the workspace. | |
list_routing_strategy_notifications | List notification templates associated with a routing strategy. |
Journeys
| Tool | What it does | Write |
|---|---|---|
list_journeys | List journey templates in the workspace, returning the journey IDs and version state of each. | |
invoke_journey | Invoke a journey run from a journey template. | Yes |
create_journey | Create a new journey. | Yes |
get_journey | Get a journey by ID. | |
replace_journey | Replace (update) a journey draft. | Yes |
publish_journey | Publish the current draft of a journey, making it live and invokable. | Yes |
archive_journey | Archive a journey. | Yes |
list_journey_versions | List published versions of a journey, ordered most recent first. | |
list_journey_templates | List notification templates scoped to a journey. | |
create_journey_template | Create a notification template scoped to a journey, as a draft. | Yes |
get_journey_template | Get a journey-scoped notification template by notification ID. | |
replace_journey_template | Replace the draft of a journey-scoped notification template. | Yes |
archive_journey_template | Archive a journey-scoped notification template. | Yes |
publish_journey_template | Publish the current draft of a journey-scoped notification template. | Yes |
list_journey_template_versions | List published versions of a journey-scoped notification template, ordered most recent first. | |
get_journey_template_content | Fetch the elemental content of a journey-scoped notification template. | |
put_journey_template_content | Replace the elemental content of a journey-scoped notification template. | Yes |
put_journey_template_locale | Set locale-specific content overrides for a journey-scoped notification template. | Yes |
cancel_journey | Cancel journey runs. | Yes |
list_journey_runs | List journey runs, newest first. | |
get_journey_run | Get one journey run by id: its journey, status, and timestamps. | |
list_journey_run_steps | List the steps of a journey run in order, with each node and what happened at it. |
Broadcasts
| Tool | What it does | Write |
|---|---|---|
list_broadcasts | List broadcasts in the workspace. | |
create_broadcast | Create a broadcast: a one-off message to a list or audience on a single channel. | Yes |
get_broadcast | Get a broadcast by id, including its channel and send or schedule state. | |
rename_broadcast | Rename a broadcast. | Yes |
delete_broadcast | Delete a broadcast. | Yes |
get_broadcast_content | Get a broadcast’s Elemental content. | |
put_broadcast_content | Replace a broadcast’s content with an Elemental document. | Yes |
send_broadcast | Send a broadcast now to every member of a list or audience. | Yes |
schedule_broadcast | Schedule a broadcast to send later to a list or audience. | Yes |
cancel_broadcast_schedule | Cancel a broadcast’s scheduled send. | Yes |
duplicate_broadcast | Copy a broadcast into a new draft. | Yes |
Requests
| Tool | What it does | Write |
|---|---|---|
archive_request | Archive a send request and all its associated messages by request ID. | Yes |
Providers
| Tool | What it does | Write |
|---|---|---|
list_providers | List configured provider integrations for the workspace. | |
get_provider | Fetch a single provider configuration by ID. | |
list_provider_catalog | List available provider types from the catalog with their configuration schemas. | |
create_provider | Create a new provider (integration) configuration. | Yes |
update_provider | Replace an existing provider configuration. | Yes |
delete_provider | Delete a provider configuration. | Yes |
Translations
| Tool | What it does | Write |
|---|---|---|
get_translation | Get a translation for a specific locale (e.g. | |
update_translation | Create or update a translation for a specific locale. | Yes |
Inbound
| Tool | What it does | Write |
|---|---|---|
track_inbound_event | Track an inbound event that can trigger automations. | Yes |
Audit events
| Tool | What it does | Write |
|---|---|---|
get_audit_event | Get a specific audit event by its ID.The audit event ID. | |
list_audit_events | List audit events in the workspace. |
Preferences
| Tool | What it does | Write |
|---|---|---|
list_preference_sections | List the workspace’s preference sections. | |
create_preference_section | Create a preference section in your workspace. | Yes |
get_preference_section | Retrieve a preference section by id, including its topics. | |
replace_preference_section | Replace a preference section. | Yes |
archive_preference_section | Archive a preference section. | Yes |
publish_preferences | Publish the workspace’s preferences page. | Yes |
list_preference_topics | List the topics in a preference section.Id of the preference section. | |
create_preference_topic | Create a subscription preference topic inside a section. | Yes |
get_preference_topic | Retrieve a topic within a section. | |
replace_preference_topic | Replace a topic within a section. | Yes |
archive_preference_topic | Archive a topic within a section.Id of the preference section. | Yes |
create_preference_topic and replace_preference_topic take a digest object: its template, schedules, and categories. Leaving digest out of a replace keeps the topic’s digest, and null turns it off.
Digests
| Tool | What it does | Write |
|---|---|---|
release_digest | Release a digest schedule early, send what users have collected so far now instead of waiting for the scheduled time. | Yes |
list_digest_instances | List the digest instances for a schedule. | |
release_user_digest | Release one recipient’s held digest for a topic now, instead of waiting for its schedule. | Yes |
Docs
| Tool | What it does | Write |
|---|---|---|
courier_installation_guide | Get the Courier SDK installation guide for a specific platform. |
Diagnostics
| Tool | What it does | Write |
|---|---|---|
get_environment_config | Check which Courier API key, base URL, and package version this MCP session is using. |