Mixmax MCP server
132 operations0 webhooks
Send and manage Mixmax emails, run sequences with recipients and folders, organize templates and template folders, track unsubscribes, and read the live engagement feed.
Try Mixmax with your agent
Connect Mixmax, then paste this into Claude, ChatGPT or Cursor. For ideas from other apps, see the use cases.
Using Corsair, show me what you can do in Mixmax on my account, then run one read-only example and show me the result.
Mixmax tools and triggers
Tools are what your agent can do in Mixmax through Corsair's MCP server. Triggers are the Mixmax events a routine can start from.
Salesforce
- Create AccountWrite
Create a Salesforce account through Mixmax.
salesforce.createAccount
- Create ContactWrite
Create a Salesforce contact through Mixmax.
salesforce.createContact
- Create LeadWrite
Create a Salesforce lead through Mixmax.
salesforce.createLead
- Create OpportunityWrite
Create a Salesforce opportunity through Mixmax.
salesforce.createOpportunity
- Create TaskWrite
Create a Salesforce task through Mixmax.
salesforce.createTask
- Delete OpportunityDestructive
Delete a Salesforce opportunity through Mixmax.
salesforce.deleteOpportunity
- Delete TaskDestructive
Delete a Salesforce task through Mixmax.
salesforce.deleteTask
- Get AccountRead-only
Retrieve one Salesforce account synced to Mixmax.
salesforce.getAccount
- Get Account ImplicitRead-only
Look up the Salesforce account matching an email domain.
salesforce.getAccountImplicit
- Get ContactRead-only
Retrieve one Salesforce contact synced to Mixmax.
salesforce.getContact
- Get Contact Or LeadRead-only
Look up the Salesforce contact or lead matching an email address.
salesforce.getContactOrLead
- Get LeadRead-only
Retrieve one Salesforce lead synced to Mixmax.
salesforce.getLead
- Get OpportunityRead-only
Retrieve one Salesforce opportunity synced to Mixmax.
salesforce.getOpportunity
- Get TaskRead-only
Retrieve one Salesforce task synced to Mixmax.
salesforce.getTask
- Get WhatRead-only
Resolve any Salesforce record id to its related “what” object.
salesforce.getWhat
- Get WhoRead-only
Resolve any Salesforce record id to its related “who” object.
salesforce.getWho
- List AccountsRead-only
List the Salesforce accounts synced to the user’s Mixmax.
salesforce.listAccounts
- List Contact TasksRead-only
List the Salesforce tasks of one contact.
salesforce.listContactTasks
- List Lead TasksRead-only
List the Salesforce tasks of one lead.
salesforce.listLeadTasks
- SearchRead-only
Search Salesforce records of one object type through Mixmax.
salesforce.search
- Synced FieldsRead-only
List the Salesforce fields Mixmax syncs for each object type.
salesforce.syncedFields
- Update AccountWrite
Update a Salesforce account through Mixmax.
salesforce.updateAccount
- Update ContactWrite
Update a Salesforce contact through Mixmax.
salesforce.updateContact
- Update LeadWrite
Update a Salesforce lead through Mixmax.
salesforce.updateLead
- Update OpportunityWrite
Update a Salesforce opportunity through Mixmax.
salesforce.updateOpportunity
- Update TaskWrite
Update a Salesforce task through Mixmax.
salesforce.updateTask
Integrations
- Commands.CreateWrite
Create a Mixmax slash command integration.
integrations.commands.create
- Commands.DeleteDestructive
Delete a Mixmax slash command integration.
integrations.commands.delete
- Commands.ListRead-only
List the user’s Mixmax slash command integrations.
integrations.commands.list
- Enhancements.CreateWrite
Create a Mixmax enhance-menu integration.
integrations.enhancements.create
- Enhancements.DeleteDestructive
Delete a Mixmax enhance-menu integration.
integrations.enhancements.delete
- Enhancements.ListRead-only
List the user’s Mixmax enhance-menu integrations.
integrations.enhancements.list
- Link Resolvers.CreateWrite
Create a Mixmax link resolver integration.
integrations.linkResolvers.create
- Link Resolvers.DeleteDestructive
Delete a Mixmax link resolver integration.
integrations.linkResolvers.delete
- Link Resolvers.ListRead-only
List the user’s Mixmax link resolver integrations.
integrations.linkResolvers.list
- Sidebars.CreateWrite
Create a Mixmax sidebar integration.
integrations.sidebars.create
- Sidebars.DeleteDestructive
Delete a Mixmax sidebar integration.
integrations.sidebars.delete
- Sidebars.ListRead-only
List the user’s Mixmax sidebar integrations.
integrations.sidebars.list
Rules
- Actions.CreateWrite
Add an action to a Mixmax rule.
rules.actions.create
- Actions.DeleteDestructive
Remove one action from a Mixmax rule.
rules.actions.delete
- Actions.ListRead-only
List the actions of one Mixmax rule.
rules.actions.list
- Actions.UpdateWrite
Update one action of a Mixmax rule.
rules.actions.update
- CreateWrite
Create a Mixmax rule with a trigger and actions.
rules.create
- DeleteDestructive
Delete a Mixmax rule permanently.
rules.delete
- Delete BulkDestructive
Delete several Mixmax rules at once by their ids.
rules.deleteBulk
- Events.GetRead-only
Retrieve one Mixmax rule event by id.
rules.events.get
- Events.ListRead-only
List Mixmax rule events with their status, filterable by rule and outcome.
rules.events.list
- GetRead-only
Retrieve one Mixmax rule by id.
rules.get
- ListRead-only
List the user’s Mixmax rules, optionally with their actions.
rules.list
- UpdateWrite
Update the trigger or fields of a Mixmax rule.
rules.update
Messages
- CreateWrite
Create a Mixmax draft message without sending it.
messages.create
- GetRead-only
Retrieve one Mixmax message by id.
messages.get
- ListRead-only
List Mixmax messages (drafts, scheduled, sent, or failed), newest first.
messages.list
- ScheduleWrite
Schedule a saved Mixmax draft: Mixmax emails its recipients at the given Unix-millisecond timestamp unless the send is unscheduled first.
messages.schedule
- SendWrite
Send a saved Mixmax draft: this emails its recipients. Delivery is asynchronous and cannot be undone.
messages.send
- Send PlainWrite
Send a plain email from the user’s mailbox to its recipients immediately, outside Mixmax tracking. It cannot be undone.
messages.sendPlain
- TestWrite
Send a Mixmax test email to the calling user’s own account.
messages.test
- UnscheduleWrite
Cancel a scheduled Mixmax send and return the message to draft.
messages.unschedule
- UpdateWrite
Update the fields of a sent Mixmax message; each included field replaces the stored value.
messages.update
Teams
- CreateWrite
Create a Mixmax team.
teams.create
- DeleteDestructive
Delete a Mixmax team permanently.
teams.delete
- GetRead-only
Retrieve one Mixmax team by id.
teams.get
- ListRead-only
List the user’s Mixmax teams.
teams.list
- Members.AddWrite
Add people to a Mixmax team; Mixmax emails each of them an invite.
teams.members.add
- Members.ListRead-only
List the members of one Mixmax team.
teams.members.list
- Members.RemoveDestructive
Remove one member from a Mixmax team.
teams.members.remove
- Members.UpdateWrite
Change a Mixmax team member’s role.
teams.members.update
- UpdateWrite
Rename a Mixmax team.
teams.update
Snippet Tags
- Add SnippetsWrite
Add a template to a Mixmax template folder.
snippetTags.addSnippets
- CreateWrite
Create a Mixmax template folder.
snippetTags.create
- DeleteDestructive
Delete a Mixmax template folder and move every template inside it to the trash.
snippetTags.delete
- GetRead-only
Retrieve one Mixmax template folder by id.
snippetTags.get
- ListRead-only
List the Mixmax template folders (snippet tags) the user can access.
snippetTags.list
- List SnippetsRead-only
List the templates contained in one Mixmax template folder.
snippetTags.listSnippets
- UpdateWrite
Rename a Mixmax template folder.
snippetTags.update
Sequence Folders
- Add SequencesWrite
Move one or more Mixmax sequences into a sequence folder.
sequenceFolders.addSequences
- CreateWrite
Create a Mixmax sequence folder.
sequenceFolders.create
- DeleteDestructive
Delete a Mixmax sequence folder; its sequences are kept but left without a folder.
sequenceFolders.delete
- GetRead-only
Retrieve one Mixmax sequence folder by id.
sequenceFolders.get
- ListRead-only
List the Mixmax sequence folders the user can access.
sequenceFolders.list
- RenameWrite
Rename a Mixmax sequence folder.
sequenceFolders.rename
Sequences
- CancelDestructive
Stop recipients of one Mixmax sequence; cancellation is one-way and deletes their open tasks.
sequences.cancel
- Cancel AllDestructive
Stop the user’s recipients across every Mixmax sequence at once; cancelled recipients cannot be resumed.
sequences.cancelAll
- ListRead-only
List the Mixmax sequences the user can access, including shared ones.
sequences.list
- Recipients.AddWrite
Add recipients to a Mixmax sequence: this starts emailing them the sequence unless each recipient is kept as a draft with scheduledAt false.
sequences.recipients.add
- Recipients.ListRead-only
List the recipients of one Mixmax sequence with their per-stage activity.
sequences.recipients.list
- SearchRead-only
Search sequence recipients across every accessible Mixmax sequence with their status and activity.
sequences.search
Users
- Get MeRead-only
Get the current Mixmax user.
users.getMe
- Preferences.Auto Bcc Excluded Emails.AddWrite
Add email addresses to the user’s Mixmax auto BCC exclusion list.
users.preferences.autoBccExcludedEmails.add
- Preferences.Auto Bcc Excluded Emails.ExistsRead-only
Check exactly which email addresses are excluded from the user’s Mixmax auto BCC list, including role exclusions.
users.preferences.autoBccExcludedEmails.exists
- Preferences.Auto Bcc Excluded Emails.ListRead-only
Check whether one email address is excluded from the user’s Mixmax auto BCC list.
users.preferences.autoBccExcludedEmails.list
- Preferences.GetRead-only
Get the calling user’s Mixmax preferences.
users.preferences.get
- Preferences.UpdateWrite
Update the calling user’s Mixmax preferences.
users.preferences.update
Meeting Types
- CreateWrite
Create a Mixmax meeting template.
meetingTypes.create
- DeleteDestructive
Delete a Mixmax meeting template permanently.
meetingTypes.delete
- GetRead-only
Retrieve one Mixmax meeting template by id.
meetingTypes.get
- ListRead-only
List the user’s Mixmax meeting templates.
meetingTypes.list
- UpdateWrite
Update a Mixmax meeting template.
meetingTypes.update
Snippets
- DeleteDestructive
Move a Mixmax template to the trash, or archive it, removing it from its folders.
snippets.delete
- GetRead-only
Retrieve one Mixmax template by id.
snippets.get
- ListRead-only
List the Mixmax templates (snippets) the user can access, including shared ones.
snippets.list
- SendWrite
Send an email built from a Mixmax template to its recipients, immediately or at a scheduled time.
snippets.send
- UpdateWrite
Update the fields of a Mixmax template; only the fields sent change.
snippets.update
Insights Reports
- CreateWrite
Create a saved Mixmax insights report from a query.
insightsReports.create
- DeleteDestructive
Delete a saved Mixmax insights report permanently.
insightsReports.delete
- ListRead-only
List the user’s saved Mixmax insights reports.
insightsReports.list
- UpdateWrite
Update a saved Mixmax insights report.
insightsReports.update
Appointment Links
- Get MeRead-only
Get the user’s default Mixmax appointment link.
appointmentLinks.getMe
- ListRead-only
Search the user’s Mixmax appointment links by name.
appointmentLinks.list
- Update MeWrite
Rename the user’s default Mixmax appointment link.
appointmentLinks.updateMe
Code Snippets
- CreateWrite
Create a Mixmax code snippet.
codeSnippets.create
- GetRead-only
Retrieve one Mixmax code snippet by id.
codeSnippets.get
- ListRead-only
List the user’s Mixmax code snippets.
codeSnippets.list
Unsubscribes
- CreateWrite
Add one or more email addresses to the Mixmax unsubscribe list.
unsubscribes.create
- ListRead-only
List the email addresses unsubscribed from the user’s Mixmax sends.
unsubscribes.list
- RemoveDestructive
Remove one email address from the Mixmax unsubscribe list.
unsubscribes.remove
File Requests
- GetRead-only
Retrieve one Mixmax file request by id.
fileRequests.get
- ListRead-only
List the Mixmax file requests the user has access to.
fileRequests.list
Livefeed
- EventsRead-only
List individual Mixmax live feed events such as opens, clicks, and replies.
livefeed.events
- ListRead-only
List the user’s Mixmax live feed of tracked email activity, with optional stats.
livefeed.list
Meeting Invites
- GetRead-only
Retrieve one Mixmax meeting invite by id.
meetingInvites.get
- ListRead-only
List the Mixmax meeting invites sent to the user.
meetingInvites.list
Meetings
- Get TranscriptRead-only
Retrieve the transcript of one Mixmax meeting.
meetings.getTranscript
- Search SummariesRead-only
Search Mixmax meeting summaries by attendee, title, and date range.
meetings.searchSummaries
Polls
- GetRead-only
Retrieve one Mixmax poll by id.
polls.get
- ListRead-only
List the user’s Mixmax polls with their response counts.
polls.list
Qa
- GetRead-only
Retrieve one Mixmax Q&A form by id.
qa.get
- ListRead-only
List the user’s Mixmax Q&A forms with their answers.
qa.list
Yesno
- GetRead-only
Retrieve one Mixmax yes/no question by id.
yesno.get
- ListRead-only
List the user’s Mixmax yes/no questions with their answers.
yesno.list
Reports
- Run Data TableRead-only
Run a Mixmax reporting query and return the aggregated data table buckets.
reports.runDataTable
Tasks
- ListRead-only
List the user’s open Mixmax tasks.
tasks.list
Connect Mixmax to Claude, ChatGPT or Cursor
- 1
Connect Mixmax in Corsair
Add your Mixmax API key once in Corsair. Corsair stores the credential encrypted and makes the Mixmax API calls for your agent, so it never goes into a prompt or a config file. Connect Mixmax
If your link lets the agent add apps, you can skip this: it gives you a sign-in link the first time it needs Mixmax. On a ChatGPT personal plan, connect Mixmax here first.
- 2
Add Corsair's MCP server to your agent
Every client uses the same address:
https://mcp.corsair.dev/mcpOpen Customize → Connectors → Add custom connector, paste the address, then select Connect.Add a custom MCP server with the address and choose OAuth. Personal plans get read tools only.Add to CursorOr add this to~/.cursor/mcp.json. Cursor opens Corsair to sign in the first time it connects.{ "mcpServers": { "corsair": { "url": "https://mcp.corsair.dev/mcp" } } }Run this, then run/mcpin Claude Code to sign in.claude mcp add --transport http corsair https://mcp.corsair.dev/mcpCodex, Gemini CLI, VS Code, Zed and other clients with OAuth sign-in work the same way. Clients without it, such as GitHub Copilot's coding agent, use a link's own address and an API key. Setup for every client
- 3
Sign in and choose what needs your approval
Your client opens Corsair to sign in. Pick a link: the apps your agent can use and a mode that decides what it may do without asking. In the default Cautious mode, Mixmax's read and write operations run right away and its 19 destructive operations wait for your approval. Strict mode asks before every write and refuses destructive operations, and Read mode allows reads only.
FAQ
Install corsair and @corsair-dev/mixmax, add the Mixmax plugin, and connect with an API key. Then call methods like corsair.mixmax.api.appointmentLinks.getMe() from your app. Corsair keeps each tenant isolated.
Yes. Mixmax requires an API key from your Mixmax account or developer dashboard. Create credentials with access that matches what you automate, then paste them into Corsair or connect through managed auth in Hub.
Yes. One Corsair client can hit Mixmax, GitHub, Notion, Stripe, and the rest. Trigger Mixmax from a webhook, push updates to Slack, or chain actions across plugins. Same tenant context across integrations, plain TypeScript.
Teams use Corsair for send and manage Mixmax emails, run sequences with recipients and folders, organize templates and template folders, track unsubscribes, and read the live engagement feed. Common builds include sync jobs, admin tooling, and agents that call Mixmax APIs from your backend.
The SDK is open source. Self-host and you pay Corsair nothing for the integration layer. Hub bills for hosted auth and execution, not per Mixmax API call. Hub has a generous free tier. For hobby projects you can probably run the whole thing on free. Paid plans start to matter with more tenants or heavier traffic.
We maintain @corsair-dev/mixmax in the open repo. When Mixmax ships API changes, upgrade the package. Your call sites stay typed. You should not need to rewrite the integration layer each time.
No. Corsair does not read your Mixmax data or hold individual access credentials. Credentials stay in your database. API calls run on your instance. We do not store Mixmax data on your behalf.
Yes. Add https://mcp.corsair.dev/mcp as a custom connector or MCP server in Claude, ChatGPT, Cursor, VS Code, Claude Code, Codex or any client that supports remote MCP servers with OAuth sign-in, then sign in to Corsair. On ChatGPT personal plans, custom servers currently get read tools only.
Yes. Put Mixmax on a link in Strict mode and every write waits for your approval, while destructive actions are refused. The default Cautious mode asks only before the 19 destructive Mixmax operations. You can change a link's mode at hub.corsair.dev/me.