Overview
The MailGreet MCP server exposes 44 tools across 7 categories. Your API key controls which tools are available —tools/list only returns tools the key has permission to call.
Subscribers
Campaigns
Groups
Webhooks
Automations
Forms
Segments
Response format
Every tool call returns a JSON-RPC result with acontent array:
text field contains a JSON-encoded string with the actual data. On error, isError: true is added to the result and text contains {"error": "...", "message": "..."}.
Pagination
Alllist_* tools support these parameters:
meta block:
Subscribers
9 tools · Required permission:subscribers:read or subscribers:write
add_subscriber
add_subscriber
subscribers:writeAdd a new subscriber or update an existing one by email (upsert). If the email already exists, the record is updated with the provided fields — existing custom fields not mentioned are kept.get_subscriber
get_subscriber
subscribers:readGet full details about a subscriber by their UUID or email.subscriber_id or email must be provided.update_subscriber
update_subscriber
subscribers:writeUpdate an existing subscriber’s fields. Only provided fields are changed — others are untouched.list_subscribers
list_subscribers
subscribers:readList subscribers with optional filtering. Returns paginated results.get_subscriber_activity
get_subscriber_activity
subscribers:readGet the activity history for a subscriber: email opens, clicks, sends, unsubscribes, and more.get_subscriber_count
get_subscriber_count
subscribers:readGet the total count of subscribers, optionally filtered by status.delete_subscriber
delete_subscriber
subscribers:writeDelete a subscriber. Historical activity data (opens, clicks) is retained. The subscriber can re-subscribe later.forget_subscriber
forget_subscriber
subscribers:writeget_single_import
get_single_import
subscribers:readGet the status and details of a subscriber import job created via import_subscribers_to_group.Campaigns
8 tools · Required permission:campaigns:read or campaigns:write
create_campaign
create_campaign
campaigns:writeCreate a new email campaign in draft status.get_campaign
get_campaign
campaigns:readGet full details about a campaign including delivery stats.list_campaigns
list_campaigns
campaigns:readList campaigns with optional filtering.update_campaign
update_campaign
campaigns:writeUpdate a campaign’s details. Only draft campaigns can be updated.delete_campaign
delete_campaign
campaigns:writeDelete a campaign. Only draft or cancelled campaigns can be deleted.schedule_campaign
schedule_campaign
campaigns:writeSchedule a draft campaign to send at a specific future time.cancel_campaign
cancel_campaign
campaigns:writeCancel a scheduled campaign, returning it to draft status.get_campaign_subscribers
get_campaign_subscribers
campaigns:readGet the list of subscribers who received a specific campaign.Groups
8 tools · Required permission:groups:read or groups:write
list_groups
list_groups
groups:readList all subscriber groups.create_group
create_group
groups:writeCreate a new subscriber group.update_group
update_group
groups:writeRename a subscriber group.delete_group
delete_group
groups:writeDelete a group. Subscribers in the group are not deleted — only their group membership is removed.get_group_subscribers
get_group_subscribers
groups:readGet all subscribers in a group.assign_subscriber_to_group
assign_subscriber_to_group
subscribers:writeAdd a subscriber to a group.unassign_subscriber_from_group
unassign_subscriber_from_group
subscribers:writeRemove a subscriber from a group. The subscriber record is not deleted.import_subscribers_to_group
import_subscribers_to_group
subscribers:writeBulk upsert up to 1,000 subscribers into a group per call. Creates new subscribers if the email doesn’t exist, or updates existing ones.Webhooks
5 tools · Required permission:webhooks:read or webhooks:write
list_webhooks
list_webhooks
webhooks:readList all configured webhook endpoints.get_webhook
get_webhook
webhooks:readGet details of a specific webhook.create_webhook
create_webhook
webhooks:writeCreate a new webhook endpoint. MailGreet will POST to the provided URL when selected events occur.email.delivery.sent·email.delivery.opened·email.delivery.clickedemail.delivery.bounced·email.delivery.complained·email.delivery.unsubscribedapi_email.sent·api_email.delivered·api_email.opened·api_email.clickedapi_email.bounced·api_email.failed
update_webhook
update_webhook
webhooks:writeUpdate a webhook’s URL, events, or enabled status.delete_webhook
delete_webhook
webhooks:writeDelete a webhook endpoint permanently.Automations
5 tools · Required permission:automations:read or automations:write
list_automations
list_automations
automations:readList all automations.get_automation
get_automation
automations:readGet details about an automation including its trigger configuration and workflow steps.get_automation_activity
get_automation_activity
automations:readGet subscriber activity within an automation — who entered, who completed, who is currently active.create_automation
create_automation
automations:writeCreate a new automation in draft status.subscriber_joins_group · completes_form · joins_segment · clicks_link · updates_field · event_anniversary · exact_date · api_calleddelete_automation
delete_automation
automations:writeDelete an automation and all related steps, triggers, and subscriber history.Forms
5 tools · Required permission:forms:read or forms:write
list_forms
list_forms
forms:readList all signup forms.get_form
get_form
forms:readGet detailed information about a specific form.update_form
update_form
forms:writeUpdate a form’s name.delete_form
delete_form
forms:writeDelete a form permanently.get_form_subscribers
get_form_subscribers
forms:readGet the list of subscribers who signed up through a specific form.Segments
4 tools · Required permission:subscribers:read or subscribers:write
segments:* scope) because segments are a filtered view over subscriber data.list_segments
list_segments
subscribers:readList all subscriber segments with their subscriber counts.get_subscribers_in_segment
get_subscribers_in_segment
subscribers:readGet subscribers matching a segment’s filter criteria.update_segment
update_segment
subscribers:writeRename a segment.delete_segment
delete_segment
subscribers:writeDelete a segment. Subscribers are not affected.
