COURIER TOOLS

123 tools from the Courier MCP Server, categorised by risk level.

READ 54 tools
Read bulk_subscribe_to_list Replace all subscribers on a list with the given recipients. Read courier_installation_guide Get the Courier SDK installation guide for a specific platform. For client-side SDKs (React, iOS, Android, ... Read get_audience Get an audience by its ID, including its filter definition. Read get_audit_event Get a specific audit event by its ID. Read get_brand Get a brand by its ID. Read get_bulk_job Get the status of a bulk job. Read get_journey Get a journey by ID. Pass version=draft to retrieve the working draft, or version=vN for a historical versi... Read get_journey_template Get a journey-scoped notification template by notification ID. Pass version=draft to retrieve the working d... Read get_list Get a list by its ID. Read get_list_subscribers Get all subscribers of a list. Read get_message Get the full details and status of a single message by its ID. Read get_message_content Get the rendered content (HTML, text, subject) of a previously sent message. Read get_message_history Get the event history for a message, showing each step in the delivery pipeline (enqueued, sent, delivered,... Read get_notification Retrieve a notification template by ID. Optionally request draft, published, or a version such as v001. Read get_notification_content Get the published content blocks of a notification template. Read get_notification_draft_content Get the draft (unpublished) content blocks of a notification template. Read get_provider Fetch a single provider configuration by ID. Read get_routing_strategy Retrieve a routing strategy by ID. Returns the full entity including routing, channels, and providers. Read get_tenant Get a tenant by its ID. Read get_tenant_template Get a tenant notification template association by template ID. Read get_tenant_template_version Get a specific version of a tenant notification template (e.g. latest, published, or v1). Read get_translation Get a translation for a specific locale (e.g. "en_US", "fr_FR"). Read get_user_list_subscriptions Get all list subscriptions for a user. Read get_user_preference_topic Get a user's preference for a specific subscription topic. Read get_user_preferences Get a user's notification preferences (subscriptions, opt-outs, channel preferences). Read get_user_profile_by_id Get a user profile by their ID. Returns profile data including email, phone, and custom properties. Read get_user_push_token Get a specific push/device token for a user. Read list_audience_members List all members of an audience. Read list_audiences List all audiences in the workspace. Read list_audit_events List audit events in the workspace. Useful for tracking API usage and changes. Read list_automations List automation templates in the workspace. Always call this first to discover template_id values before ca... Read list_brands List all brands in the workspace. Read list_bulk_users List the users in a bulk job. Read list_journey_template_versions List published versions of a journey-scoped notification template, ordered most recent first. Read list_journey_templates List notification templates scoped to a journey. Journey-scoped templates can only be used by send nodes wi... Read list_journey_versions List published versions of a journey, ordered most recent first. Read list_journeys List journey templates in the workspace. Call this first to discover journey IDs before calling invoke_jour... Read list_lists Get all lists. Optionally filter by pattern (e.g. 'example.list.*'). Read list_messages List messages you've previously sent. Filter by status, recipient, notification, provider, tags, or tenant. Read list_notification_checks List checks for a notification submission. Read list_notification_versions List version history for a notification template. Read list_notifications List notification templates. Optionally filter by cursor. Read list_provider_catalog List available provider types from the catalog with their configuration schemas. Read list_providers List configured provider integrations for the workspace. Read list_routing_strategies List routing strategies in the workspace. Returns metadata only; use get for full details. Read list_routing_strategy_notifications List notification templates associated with a routing strategy. Useful for checking linked templates before... Read list_tenant_templates List notification templates configured for a tenant. Read list_tenant_users List users associated with a tenant. Read list_tenants List all tenants in the workspace. Read list_user_push_tokens List all push/device tokens for a user. Read list_user_tenants List all tenants a user belongs to. Read subscribe_user_to_list Subscribe a user to a list. Creates the list if it doesn't exist. Read subscribe_user_to_lists Subscribe a user to one or more lists. Creates lists that do not exist. Read unsubscribe_user_from_list Unsubscribe a user from a list.
WRITE 49 tools
Write add_bulk_users Add users to an existing bulk job. Write add_subscribers_to_list Append subscribers to a list without removing existing subscribers. Write add_user_to_tenant Add a user to a tenant. Write archive_journey Archive a journey. Archived journeys cannot be invoked but existing runs continue to completion. Write archive_journey_template Archive a journey-scoped notification template. Archived templates cannot be sent. Write archive_notification Archive a notification template by ID. Write archive_request Archive a send request and all its associated messages by request ID. Write archive_routing_strategy Archive a routing strategy. The strategy must not have associated notification templates; unlink all templa... Write bulk_add_user_tenants Add a user to multiple tenants at once. A custom profile can be supplied per tenant. Write bulk_add_user_tokens Add multiple push/device tokens for a user in one request. Overwrites matching existing tokens. Write create_brand Create a new brand. The API requires settings — omitting it returns a 400. If you do not have specific bran... Write create_bulk_job Create a new bulk job for sending messages to multiple recipients. Workflow: create_bulk_job → add_bulk_use... Write create_journey Create a new journey. Defaults to DRAFT state. Send nodes are not allowed on create — create the shell with... Write create_journey_template Create a notification template scoped to a journey. Defaults to DRAFT; pass state: "PUBLISHED" to publish o... Write create_list Create or update a list by list ID. Write create_notification Create a V2 notification template. name is required. Provide content inline or set it immediately after cre... Write create_or_merge_user Create a new user profile or merge supplied values into an existing profile (POST). Existing fields not inc... Write create_or_replace_user_push_token Create or replace a push/device token for a user. Write create_or_update_tenant Create or replace a tenant. Tenants represent organizations or groups that users belong to. Write create_provider Create a new provider (integration) configuration. Once routing strategies or notification templates refere... Write create_routing_strategy Create a routing strategy defining how notifications are delivered across channels and providers. Write generate_jwt_for_user Generate a JWT authentication token for a user. Used for client-side SDK auth (Inbox, Preferences, etc.). Write patch_profile Partially update a user profile via JSON Patch (RFC 6902). Use add/replace/remove operations on specific pr... Write patch_user_token Apply a JSON Patch (RFC 6902) to a specific push token. Write publish_journey Publish the current draft of a journey, making it live and invokable. Pass version to roll back to a prior ... Write publish_journey_template Publish the current draft of a journey-scoped notification template. Optionally pass version to roll back t... Write publish_notification Publish a notification template, making it available for sending. Must be called before send_message_templa... Write publish_tenant_template Publish a version of a tenant notification template. Write put_notification_content Replace the elemental content of a V2 notification template. Overwrites all elements. Use channel elements ... Write put_notification_element Update a single element within a V2 notification template. Write put_notification_locale Set locale-specific content overrides for a V2 notification template. Each element override must reference ... Write replace_journey Replace (update) a journey draft. Full document replacement — include all nodes and properties in the body.... Write replace_journey_template Replace the draft of a journey-scoped notification template. Full document replacement. Call publish_journe... Write replace_notification Replace a notification template entirely (full document PUT). Write replace_profile Fully replace a user profile (PUT). All existing data is overwritten; include every field you want to keep. Write replace_routing_strategy Replace a routing strategy. Full document replacement; missing optional fields are cleared. Write replace_tenant_template Create or replace a tenant notification template (draft unless published is true). Write restore_list Restore a previously deleted list. Write send_message Send a message to a user using inline title and body content (no template). Optionally specify routing chan... Write send_message_template Send a message to a user using a published notification template. The template must be published before sen... Write send_message_to_list Send a message to all subscribers of a list using inline title and body content. Write send_message_to_list_template Send a message to all subscribers of a list using a notification template. Write update_audience Create or update an audience with a filter definition. Write update_brand Replace an existing brand with new values. Write update_notification_checks Update check statuses for a notification submission. Write update_provider Replace an existing provider configuration. Full replacement — retrieve current config with get_provider fi... Write update_tenant_preference Set the default notification preference for a subscription topic on a tenant. This controls tenant-level de... Write update_translation Create or update a translation for a specific locale. Write update_user_preference_topic Update a user's preference for a specific subscription topic (opt in, opt out, or set channel preferences).
How many tools does the Courier MCP server have? +

The Courier MCP server exposes 123 tools across 4 categories: Read, Write, Destructive, Execute.

How do I enforce policies on Courier tools? +

Route the Courier server through the PolicyLayer gateway. Define allow, deny, or approval rules per tool in the dashboard — they are enforced on every call before it reaches the server.

What risk categories do Courier tools fall into? +

Courier tools are categorised as Read (54), Write (49), Destructive (15), Execute (5). Each category has a recommended default policy.

Let agents act without letting them run wild.

Route your MCP servers through PolicyLayer and every tool call is checked against your policy before it runs — allow, deny, or require approval. Per-identity grants. Full audit log. Live in minutes.

Free to start. No card required.

4,600+ MCP servers and 31,000+ tools scanned and risk-classified.

// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.