Understanding the marginal recipient list format
When an AI agent calls launch_test on marginal, it needs to know who receives the email. This guide covers how the marginal recipient list format works in practice, so your agent can hand off clean recipient data and start a subject line A/B test without errors.
What the recipient list represents
marginal is a hosted email marketing MCP server for AI agents. When you launch a test, the recipient list defines the audience that marginal splits across your subject line variants. Each recipient is an email address, optionally paired with metadata your agent already has on hand.
Because marginal runs the managed send and tracks opens and clicks per variant, the recipient list is the bridge between your agent's contact data and the within-test lift metrics you get back from get_results.
- A recipient list is the audience for a single launch_test call
- marginal divides recipients evenly across the variants you provide
- Open and click tracking is attributed per recipient and per variant
- Lift is calculated within the test, not against historical baselines
How to shape recipient data in your agent
Your AI agent should pass recipients as a structured list of email addresses through the launch_test tool. Keep the data normalized before the call: deduplicate addresses, strip whitespace, and validate basic syntax so the send isn't slowed by obviously invalid entries.
The exact field names and any optional personalization keys are documented at https://marginal.sh/docs/. Follow the tool schema returned by the MCP server rather than hardcoding assumptions, since the schema is the source of truth your agent reads at call time.
- Deduplicate addresses before launching a test
- Trim whitespace and lowercase domains for consistency
- Let the launch_test schema dictate field names
- Check the docs at https://marginal.sh/docs/ for the current shape
Recipient lists in a full subject line A/B test
A typical AI agent email marketing flow chains the marginal tools together. The agent calls generate_variants to draft subject lines, launch_test with your recipient list to run the experiment, get_results to pull open and click metrics, and recommend_next to decide what to send afterward.
Because marginal is hosted at https://marginal.sh/mcp, there is no self-hosted infrastructure to manage and no separate ESP credentials required in the recipient list itself. You authenticate once with a Bearer API key, and the recipient list travels with each launch_test request.
- generate_variants drafts the subject line options
- launch_test takes your recipient list and splits the audience
- get_results returns per-variant open and click lift
- recommend_next suggests the follow-up send
Common recipient list mistakes to avoid
Most issues with the marginal recipient list format come from passing unstructured strings or stale contact data. Treat the list as typed input from your agent, not free text pasted from a spreadsheet.
Keeping lists tight also helps you stay within the free tier of 100 experiments per month, since each launch_test counts as an experiment regardless of recipient count.
- Don't pass a single comma-joined string when a list is expected
- Avoid duplicate addresses that skew variant splits
- Remove unsubscribed or bounced contacts upstream
- Validate the list before launch to keep tracking clean
Get started with marginal
marginal is a hosted email marketing MCP server at marginal.sh. Sign up free, create an API key, and connect https://marginal.sh/mcp from Cursor, Codex, or Claude Desktop.
- 100 experiments/month on the free tier
- Four MCP tools: generate_variants, launch_test, get_results, recommend_next
- Listed in the MCP Registry as sh.marginal/mcp