AI Integration (MCP)
GoodPostal supports the Model Context Protocol (MCP), an open standard that lets AI assistants like Claude, Cursor, VS Code, ChatGPT, Codex, and Devin interact directly with your email marketing workspace. Create templates, manage campaigns, and send test emails using natural language through your favorite AI tool.
What You Can Do
The full GoodPostal MCP server provides 53 tools for command-line AI clients like Claude Code, Cursor, and Codex. Claude on the web and ChatGPT use a curated set of 44 tools. Your AI assistant can use these tools to manage your entire workspace, from templates and campaigns to contacts, branding, sender identities, and tracking domains. Here are some of the most commonly used tools:
| Name | Type | Required | Description |
|---|---|---|---|
list_templates | Read | No | List all email templates in your workspace |
get_template | Read | No | Get a specific template with its design JSON |
create_template | Write | No | Create a new email template |
update_template | Write | No | Update an existing template |
send_test_email | Action | No | Send a test email to preview your template |
create_campaign | Write | No | Create a new campaign draft |
list_campaigns | Read | No | List all campaigns and their status |
list_contact_groups | Read | No | List contact groups for targeting campaigns |
list_sender_identities | Read | No | List sender identities with their verification status; only verified identities can send |
get_brand_guidelines | Read | No | Get your workspace brand colors, logo, and style preferences |
get_workspace_info | Read | No | Get workspace details and current plan info |
Setup
GoodPostal uses OAuth 2.1 for MCP authentication. When you first connect, your browser will open so you can log in and select which workspace to authorize. No API keys or tokens to manage; your AI tool handles the OAuth flow automatically.
Step 1: Add the MCP Server to Your AI Tool
Select your AI tool below for setup instructions.
Add the following to .cursor/mcp.json in your project root:
{
"mcpServers": {
"goodpostal": {
"url": "https://mcp.goodpostal.com/mcp/goodpostal"
}
}
}Restart Cursor after saving. The OAuth authorization flow will start automatically when Cursor first connects to the server.
Step 2: Authorize Your Workspace
The first time your AI tool connects to GoodPostal, your browser will open automatically. You'll be asked to:
- Log in to your GoodPostal account (if not already signed in)
- Select a workspace, choose which workspace the AI tool should access (only active workspaces are shown, trial or paid, including Nonprofit; frozen or expired workspaces are not)
- Authorize, confirm that the AI tool can read and create templates and campaigns in your workspace
Once authorized, your AI tool will remember the connection. You won't need to re-authorize unless you revoke access.
Step 3: Verify Connection
After authorizing, ask your AI tool to "List my GoodPostal templates". If the connection is working, it will use the list_templates tool and return your templates.
Example Prompts
Here are some real-world prompts you can try with your AI assistant:
- "Create a welcome email for new subscribers with our brand colors"
- "Build a monthly newsletter template with a header, article sections for this month's stories, and a footer"
- "Send a test email of my latest template to you@yourcompany.com" (test emails can only go to an address on your own login email's domain)
- "List all my campaigns and their current status"
- "Create a promotional email for our summer sale with a hero image and CTA button"
Available Resources
The MCP server also exposes reference resources that AI tools can read for context when building emails:
| Name | Type | Required | Description |
|---|---|---|---|
block-types | Reference | No | EmailDocument JSON structure and available block types |
tailwind-classes | Reference | No | Available Tailwind CSS classes for email styling |
design-guide | Reference | No | Email design best practices |
html-snippets | Reference | No | Ready-made HTML snippets for common email patterns |
design-guide only. Your brand colors, logo, and style preferences are not a resource; the assistant reads them with the get_brand_guidelines tool.Available Prompts
Pre-built prompt templates guide the AI through multi-step workflows:
| Name | Type | Required | Description |
|---|---|---|---|
design-email-prompt | Template | No | Guided email template creation workflow |
create-campaign-prompt | Template | No | Guided campaign creation workflow |
setup-email-branding-prompt | Template | No | Extract brand guidelines from a website URL |
full-workspace-setup-prompt | Template | No | Guided workspace setup from sending service to branding |
redesign-template-prompt | Template | No | Rework an existing template into a new design |
How It Works
GoodPostal's MCP server uses Streamable HTTP transport with OAuth 2.1 + PKCE authentication. When your AI tool first connects, it discovers the OAuth endpoints automatically via .well-known metadata (RFC 8414 and RFC 9728), registers itself as an OAuth client, and initiates a browser-based authorization flow where you log in and select a workspace. The resulting access token is scoped to that workspace; your AI assistant can only access templates, campaigns, and contacts belonging to the workspace you authorized. API requests are rate-limited to 60 requests per minute. Campaigns created through MCP are always saved as drafts so you can review them before sending. Templates can be created as either a draft or a published template, depending on what you ask for.
Troubleshooting
| Name | Type | Required | Description |
|---|---|---|---|
Browser doesn't open | Error | No | Some AI tools may not support OAuth yet. Check your tool's MCP documentation for authentication options. |
No eligible workspaces | Error | No | MCP requires an active GoodPostal workspace (trial or paid, including Nonprofit); frozen or expired workspaces cannot connect. Open Billing in the GoodPostal sidebar to manage your subscription, then re-authorize. |
Unauthenticated | Error | No | Your authorization may have expired. Remove the GoodPostal server from your AI tool config, re-add it, and authorize again. |
No workspace associated | Error | No | The OAuth flow didn't complete properly. Re-authorize and make sure to select a workspace on the consent screen. |
Workspace suspended | Error | No | Your workspace has been suspended. Contact support for assistance. |
Next Steps
- Templates, learn about template structure and the visual editor
- Campaigns, understand the campaign workflow from draft to send
- API Reference, REST API for programmatic access beyond MCP