Mailrith Email Marketing is a remote MCP server that gives an AI agent 55 tools, among them analytics_create_report, analytics_get_report, automations_create. It answers at https://api.mailrith.com/mcp over streamable HTTP, and it listed its tools to an anonymous client, so no sign-in was needed for that. Our probes reached it 10 of 10 times since 5 September 2026; the last check, on 18 October 2026, succeeded.
Manage Subscribers, Broadcasts, Sequences, Automations, and reporting in Mailrith.
Description as the publisher wrote it.
| Tool | What it does |
|---|---|
analytics_create_report | Runs from compact rollups. Ranges through 31 days complete inline; longer ranges are queued. Results expire after 24 hours and never exceed 100 rows. Effect: workspace-change. Retry with the same idempotency_key. Permission: analytics:read. Inputs: idempotency_key, body |
analytics_get_report | Returns one unexpired bounded analytics report by identifier. Permission: analytics:read. Pagination: use bounded pages and returned cursors. API reference: https://mailrith.com/developers/api-reference. Inputs: report_id, limit, starting_after |
automations_create | Creates an automation in the authenticated workspace. Effect: workspace-change. Retry with the same idempotency_key. Permission: automations:write. API reference: https://mailrith.com/developers/api-reference. |
automations_get | Returns one automation from the authenticated workspace. Permission: automations:read. API reference: https://mailrith.com/developers/api-reference. Inputs: automation_id |
automations_list | Returns automations in the authenticated workspace. Permission: automations:read. Pagination: use bounded pages and returned cursors. API reference: https://mailrith.com/developers/api-reference. Inputs: search, limit, starting_after |
automations_preflight | Checks the saved Automation definition and email delivery prerequisite without running any action. Permission: automations:read. API reference: https://mailrith.com/developers/api-reference. Inputs: automation_id |
automations_preview_journey | Shows the bounded path a selected Subscriber would take through the current saved conditions without running actions or writing history. Permissions: subscribers:read, automations:read. API reference: https://mailrith.com/developers/api-ref Inputs: automation_id, subscriber_id |
automations_send_test | Sends up to five selected saved Automation email steps to one explicit test address. This does not start the Automation or run other actions. Effect: external-email. Retry with the same idempotency_key. Permissions: live_actions:write, subs Inputs: automation_id, idempotency_key, body |
automations_update | Updates an existing draft or paused Automation. Before changing a running Automation, read it by ID, retain its status in the current task only, pause it, apply the update, and use bounded direct item reads until is_updating is false. Run p |
automations_update_status | Starts, pauses, or returns one Automation to draft without changing its definition. Effect: external-email. Retry after reading the current resource state. Permissions: live_actions:write, automations:write. API reference: https://mailrith. Inputs: automation_id, body |
broadcasts_cancel | Requests cancellation for delivery work that has not reached the provider. Provider-accepted emails cannot be recalled. Repeat the same request with the same idempotency key when the response is lost. Effect: external-email. Retry with the Inputs: broadcast_id, idempotency_key |
broadcasts_create | Creates a broadcast draft in the authenticated workspace. Effect: workspace-change. Retry with the same idempotency_key. Permission: broadcasts:write. API reference: https://mailrith.com/developers/api-reference. Inputs: idempotency_key, body |
broadcasts_get | Returns a broadcast draft, scheduled send, active send, or completed send. Permission: broadcasts:read. API reference: https://mailrith.com/developers/api-reference. Inputs: broadcast_id |
broadcasts_get_send_progress | Returns bounded delivery progress, current rates, timing, outcome counts, and pause state. Poll until terminal is true; use 5 to 10 second intervals while progress changes and back off to 30 seconds when unchanged. Permission: broadcasts:re Inputs: broadcast_id |
broadcasts_list | Returns broadcast drafts, scheduled sends, active sends, and completed sends. Permission: broadcasts:read. Pagination: use bounded pages and returned cursors. API reference: https://mailrith.com/developers/api-reference. Inputs: search, limit, starting_after |
broadcasts_preflight | Optionally checks the current Subscriber estimate, provider capacity, sender setup, event tracking, and blocking issues. This diagnostic is not required before starting a durable send. Permission: broadcasts:read. API reference: https://mai Inputs: broadcast_id |
broadcasts_schedule | Schedules a draft for future delivery, or changes the delivery time of an existing scheduled Broadcast. This uses Mailrith's durable scheduled-send path and does not start delivery immediately. Effect: external-email. Retry after reading th Inputs: broadcast_id, body |
broadcasts_send | Immediately creates durable preparation for a broadcast draft or scheduled send. Mailrith calculates the exact Subscriber total and checks provider readiness in the background before delivery. A 202 response means the durable send was accep Inputs: broadcast_id, idempotency_key, body |
broadcasts_send_test | Sends a test message from an existing Broadcast that has an email delivery connection. Provide a saved Subscriber ID for personalization; use subscribers_list to find one when needed. The recipient may be any test inbox and does not have to Inputs: broadcast_id, idempotency_key, body |
broadcasts_unschedule | Returns a scheduled Broadcast to draft state before delivery starts. Effect: workspace-change. Retry after reading the current resource state. Permissions: live_actions:write, broadcasts:write. API reference: https://mailrith.com/developers Inputs: broadcast_id |
broadcasts_update | Updates an existing Broadcast draft. Scheduled, running, completed, and failed Broadcasts cannot be changed here. Before changing a scheduled Broadcast, read it by ID and retain its scheduled_at in the current task only. If the saved time i Inputs: broadcast_id, body |
custom_fields_get | Returns one custom field from the authenticated workspace, including its exact ready-to-use email personalization token. Permission: custom_fields:read. API reference: https://mailrith.com/developers/api-reference. Inputs: custom_field_id |
custom_fields_list | Returns a bounded page of custom fields in the authenticated workspace, including each field's exact ready-to-use email personalization token. Permission: custom_fields:read. Pagination: use bounded pages and returned cursors. API reference Inputs: search, limit, starting_after |
discovery_get_capabilities | Returns the current workspace context, discovery URLs, shared request conventions, supported webhook events, and public resource operations available to the authenticated bearer credential. Permission: none. API reference: https://mailrith. |
email_templates_create | Creates a reusable email template scoped to the authenticated workspace. Effect: workspace-change. Retry with the same idempotency_key. Permission: email_templates:write. API reference: https://mailrith.com/developers/api-reference. Inputs: idempotency_key, body |
email_templates_get | Returns a reusable email template linked to the authenticated workspace. Permission: email_templates:read. API reference: https://mailrith.com/developers/api-reference. Inputs: template_id |
email_templates_list | Returns reusable email templates linked to the authenticated workspace. Permission: email_templates:read. Pagination: use bounded pages and returned cursors. API reference: https://mailrith.com/developers/api-reference. Inputs: search, limit, starting_after |
email_templates_preview | Renders one template using a saved Subscriber's name, email, and custom fields without sending or saving anything. Permissions: subscribers:read, email_templates:read. API reference: https://mailrith.com/developers/api-reference. Inputs: template_id, body |
email_templates_update | Updates the content or enabled state of an existing email template. Effect: workspace-change. Retry after reading the current resource state. Permission: email_templates:write. API reference: https://mailrith.com/developers/api-reference. Inputs: template_id, body |
segments_get | Returns one saved segment from the authenticated workspace. Permission: segments:read. API reference: https://mailrith.com/developers/api-reference. Inputs: segment_id |
segments_list | Returns saved segments from the authenticated workspace. Permission: segments:read. Pagination: use bounded pages and returned cursors. API reference: https://mailrith.com/developers/api-reference. Inputs: search, limit, starting_after |
segments_preview | Returns subscriber counts for an unsaved segment definition. Include `current_segment_id` when previewing edits to an existing segment so circular segment references are rejected before saving. Permission: segments:read. API reference: http Inputs: body |
sender_identities_get | Returns one enabled sender name, address, and provider type by stable identifier. Provider credentials and configuration are never returned. Permission: workspace:read. API reference: https://mailrith.com/developers/api-reference. Inputs: sender_identity_id |
sender_identities_list | Returns a bounded page of enabled sender names, addresses, and provider types that can be selected for Broadcasts and Sequences. Provider credentials and configuration are never returned. Permission: workspace:read. Pagination: use bounded Inputs: limit, starting_after |
sequences_create | Creates a sequence in the authenticated workspace. Effect: workspace-change. Retry with the same idempotency_key. Permission: sequences:write. API reference: https://mailrith.com/developers/api-reference. |
sequences_get | Returns one sequence from the authenticated workspace. Permission: sequences:read. API reference: https://mailrith.com/developers/api-reference. Inputs: sequence_id |
sequences_list | Returns sequences in the authenticated workspace. Permission: sequences:read. Pagination: use bounded pages and returned cursors. API reference: https://mailrith.com/developers/api-reference. Inputs: search, limit, starting_after |
sequences_preflight | Checks the saved Sequence, its published emails, and its email delivery connection without changing data or sending email. Permission: sequences:read. API reference: https://mailrith.com/developers/api-reference. Inputs: sequence_id |
sequences_preview_journey | Returns the bounded saved email timeline and shows which messages a selected Subscriber is eligible to receive, without enrolling the Subscriber or sending email. Permissions: subscribers:read, sequences:read. API reference: https://mailrit Inputs: sequence_id, subscriber_id |
sequences_send_test | Sends up to five selected saved Sequence emails to one explicit test address. This does not enroll a Subscriber, start the Sequence, or write delivery activity. Effect: external-email. Retry with the same idempotency_key. Permissions: live_ Inputs: sequence_id, idempotency_key, body |
sequences_update, sequences_update_status, subscribers_add_tag, subscribers_add_to_sequence, subscribers_get, subscribers_list, subscribers_remove_from_sequence, subscribers_remove_tag, subscribers_update, subscribers_update_status, subscribers_upsert, tags_create, tags_get, tags_list, workspace_get
Every block below points at https://api.mailrith.com/mcp. Pick your client and copy.
claude mcp add --transport http mailrith-email-marketing https://api.mailrith.com/mcp
{
"mcpServers": {
"mailrith-email-marketing": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://api.mailrith.com/mcp"]
}
}
}{
"mcpServers": {
"mailrith-email-marketing": {
"url": "https://api.mailrith.com/mcp"
}
}
}{
"servers": {
"mailrith-email-marketing": {
"type": "http",
"url": "https://api.mailrith.com/mcp"
}
}
}{
"context_servers": {
"mailrith-email-marketing": {
"url": "https://api.mailrith.com/mcp"
}
}
}{
"mcpServers": {
"mailrith-email-marketing": {
"serverUrl": "https://api.mailrith.com/mcp"
}
}
}{
"mcpServers": {
"mailrith-email-marketing": {
"url": "https://api.mailrith.com/mcp"
}
}
}name: Mailrith Email Marketing
version: 0.0.1
schema: v1
mcpServers:
- name: Mailrith Email Marketing
type: streamable-http
url: https://api.mailrith.com/mcp{
"mcpServers": {
"mailrith-email-marketing": {
"httpUrl": "https://api.mailrith.com/mcp"
}
}
}{
"mcpServers": {
"mailrith-email-marketing": {
"type": "http",
"url": "https://api.mailrith.com/mcp"
}
}
}{
"mcpServers": {
"mailrith-email-marketing": {
"url": "https://api.mailrith.com/mcp"
}
}
}goose://extension?url=https%3A%2F%2Fapi.mailrith.com%2Fmcp&type=streamable_http&id=mailrith-email-marketing&name=Mailrith%20Email%20Marketing
It answered our last check on 18 October 2026 in 1427 ms. Over 10 checks since 5 September 2026 it answered 10. Status here comes from Neuronto's own probes, not from the publisher.
Yes. It is published by mailrith.com and served from api.mailrith.com, the vendor's own domain: https://api.mailrith.com/mcp.
55, as returned by the server's own tools/list on 31 August 2026: analytics_create_report, analytics_get_report, automations_create, automations_get, automations_list, automations_preflight, automations_preview_journey, automations_send_test, and 47 more.
It answered our last check on 18 October 2026 in 1427 ms. Over 10 checks since 5 September 2026 it answered 10.
Put the server under mcpServers in ~/.cursor/mcp.json with the URL https://api.mailrith.com/mcp. The exact JSON is above, with the same setup for Claude Code, Claude Desktop, VS Code, Windsurf, Zed, Gemini CLI and the rest.
It listed its tools to an anonymous client, so reading the tool list needs no key. Individual tools can still ask for credentials in their own inputs.
Publisher: com.mailrith. Endpoint host: api.mailrith.com. ARD identifier: urn:air:com.mailrith:mcp:mailrith.
First indexed 31 August 2026. The tools are exactly what the server returned; nothing on this page
is inferred from its name. Ranking in Neuronto search is never for sale.