Mail Blaze MCP by usefulapi
Manage Mail Blaze lists, subscribers, templates, campaigns and reports; send transactional email.
¿Debería usar esto?
Calidad y seguridad
Hallazgos (10)
- LOWen mailblaze_get_campaign_inbox_breakdown
- LOWen mailblaze_find_subscriber_by_email
- LOWen mailblaze_unsubscribe_subscriber
- LOWen mailblaze_resubscribe_subscriber
- LOWen mailblaze_get_campaign_summaries
- LOWen mailblaze_get_campaign_inbox_breakdown
- LOWen mailblaze_get_subscriber_activity
- LOWen mailblaze_list_transactional_emails
- LOWen mailblaze_get_transactional_email
- LOWen mailblaze_send_transactional_email
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"mailblaze": {
"url": "https://mailblaze.usefulapi.io/mcp"
}
}
}Puntos de conexión remotos
https://mailblaze.usefulapi.io/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (26)
🟢mailblaze_list_lists(page, per_page)
List the account's mailing lists (name, uid, subscriber counts, defaults). Use the list uid in the other tools. Paged: page + per_page.
Esquema de entrada
{
"type": "object",
"properties": {
"page": {
"description": "Page number, starting at 1 (results come in sets of 10; keep going until a page comes back empty).",
"type": "integer",
"minimum": 1,
"maximum": 100000
},
"per_page": {
"description": "Lists per page (default set by Mail Blaze).",
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢mailblaze_get_list(list_uid)
Get one mailing list by its uid: general settings, default sender, company details and counts.
Esquema de entrada
{
"type": "object",
"properties": {
"list_uid": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "List uid from mailblaze_list_lists."
}
},
"required": [
"list_uid"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢mailblaze_list_list_fields(list_uid, page)
List the fields of a mailing list (label, tag, type, required). The tags (EMAIL, FNAME, LNAME, custom ones) are the keys used when adding or updating subscribers.
Esquema de entrada
{
"type": "object",
"properties": {
"list_uid": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[A-Za-z0-9_-]+$"
},
"page": {
"description": "Page number, starting at 1 (results come in sets of 10; keep going until a page comes back empty).",
"type": "integer",
"minimum": 1,
"maximum": 100000
}
},
"required": [
"list_uid"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢mailblaze_list_segments(list_uid, page)
List the segments defined on a mailing list (uid, name). A segment uid can be used when creating a campaign.
Esquema de entrada
{
"type": "object",
"properties": {
"list_uid": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[A-Za-z0-9_-]+$"
},
"page": {
"description": "Page number, starting at 1 (results come in sets of 10; keep going until a page comes back empty).",
"type": "integer",
"minimum": 1,
"maximum": 100000
}
},
"required": [
"list_uid"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢mailblaze_list_subscribers(list_uid, page)
List the subscribers of a mailing list (sets of 10 per page; use page to go on). Contains personal data (emails, names).
Esquema de entrada
{
"type": "object",
"properties": {
"list_uid": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[A-Za-z0-9_-]+$"
},
"page": {
"description": "Page number, starting at 1 (results come in sets of 10; keep going until a page comes back empty).",
"type": "integer",
"minimum": 1,
"maximum": 100000
}
},
"required": [
"list_uid"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢mailblaze_get_subscriber(list_uid, subscriber_uid)
Get one subscriber of a list by subscriber uid (status, fields, dates).
Esquema de entrada
{
"type": "object",
"properties": {
"list_uid": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[A-Za-z0-9_-]+$"
},
"subscriber_uid": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Subscriber uid from mailblaze_list_subscribers or mailblaze_find_subscriber_by_email."
}
},
"required": [
"list_uid",
"subscriber_uid"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢mailblaze_find_subscriber_by_email(list_uid, email)
Look up a subscriber in one list by email address. Returns the subscriber (with its uid) or a not-found error.
Esquema de entrada
{
"type": "object",
"properties": {
"list_uid": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[A-Za-z0-9_-]+$"
},
"email": {
"type": "string",
"minLength": 3,
"maxLength": 254,
"pattern": "^[^\\s@<>\",;]+@[^\\s@<>\",;]+\\.[^\\s@<>\",;]+$"
}
},
"required": [
"list_uid",
"email"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴mailblaze_add_subscriber(list_uid, email, first_name, last_name, custom_fields)
WRITE, MAY SEND A CONFIRMATION EMAIL: add one subscriber to a mailing list. Depending on the list's settings Mail Blaze may send the person a confirmation (double opt-in) email. Only add people who agreed to receive your email. An email that is already on the list answers with a conflict error.
Esquema de entrada
{
"type": "object",
"properties": {
"list_uid": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[A-Za-z0-9_-]+$"
},
"email": {
"type": "string",
"minLength": 3,
"maxLength": 254,
"pattern": "^[^\\s@<>\",;]+@[^\\s@<>\",;]+\\.[^\\s@<>\",;]+$"
},
"first_name": {
"description": "Sets the FNAME field.",
"type": "string",
"maxLength": 255
},
"last_name": {
"description": "Sets the LNAME field.",
"type": "string",
"maxLength": 255
},
"custom_fields": {
"description": "Custom field values keyed by the field's tag (see mailblaze_list_list_fields), e.g. {\"PHONE\": \"+1 555 0100\"}.",
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "string",
"maxLength": 1000
}
}
},
"required": [
"list_uid",
"email"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴mailblaze_add_subscribers_bulk(list_uid, subscribers)
WRITE, MAY SEND CONFIRMATION EMAILS: add up to 100 subscribers to a mailing list in one request; an email already on the list is updated instead. Depending on the list's settings Mail Blaze may send confirmation emails. Only add people who agreed to receive your email.
Esquema de entrada
{
"type": "object",
"properties": {
"list_uid": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[A-Za-z0-9_-]+$"
},
"subscribers": {
"minItems": 1,
"maxItems": 100,
"type": "array",
"items": {
"type": "object",
"properties": {
"email": {
"type": "string",
"minLength": 3,
"maxLength": 254,
"pattern": "^[^\\s@<>\",;]+@[^\\s@<>\",;]+\\.[^\\s@<>\",;]+$"
},
"first_name": {
"type": "string",
"maxLength": 255
},
"last_name": {
"type": "string",
"maxLength": 255
},
"custom_fields": {
"description": "Custom field values keyed by the field's tag (see mailblaze_list_list_fields), e.g. {\"PHONE\": \"+1 555 0100\"}.",
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "string",
"maxLength": 1000
}
}
},
"required": [
"email"
]
},
"description": "1 to 100 subscribers."
}
},
"required": [
"list_uid",
"subscribers"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴mailblaze_update_subscriber(list_uid, subscriber_uid, email, first_name, last_name, ...)
WRITE: update a subscriber's name or custom fields. Pass the subscriber's current email (Mail Blaze requires it) plus only the values to change. Does not change subscription status.
Esquema de entrada
{
"type": "object",
"properties": {
"list_uid": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[A-Za-z0-9_-]+$"
},
"subscriber_uid": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[A-Za-z0-9_-]+$"
},
"email": {
"type": "string",
"minLength": 3,
"maxLength": 254,
"pattern": "^[^\\s@<>\",;]+@[^\\s@<>\",;]+\\.[^\\s@<>\",;]+$",
"description": "The subscriber's email (Mail Blaze requires it on update)."
},
"first_name": {
"type": "string",
"maxLength": 255
},
"last_name": {
"type": "string",
"maxLength": 255
},
"custom_fields": {
"description": "Custom field values keyed by the field's tag (see mailblaze_list_list_fields), e.g. {\"PHONE\": \"+1 555 0100\"}.",
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "string",
"maxLength": 1000
}
}
},
"required": [
"list_uid",
"subscriber_uid",
"email"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴mailblaze_unsubscribe_subscriber(list_uid, subscriber_uid)
WRITE: set a subscriber's status to unsubscribed so they receive no more campaigns from this list. By default Mail Blaze also adds the address to the account's local blacklist. Do this only when the person asked to stop (or a data-protection request requires it). The subscriber record is kept.
Esquema de entrada
{
"type": "object",
"properties": {
"list_uid": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[A-Za-z0-9_-]+$"
},
"subscriber_uid": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[A-Za-z0-9_-]+$"
}
},
"required": [
"list_uid",
"subscriber_uid"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴mailblaze_resubscribe_subscriber(list_uid, subscriber_uid)
WRITE: set a previously unsubscribed subscriber back to subscribed so campaigns reach them again. Only do this when the person asked to be re-added (consent).
Esquema de entrada
{
"type": "object",
"properties": {
"list_uid": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[A-Za-z0-9_-]+$"
},
"subscriber_uid": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[A-Za-z0-9_-]+$"
}
},
"required": [
"list_uid",
"subscriber_uid"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢mailblaze_list_templates(page)
List the account's email templates (uid, name). A template uid is needed to create a campaign.
Esquema de entrada
{
"type": "object",
"properties": {
"page": {
"description": "Page number, starting at 1 (results come in sets of 10; keep going until a page comes back empty).",
"type": "integer",
"minimum": 1,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢mailblaze_get_template(template_uid)
Get one email template by uid (name and content).
Esquema de entrada
{
"type": "object",
"properties": {
"template_uid": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[A-Za-z0-9_-]+$"
}
},
"required": [
"template_uid"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟡mailblaze_create_template(name, html)
WRITE: create an email template from HTML (the tool base64-encodes it). Mail Blaze requires the HTML to contain an unsubscribe link. Sends nothing.
Esquema de entrada
{
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"maxLength": 255
},
"html": {
"type": "string",
"minLength": 1,
"maxLength": 1000000,
"description": "The full HTML of the email, including an unsubscribe link."
}
},
"required": [
"name",
"html"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢mailblaze_list_campaigns(page)
List the account's email campaigns (uid, name, status, dates). Use the campaign uid for details and reports.
Esquema de entrada
{
"type": "object",
"properties": {
"page": {
"description": "Page number, starting at 1 (results come in sets of 10; keep going until a page comes back empty).",
"type": "integer",
"minimum": 1,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢mailblaze_get_campaign(campaign_uid)
Get one campaign by uid: sender, subject, list, template, status and schedule.
Esquema de entrada
{
"type": "object",
"properties": {
"campaign_uid": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[A-Za-z0-9_-]+$"
}
},
"required": [
"campaign_uid"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴mailblaze_create_campaign(name, from_name, from_email, reply_to, subject, ...)
WRITE, SENDS EMAIL TO PEOPLE: create a campaign for a mailing list (or one of its segments) from an existing template and schedule it for send_at. Once it goes out it reaches every subscriber of the list or segment, may use sending credit and cannot be recalled. Confirm the list, segment, subject, template and send time with the user before calling. Needs a template uid (mailblaze_list_templates) and a list uid (mailblaze_list_lists).
Esquema de entrada
{
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"maxLength": 255,
"description": "Internal campaign name."
},
"from_name": {
"type": "string",
"minLength": 1,
"maxLength": 255
},
"from_email": {
"type": "string",
"minLength": 3,
"maxLength": 254,
"pattern": "^[^\\s@<>\",;]+@[^\\s@<>\",;]+\\.[^\\s@<>\",;]+$",
"description": "Sender address; it must be a verified sender in Mail Blaze."
},
"reply_to": {
"type": "string",
"minLength": 3,
"maxLength": 254,
"pattern": "^[^\\s@<>\",;]+@[^\\s@<>\",;]+\\.[^\\s@<>\",;]+$"
},
"subject": {
"type": "string",
"minLength": 1,
"maxLength": 500
},
"list_uid": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[A-Za-z0-9_-]+$"
},
"segment_uid": {
"description": "Send only to this segment of the list.",
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[A-Za-z0-9_-]+$"
},
"template_uid": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[A-Za-z0-9_-]+$"
},
"send_at": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2}$",
"description": "When to send, 'YYYY-MM-DD HH:MM:SS' (interpreted by Mail Blaze in the account's time zone)."
}
},
"required": [
"name",
"from_name",
"from_email",
"reply_to",
"subject",
"list_uid",
"template_uid",
"send_at"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢mailblaze_get_campaign_summaries(campaign_uids)
Bulk report summary (sent, opens, clicks, bounces, unsubscribes) for up to 50 campaigns in one call. Read-only (it is a POST in the API only because of the id list).
Esquema de entrada
{
"type": "object",
"properties": {
"campaign_uids": {
"minItems": 1,
"maxItems": 50,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[A-Za-z0-9_-]+$"
},
"description": "1 to 50 campaign uids."
}
},
"required": [
"campaign_uids"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢mailblaze_get_campaign_inbox_breakdown(campaign_uid)
Inbox-provider breakdown (e.g. Gmail, Outlook, Yahoo) of a campaign's delivery.
Esquema de entrada
{
"type": "object",
"properties": {
"campaign_uid": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[A-Za-z0-9_-]+$"
}
},
"required": [
"campaign_uid"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢mailblaze_list_campaign_events(campaign_uid, kind, limit, cursor)
List the individual events of a campaign by kind: opens, clicks, bounces or unsubscribes. Cursor-paged: pass the reply's next_cursor back until it is null. For very large campaigns Mail Blaze answers 202 with a job_id; check it with mailblaze_get_report_job.
Esquema de entrada
{
"type": "object",
"properties": {
"campaign_uid": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[A-Za-z0-9_-]+$"
},
"kind": {
"type": "string",
"enum": [
"opens",
"clicks",
"bounces",
"unsubscribes"
]
},
"limit": {
"description": "Events per page (default 100, max 1000).",
"type": "integer",
"minimum": 1,
"maximum": 1000
},
"cursor": {
"description": "The next_cursor from the previous reply, passed back exactly as returned. Omit for the first page.",
"type": "string",
"minLength": 1,
"maxLength": 2000
}
},
"required": [
"campaign_uid",
"kind"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢mailblaze_get_subscriber_activity(email, list_uid, limit, cursor)
Email activity (sends, opens, clicks, bounces) of one subscriber by email address, optionally limited to one list. Cursor-paged.
Esquema de entrada
{
"type": "object",
"properties": {
"email": {
"type": "string",
"minLength": 3,
"maxLength": 254,
"pattern": "^[^\\s@<>\",;]+@[^\\s@<>\",;]+\\.[^\\s@<>\",;]+$"
},
"list_uid": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[A-Za-z0-9_-]+$"
},
"limit": {
"description": "Events per page (default 100, max 1000).",
"type": "integer",
"minimum": 1,
"maximum": 1000
},
"cursor": {
"description": "The next_cursor from the previous reply, passed back exactly as returned. Omit for the first page.",
"type": "string",
"minLength": 1,
"maxLength": 2000
}
},
"required": [
"email"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢mailblaze_get_report_job(job_id)
Status (and result when finished) of an asynchronous report job, as returned in a 202 reply with a job_id.
Esquema de entrada
{
"type": "object",
"properties": {
"job_id": {
"type": "string",
"minLength": 1,
"maxLength": 128,
"pattern": "^[A-Za-z0-9_-]+$"
}
},
"required": [
"job_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢mailblaze_list_transactional_emails(page)
List the transactional emails sent through the account (uid, recipient, subject, status). Paged.
Esquema de entrada
{
"type": "object",
"properties": {
"page": {
"description": "Page number, starting at 1 (results come in sets of 10; keep going until a page comes back empty).",
"type": "integer",
"minimum": 1,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢mailblaze_get_transactional_email(email_uid)
Get one transactional email by uid: recipient, subject, status and timestamps.
Esquema de entrada
{
"type": "object",
"properties": {
"email_uid": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[A-Za-z0-9_-]+$"
}
},
"required": [
"email_uid"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴mailblaze_send_transactional_email(to_email, to_name, from_email, from_name, reply_to_email, ...)
WRITE, SENDS ONE EMAIL NOW: send a single one-to-one email to one recipient through Mail Blaze. It leaves immediately, uses sending credit and cannot be recalled. Give either html (the body) or template_id (a transactional template, with merge_tags covering every tag in it), not both. Confirm the recipient and content with the user before calling. Not for bulk or marketing mail; use a campaign for that.
Esquema de entrada
{
"type": "object",
"properties": {
"to_email": {
"type": "string",
"minLength": 3,
"maxLength": 254,
"pattern": "^[^\\s@<>\",;]+@[^\\s@<>\",;]+\\.[^\\s@<>\",;]+$"
},
"to_name": {
"type": "string",
"minLength": 1,
"maxLength": 255,
"description": "Recipient name (required by Mail Blaze)."
},
"from_email": {
"type": "string",
"minLength": 3,
"maxLength": 254,
"pattern": "^[^\\s@<>\",;]+@[^\\s@<>\",;]+\\.[^\\s@<>\",;]+$",
"description": "Sender address; it must be a verified sender in Mail Blaze."
},
"from_name": {
"type": "string",
"minLength": 1,
"maxLength": 255,
"description": "Sender name (required by Mail Blaze)."
},
"reply_to_email": {
"type": "string",
"minLength": 3,
"maxLength": 254,
"pattern": "^[^\\s@<>\",;]+@[^\\s@<>\",;]+\\.[^\\s@<>\",;]+$"
},
"reply_to_name": {
"type": "string",
"maxLength": 255
},
"subject": {
"type": "string",
"minLength": 1,
"maxLength": 500
},
"html": {
"description": "HTML body (the tool base64-encodes it). Omit when using template_id.",
"type": "string",
"minLength": 1,
"maxLength": 1000000
},
"template_id": {
"description": "Transactional template id. Omit when sending html.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"merge_tags": {
"description": "Template merge tags (required with template_id); every tag in the template must be present.",
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "string",
"maxLength": 10000
}
}
},
"required": [
"to_email",
"to_name",
"from_email",
"from_name",
"subject"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Comunidad
Evidencia