Connect your AI Agents to Mixmax in minutes

Merge lets you securely connect your agents to Mixmax and thousands of tools instantly

Available tools

list_insights_reports

List saved Mixmax Insights reports (yours, shared, or workspace for admins), 50 per page max. To run a query use queryreport. Report ids feed update/deleteinsights_report.

create_insights_report

Save a Mixmax Insights report (title, type, query, columns). Saving does not run it; use queryreport for data. Delete with deleteinsights_report.

update_insights_report

Update a saved Mixmax Insights report; only fields you pass change. Use listinsightsreports for the id.

delete_insights_report

Delete a saved Mixmax Insights report you own. Use listinsightsreports for the id.

query_report

Run a Mixmax analytics query: message, meeting or sequence metrics (sent, opened, clicked, replied...) grouped by sender, recipient, domain or sequence over a query like 'sent:last30days'. Use for sequence performance. Offset paging.

search_live_feed

Search the Mixmax live feed: your sent messages (or teammates' shared ones) with opens, clicks, replies and bounces, most recent activity first. query supports is:, to:, from:, subject:, sequence:, template:, sent: operators. Ids feed listlivefeed_events.

list_live_feed_events

List tracking events (opens, clicks, downloads, replies, bounces, RSVPs) for one live feed message (id from searchlivefeed) or one contact email, newest first. Pass messageid or contactemail. Cursor pagination.

list_polls

List the polls you sent in Mixmax emails, newest first, with who voted for each option. Use fields to shrink results. Cursor pagination.

list_qa_forms

List your Mixmax Q&A forms (questions embedded in emails) with recipients' answers. Not the Yes/No questions (listyesno_questions). Cursor pagination.

list_yes_no_questions

List the Yes/No questions you sent in Mixmax emails, newest first, with who picked each answer. Use fields to shrink results. Cursor pagination.

list_file_requests

List the Mixmax file requests you sent, newest first, with uploads received (uploader and a download link, not the file). Cursor pagination.

list_code_snippets

List the Formatted Code snippets you created for the Mixmax /code command, newest first. Use fields to shrink results. Cursor pagination. Ids feed getcodesnippet.

create_code_snippet

Create a Formatted Code snippet for the Mixmax /code command. Returns only the new id (read it with getcodesnippet). The API defines no update or delete for snippets.

get_code_snippet

Get one of your Mixmax Formatted Code snippets. Use listcodesnippets or createcodesnippet for the id.

list_slash_commands

List the slash commands available in your Mixmax editor (Mixmax's and yours). Use each item's id (not analyticsid) with deleteslash_command. Cursor pagination.

create_slash_command

Add a custom slash command to your Mixmax editor, backed by your hints and resolver URLs. Only you can use it. Remove with deleteslashcommand.

delete_slash_command

Delete a slash command you added. Pass the item's id from listslashcommands or createslashcommand, not its analytics_id.

list_enhancements

List the editor enhancements (toolbar buttons) available in Mixmax, Mixmax's and yours. Ids feed delete_enhancement. Cursor pagination.

create_enhancement

Add an editor enhancement: a Mixmax toolbar button that opens your editorurl and inserts what resolverurl returns. Only you see it. Remove with delete_enhancement.

delete_enhancement

Delete an editor enhancement you added. Pass the id from listenhancements or createenhancement.

list_link_resolvers

List the link resolvers (pasted-URL rich previews) available in Mixmax. Ids feed deletelinkresolver. Cursor pagination.

create_link_resolver

Add a link resolver: pasted URLs matching regex become a preview from your resolverurl. A broad regex takes over every link. Remove with deletelink_resolver.

delete_link_resolver

Delete a link resolver you added. Pass the id from listlinkresolvers or createlinkresolver.

list_sidebars

List the Mixmax sidebar apps available to you (not paginated). Ids feed delete_sidebar.

create_sidebar

Add a Mixmax sidebar app that loads your URL. Give iconimage, or iconname with iconcolor. Remove with deletesidebar.

delete_sidebar

Delete a sidebar app you added. Pass the id from listsidebars or createsidebar.

list_meeting_types

List your Mixmax meeting types (bookable meeting templates with length, availability and booking link), yours or shared. Ids feed getmeetingtype.

get_meeting_type

Get one Mixmax meeting type with all its settings. Use listmeetingtypes for the id.

list_meeting_invites

List the Mixmax meeting invites you sent (emails offering times), newest first; booked slots show the meeting. Cursor pagination. Ids feed getmeetinginvite.

get_meeting_invite

Get one Mixmax meeting invite with its offered and booked time slots. Use listmeetinginvites for the id.

list_messages

List your Mixmax messages (drafts, scheduled, sent, failed), newest first, cursor pagination up to 300. Each item's state says which. Returns lean fields by default; pass fields='all' (or a list like 'id,body') to widen, or use getmessage. Ids feed get/update/send/schedule/unschedule_message.

create_message

Create a Mixmax draft email for tracked sending, with to/cc/bcc, subject, HTML body, sender and open/link/file tracking, notification and smart follow-up flags. This does NOT send it: pass the returned id to sendmessage or schedulemessage. Attachments are not supported (link files in the body). For an untracked immediate email use send_email.

get_message

Get one Mixmax message by id, including recipients, tracking flags and its state (draft, scheduled, sent, failed). Use listmessages or createmessage to find the id.

update_message

Update fields of a Mixmax message. Only fields you pass change; to/cc/bcc replace the whole list. Use listmessages or createmessage for the id. Returns success only; call get_message to read the result.

send_message

Send a saved Mixmax draft now, with its tracking settings. Get the id from createmessage or listmessages. Optional data (createmessage field names) overrides fields just before sending. Returns queued=true (HTTP 202); delivery is asynchronous. A message already sent fails with a gone error. To send later use schedulemessage.

schedule_message

Schedule a saved Mixmax draft to send at scheduleddate (Unix ms). It moves to the Outbox. Get the id from createmessage or listmessages; optional data updates fields first. Cancel with unschedulemessage.

unschedule_message

Cancel a scheduled Mixmax send; the message goes back to being a draft. Use list_messages (state 'scheduled') to find the id.

send_email

Send a plain email from your own mailbox right away. No Mixmax tracking, Live Feed entry or CRM logging. For tracked email use createmessage then sendmessage.

list_rules

List your Mixmax rules (automations), newest first, 50 per page max. expandactions includes their actions. Rule ids feed getrule, updaterule, deleterule and the rule action tools.

create_rule

Create a Mixmax rule with a trigger (event, recurring, webhook or salesforceDateInterval) and optional JSON-string filter. It has no actions yet: add them with createruleaction (create it paused to add actions first). Delete with delete_rule.

get_rule

Get one Mixmax rule, optionally with its actions. Use list_rules for the id.

update_rule

Update a Mixmax rule's name, trigger, filter or paused state (pause/resume). Only fields you pass change. Rules managed under Settings > API cannot change. Use list_rules.

delete_rule

Delete a Mixmax rule and its actions. Use listrules for the id. To delete several at once use deleterules.

delete_rules

Delete several Mixmax rules and their actions in one call. Ids you cannot access are skipped silently. Use list_rules for ids.

list_rule_actions

List a Mixmax rule's actions (signing secrets show only their last four). Use list_rules for the rule id.

create_rule_action

Add an action to a Mixmax rule, e.g. type 'postToWebhook' with a webhookurl. The response is the only time the signing secret is shown. Rule id from listrules or createrule. Remove with deleterule_action.

update_rule_action

Update a Mixmax rule action (URL, headers, paused) or rotate its signing secret. Ids from listrules and listrule_actions.

delete_rule_action

Delete an action from a Mixmax rule. Ids from listrules and listrule_actions.

list_rule_events

List Mixmax rule run history from the last 15 days, filterable by rule (list_rules), status (success/filtered/pending/error) and recipient text. Offset pagination.

list_sequence_folders

List the Mixmax sequence folders you can access (not paginated). Folder ids feed list_sequences folder and the other folder tools.

create_sequence_folder

Create a Mixmax sequence folder. Returns its id. Delete with deletesequencefolder.

get_sequence_folder

Get one Mixmax sequence folder with its sequence ids. Use listsequencefolders for the id.

update_sequence_folder

Rename a Mixmax sequence folder. Use listsequencefolders for the id.

delete_sequence_folder

Delete a Mixmax sequence folder. Its sequences are kept, without a folder. Only the owner or a workspace admin can. Use listsequencefolders for the id.

list_sequences

List Mixmax sequences you can access, filterable by name and folder (ids from listsequencefolders). expand='stages' includes stage content. Cursor pagination, up to 100 per page. Sequence ids feed the recipient tools.

search_sequence_recipients

Find a contact across all your sequences: search recipients by text or exact address, optionally in one sequence (listsequences), with status and per-stage activity. Offset pagination, 50 max. For one sequence's full list use listsequence_recipients.

list_sequence_recipients

List the recipients of one Mixmax sequence with per-stage activity, sortable and searchable. Get the sequence id from list_sequences. Offset pagination, 50 per page max.

cancel_recipients_everywhere

Stop the given addresses in every Mixmax sequence at once (e.g. a contact asked to stop). emails is required so this never cancels everyone.

list_teams

List Mixmax teams you belong to (and, for workspace admins, the workspace's teams). expand adds members. Cursor pagination, up to 500 per page. Team ids feed the other team tools and listsequencerecipients analytics_from.

create_team

Create a Mixmax team with you as admin and invite members by email (each gets an invite). One team per second. Returns the team id. Delete with delete_team.

get_team

Get one Mixmax team, optionally with members. Use list_teams for the id.

update_team

Rename a Mixmax team (team or workspace admins only). Use list_teams for the id.

delete_team

Delete a Mixmax team (team or workspace admins only); anything shared with it stops being shared. Use list_teams for the id.

list_team_members

List every member and pending invite of a Mixmax team (not paginated). Member ids feed removeteammember. Team id from list_teams.

add_team_members

Invite people to a Mixmax team by email (team or workspace admins only). Returns the full member list. 20 calls per minute. Team id from listteams. Undo with removeteam_member.

remove_team_member

Remove a member or pending invite from a Mixmax team (members can remove themselves to leave). Ids from listteams and listteam_members.

list_templates

List Mixmax templates you can access. search matches name/subject and supports name:, subject:, folder:, owner: operators; sortable; trash/archive views. Cursor pagination. Template ids feed gettemplate, updatetemplate, send_template.

get_template

Get one Mixmax template with its subject and HTML. Use listtemplates or listfolder_templates for the id.

update_template

Update a Mixmax template's name, subject, HTML or default cc/bcc. Only fields you pass change. Use list_templates for the id.

delete_template

Move a Mixmax template to the trash, or archive it with archive=true. Restore it by moving it into a folder with addtemplatetofolder. Use listtemplates for the id.

send_template

Send an email from a Mixmax template right away, or at scheduledat. Variables fill from the first recipient's contact and variables; a missing value fails with a validation error naming it. Use listtemplates for the id.

list_template_folders

List Mixmax template and snippet folders, searchable by name. Cursor pagination, up to 200 per page. Folder ids feed listfoldertemplates and addtemplateto_folder.

create_template_folder

Create a Mixmax template folder (or snippet folder with isinline=true). Then create templates in it with addtemplatetofolder. Delete with deletetemplatefolder.

get_template_folder

Get one Mixmax template folder. Use listtemplatefolders for the id.

update_template_folder

Rename a Mixmax template folder. Use listtemplatefolders for the id.

delete_template_folder

Delete a Mixmax template folder and move every template in it to the trash. Use listtemplatefolders for the id.

list_folder_templates

List the templates in one Mixmax folder (trashed ones excluded), searchable and sortable. Use listtemplatefolders for the folder id. Cursor pagination.

add_template_to_folder

Create a Mixmax template in a folder (pass name/title/source, templateid=null), or move an existing template there (templateid from listtemplates; also restores a trashed one). Folder id from listtemplatefolders. Delete with deletetemplate.

list_unsubscribes

List your (or your workspace's) Mixmax unsubscribe list; sequences never send to these addresses. Filter by exact email to check one address. Sortable, cursor pagination.

add_unsubscribes

Add addresses to the Mixmax unsubscribe list so sequences stop sending to them. Undo with delete_unsubscribe.

delete_unsubscribe

Remove an address from the Mixmax unsubscribe list (also workspace members' records for it), so sequences can email it again. Succeeds even if it was not listed.

get_current_user

Get the Mixmax user id of the API token's owner. Use getuserpreferences for settings such as send-from addresses.

get_user_preferences

Get your Mixmax preferences: default tracking, undo send, auto BCC, send-from accounts, meeting defaults. Pass fields to return only some keys (the full document is large).

update_user_preferences

Update Mixmax preferences. Only keys you pass change. Mixmax stores unknown keys without checking them, so copy spellings from getuserpreferences. To remove auto-BCC exclusions, send the full autoBccExcludedEmails list in other_preferences.

add_auto_bcc_exclusions

Add addresses that are never auto BCC'd. Returns one success flag per address; invalid addresses are skipped. Check with checkautobcc_exclusions.

check_auto_bcc_exclusions

Check whether addresses are excluded from your auto BCC, by address or domain, including workspace-role exclusions. Read-only despite using POST.

get_calendar_link

Get your Mixmax Calendar booking link name (https://cal.mixmax.com/<name>). Creates one if you have none. Change it with updatecalendarlink.

check_calendar_link_name

Check whether a Mixmax Calendar link name is free before updatecalendarlink. Exact match; the owner of a taken name is never returned.

update_calendar_link

Rename your Mixmax Calendar booking link. The old link stops working at once. Check the name with checkcalendarlink_name first; a taken name fails with a conflict error.

validate_credential

Validate the Mixmax API token by reading the current user. Returns success and a message.

View all tools by creating a free accountSee more tools

How to set up Merge Agent Handler

In an mcp.json file, add the configuration below, and restart Cursor.

Learn more in the official documentation ↗

1{
2  "mcpServers": {
3    "agent-handler": {
4      "url": "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
5      "headers": {
6        "Authorization": "Bearer yMt*****"
7      }
8    }
9  }
10}
11
Copy Code

Open your Claude Desktop configuration file and add the server configuration below. You'll also need to restart the application for the changes to take effect.

Make sure Claude is using the Node v20+.

Learn more in the official documentation ↗

1{
2  "mcpServers": {
3    "agent-handler": {
4      "command": "npx",
5      "args": [
6        "-y",
7        "mcp-remote@latest",
8        "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
9        "--header",
10        "Authorization: Bearer ${AUTH_TOKEN}"
11      ],
12      "env": {
13        "AUTH_TOKEN": "yMt*****"
14      }
15    }
16  }
17}
Copy Code
Copied!

Open your Windsurf MCP configuration file and add the server configuration below.
Click on the refresh button in the top right of the Manage MCP server page or in the top right of the chat box in the box icon.

Learn more in the official documentation ↗

1{
2    "mcpServers": {
3      "agent-handler": {
4        "command": "npx",
5        "args": [
6          "-y",
7          "mcp-remote@latest",
8          "https://ah-api.merge.dev/api/v1/tool-packs/<tool-pack-id>/registered-users/<registered-user-id>/mcp",
9          "--header",
10          "Authorization: Bearer ${AUTH_TOKEN}"
11        ],
12        "env": {
13          "AUTH_TOKEN": "<ah-production-access-key>"
14        }
15      }
16    }
17  }
Copy Code

In Command Palette (Cmd+Shift+P on macOS, Ctrl+Shift+P on Windows), run "MCP: Open User Configuration".

You can then add the configuration below and press "start" right under servers. Enter the auth token when prompted.

Learn more in the official documentation ↗

1{
2  "inputs": [
3    {
4      "type": "promptString",
5      "id": "agent-handler-auth",
6      "description": "Agent Handler AUTH_TOKEN", // "yMt*****" when prompt
7      "password": true
8    }
9  ],
10  "servers": {
11    "agent-handler": {
12      "type": "stdio",
13      "command": "npx",
14      "args": [
15        "-y",
16        "mcp-remote@latest",
17        "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
18        "--header",
19        "Authorization: Bearer ${input:agent-handler-auth}"
20      ]
21    }
22  }
23}
Copy Code

FAQs on using Merge's Mixmax  MCP server

FAQs on using Merge's Mixmax  MCP server

Explore other MCP servers built and managed by Merge

activecampaign
ActiveCampaign
adobe_experience_manager
Adobe Experience Manager
adobe_pdf_services
Adobe PDF Services
adobe_workfront
Adobe Workfront
ahrefs
Ahrefs
airtable
Airtable
alphavantage
Alpha Vantage
amadeus
Amadeus
amazon_s3
Amazon S3
amazon_seller_central
Amazon Seller Central
amplitude
Amplitude
anaplan
Anaplan
apollo
Apollo
arize
Arize
articulate
Articulate Reach 360
asana
Asana
ashby
Ashby
attio
Attio
avalara
Avalara
aviationstack
Aviationstack
aws_partner_central_selling
AWS Partner Central Selling
aws_redshift
AWS Redshift
axiom
Axiom
bamboohr
BambooHR

Ready to try it out?

Whether you're an engineer experimenting with agents or a product manager looking to add tools, you can get started for free now