Plainsend for agents

Everything in Plainsend is an API call, a CLI command and an MCP tool. Your agent can import contacts, write templates, build segments and journeys, preview and simulate them, and run test sends. Anything that reaches real customers waits for a person to approve it.

Paste this prompt

Give this to Claude Code, Claude, or any agent that can use MCP:

Set up Plainsend for me.
1. Read https://plainsend.app/llms.txt and https://plainsend.app/docs/agents.md.
2. Connect to the Plainsend MCP server at https://api.plainsend.app/mcp (OAuth; I will approve the connection).
3. Call workspace_get and tell me which workspace you are in and what your key may do.
4. Help me import my contacts as a dry run first, then build a welcome journey from the gallery.
Draft everything; never claim something is live until approval_status says approved.

Connect the MCP server

Claude (claude.ai): Settings → Connectors → Add custom connector → URL https://api.plainsend.app/mcp. No client ID or secret. Claude registers itself, and an owner of the workspace approves the connection once.

Claude Code, with an agent key (an owner creates one in the console, or with plainsend keys create claude --kind agent --label "Claude for Sam"):

claude mcp add --transport http plainsend https://api.plainsend.app/mcp \
  --header "Authorization: Bearer ps_..."

Any other MCP client: point it at the same URL. It discovers OAuth from the first response, or send an API key as a bearer token.

The full tool list is in the MCP reference.

What an agent may do

An agent key canIt can't
Read everything except raw source rowsErase contacts or change workspace settings
Draft brands, templates, sources, segments and journeysAdd sending domains or manage keys
Lint, preview, simulate and preflightApprove its own requests
Import files and run syncs (dry run by default)Send to anyone outside your verified team without approval
Send tests to verified team addresses
Ask to activate a journey or send a broadcast

When an agent asks to go live, it gets back an approval id. An owner approves it in the console ("Needs you"), from the CLI, or from a one-time link. Approval is part by part: a broadcast's audience, message and send settings; a journey's entry, steps and goal. If the agent changes something after a part was approved, that part resets and the owner sees what changed.

The CLI

plainsend login --key ps_... --url https://api.plainsend.app
plainsend setup                         # the first-run checklist: what's done, what's next
plainsend workspace plan ./plainsend    # what applying the folder would change
plainsend workspace apply ./plainsend   # save as drafts, ask for one go-live approval
plainsend simulate welcome --contact <id>
plainsend approvals list

plainsend --help lists every command. Add --json for machine-readable output.

Install and sign in. curl -fsSL https://plainsend.app/install | sh installs the CLI (Node.js 22 or later). plainsend login signs you in through the browser, so no key is pasted anywhere, and plainsend init sets a project folder up for your agent (instructions, a Claude skill, the MCP command) and sends a test email to you.

Marketing as code

Keep your workspace as files in your own repository: brands, templates (MJML or HTML), segments, sources and journeys as YAML. Every change is a reviewable diff, and workspace plan shows exactly what applying it would do, in dependency order. See Working with Plainsend for the folder layout.

Docs your agent can read