MailerLite
Manage MailerLite email marketing — subscribers, groups, campaigns, and automations. Sign in with MailerLite to connect.
What MailerLite exposes.
Every tool below is one this server advertised the last time Omniio refreshed it, under the mailerlite__ namespace. Your agent never loads them all — it searches, and gets the few that match.
mailerlite__add_subscriber7 arguments · 2 required
Add or Update Subscriber
Create a MailerLite subscriber, or update an existing subscriber with the same email. It can also change status, group membership, and resubscribe a previously unsubscribed subscriber.
Required
emailcontextmailerlite__assign_subscriber_to_group3 arguments · 3 required
Assign Subscriber to Group
Add a subscriber to a group
Required
subscriber_idgroup_idcontextmailerlite__batch_requests2 arguments · 2 required
Batch API Requests
Execute multiple MailerLite API requests in a single call. Requests may create, overwrite, or delete account data depending on their HTTP methods. Maximum 50 requests per batch. Paths must start with "api/". Webhooks are not supported in batch requests.
Required
requestscontextmailerlite__build_custom_automation5 arguments · 3 required
Validate Automation Plan
Validate an automation plan and discover the resources it needs BEFORE creating it. This is a dry validation step and does NOT create anything. Args: - trigger_type (enum): subscriber_joins_group | form_completed | abandoned_cart | subscriber_joins_segment. - steps (array): Planned steps in order; each { type: "email" | "delay", email_subject?, delay_value?, delay_unit? }. - resource_type (enum, optional): group | form | shop | segment. Defaults based on trigger_type. - resource_name (string, optional): Partial-match filter for the resource lookup. Returns: { valid, warnings[], complexity, available_resources[], resource_type }. warnings flag issues (missing subjects, emails too close together, no matching resource); available_resources lists the IDs to wire into create_automation's trigger_config. Examples: - Check a 3-email welcome flow and get the group IDs before calling create_automation. - Resolve any warnings, then call create_automation.
Required
trigger_typestepscontextmailerlite__cancel_campaign2 arguments · 2 required
Cancel Campaign
Cancel a scheduled campaign
Required
campaign_idcontextmailerlite__create_automation5 arguments · 5 required
Create Automation in MailerLite
Create a new automation workflow in MailerLite, including its trigger and an ordered list of email and delay steps. IMPORTANT: This creates real resources. Email steps are created but their HTML content CANNOT be authored via the API — the user must design each email in the MailerLite visual editor before the automation can send. The new automation is left inactive. Args: - name (string): Automation name. - trigger_type (enum): What starts the automation (e.g. subscriber_joins_group, form_completed, abandoned_cart, subscriber_joins_segment). - trigger_config (object): Trigger-specific IDs — group_ids for subscriber_joins_group, segment_id for subscriber_joins_segment, form_id (+ form_type) for form_completed, shop_id for abandoned_cart. Look IDs up first with list_resources. - steps (array): Ordered steps; each is { type: "email" | "delay" }. Email steps take email_subject; delay steps take delay_value and delay_unit. Returns: a structured result with automation_id, dashboard_url, steps_created, email_steps_count, and next_steps guidance. Examples: - Welcome series: trigger_type="subscriber_joins_group", trigger_config={ group_ids: ["123"] }, steps=[{ type: "email", email_subject: "Welcome" }, { type: "delay", delay_value: 2, delay_unit: "days" }, { type: "email", email_subject: "Getting started" }]. - Validate the plan with build_custom_automation and confirm IDs with list_resources first.
Required
nametrigger_typetrigger_configstepscontextmailerlite__create_campaign9 arguments · 6 required
Create Campaign
Create a new email campaign. The "from" email must be a verified sender on the account — use get_auth_status or check Settings > Domains in the MailerLite dashboard if unsure.
Required
nametypesubjectfrom_namefromcontextmailerlite__create_field3 arguments · 3 required
Create Field
Create a new custom subscriber field
Required
nametypecontextmailerlite__create_form4 arguments · 4 required
Create Form
Create a new signup form. Requires at least one group ID — use list_resources with resource_type "group" to find available groups first. Do not guess or invent group IDs.
Required
nametypegroupscontextmailerlite__create_group2 arguments · 2 required
Create Group
Create a new subscriber group
Required
namecontextmailerlite__create_segment3 arguments · 2 required
Create Segment
Create a new subscriber segment, with or without filter rules. Filter format: [[{"operator": "...", "args": [...]}]] — an array of AND groups; groups are OR'd together. Do NOT wrap it in a {"rules": [...]} object. Reference for common operators (args[0] is always the field): - in_last / not_in_last — args: [field, N, unit]; unit is one of y,M,w,d,h,m,s. field: subscribed_at, last_sent_at, last_activity_at, last_open_at, last_click_at, created_at. Example — opened in the last 90 days: ["last_open_at", 90, "d"] - less / greater — args: [field, value]. field: opens_count, clicks_count, sent, open_rate, click_rate. Example — click rate under 20%: ["click_rate", 20] - equals — args: [field, value]. field: source, opens_count, clicks_count, sent, timezone_id, open_rate, click_rate, location.country_code - doesnt_equal — args: [field, value]. field: source, timezone_id, location.country_code - in_any / not_in_any — args: [field, value | [values]]. field: groups, campaigns.sent/opened/clicked/delivered, automations.active/completed (not_in_any also allows automations.all), ecommerce.purchased_products.product_id/variant_id, location.country_code - in_all / not_in_all — args: [field, [values]]. field: groups only - is_set — args: [field] (no value). field: campaigns.sent/opened/clicked/delivered, timezone_id, location.country_code, automations.active/completed - is_not_set — args: [field] (no value). field: groups, campaigns.sent/opened/clicked/delivered, timezone_id, location.country_code, automations.active/completed/all, ecommerce.purchased_products.product_id - before / after — args: [field, date]. field: subscribed_at, created_at - matches / doesnt_match / contains / doesnt_contain — args: [field, value]. field: email only - text_field_contains/doesnt_contain/equals/doesnt_equal, numeric_field_less/less_or_equal/greater/greater_or_equal/equals/doesnt_equal, date_field_less/less_or_equal/greater/greater_or_equal/equals/doesnt_equal/in_last/after_interval, field_is_set/field_is_not_set — for CUSTOM fields only; args[0] is the field's ID from list_fields, as a STRING (e.g. "5", not 5) Example — opened in the last 90 days AND click rate under 20%: [[{"operator": "in_last", "args": ["last_open_at", 90, "d"]}, {"operator": "less", "args": ["click_rate", 20]}]] An invalid operator/field pairing is rejected locally with the valid options before the API is called. Omit filter to create a name-only segment and configure rules later in the dashboard.
Required
namecontextmailerlite__create_webhook6 arguments · 3 required
Create Webhook
Create a new webhook. Events requiring batchable=true: campaign.open, campaign.click, subscriber.deleted
Required
eventsurlcontextmailerlite__delete_automation2 arguments · 2 required
Delete Automation
Delete an automation
Required
automation_idcontextmailerlite__delete_campaign2 arguments · 2 required
Delete Campaign
Delete a campaign
Required
campaign_idcontextmailerlite__delete_field2 arguments · 2 required
Delete Field
Delete a custom subscriber field
Required
field_idcontextmailerlite__delete_form2 arguments · 2 required
Delete Form
Delete a form
Required
form_idcontextmailerlite__delete_group2 arguments · 2 required
Delete Group
Delete a subscriber group
Required
group_idcontextmailerlite__delete_segment2 arguments · 2 required
Delete Segment
Delete a segment.
Required
segment_idcontextmailerlite__delete_subscriber2 arguments · 2 required
Delete Subscriber
Delete a subscriber from the account.
Required
subscriber_idcontextmailerlite__delete_webhook2 arguments · 2 required
Delete Webhook
Delete a webhook
Required
webhook_idcontextmailerlite__discover_automation_templates3 arguments · 2 required
Discover Automation Templates
Browse pre-built automation workflow templates, optionally matched to a user's goal. Returns each template's id, name, trigger, and step flow. Args: - type (enum): all | welcome | promotion | reminder | event | feedback | date. - user_intent (string, optional): The user's goal (e.g. "abandoned cart") used for keyword/AI matching. Returns: { templates: [{ id, name, trigger_label, complexity, email_count, total_duration, steps[] }], matched, match_method }. Examples: - "show me welcome templates" -> type="welcome". - To create an automation from a result, pass its numeric id to install_template.
Required
typecontextmailerlite__dry_run_automation3 arguments · 3 required
Test Automation (Dry-Run)
Simulate automation flow without sending real emails.
Required
automation_idtest_emailcontextmailerlite__fetch2 arguments · 2 required
Fetch MailerLite Resource
Fetch the full record for a single MailerLite resource using an identifier returned by the search tool. Args: - id (string, required): A prefixed identifier from search results formatted "<kind>:<id>" where kind is campaign, group, form, or automation (e.g. "campaign:123"). Returns: { "id": string, "title": string, "text": string, "url": string, "metadata": object }. "text" is the full resource serialized as JSON; "metadata" carries kind-specific summary fields (e.g. status/type for campaigns, active_count for groups). Examples: - After search returns "automation:012" -> fetch with id="automation:012". - The id must include the kind prefix from search; a bare numeric id or an unsupported kind returns an error.
Required
idcontextmailerlite__get_auth_status1 argument · 1 required
Get Auth Status
Get current authentication status for this MailerLite connection.
Required
contextmailerlite__get_automation_activity10 arguments · 3 required
Get Automation Activity
Get activity log for an automation. Filter by status (completed, active, canceled, failed), date range, and subscriber email.
Required
automation_idstatuscontextmailerlite__get_campaign2 arguments · 2 required
Get Campaign
Get details of a specific campaign
Required
campaign_idcontextmailerlite__get_campaign_link_recipients8 arguments · 3 required
Get Campaign Link Recipients
Get subscribers who clicked a specific link in a campaign.
Required
campaign_idlink_idcontextmailerlite__get_campaign_links2 arguments · 2 required
Get Campaign Links
Get all tracked links in a sent campaign, including their IDs, URLs, and click counts.
Required
campaign_idcontextmailerlite__get_campaign_subscribers7 arguments · 2 required
Get Campaign Subscribers
Get subscriber activity for a sent campaign (opens, clicks, etc.). Results are page-paginated — increment the page number to fetch more results.
Required
campaign_idcontextmailerlite__get_dashboard_link3 arguments · 1 required
Get Dashboard Link
Generate a MailerLite dashboard URL for a resource, or for an account-level settings destination. resource_type: "automation", "campaign", "form", or "segment" (each needs resource_id); "group" (with resource_id, links to that group's filtered subscriber list; without it, links to the groups list); or one of the settings_* types — "settings_domains" (domain/sender verification), "settings_account" (company profile, postal address), "settings_api" (API keys), "settings_billing" (subscription, plan, invoices), "settings_security" (two-factor authentication enforcement), "settings_profile" (password, name, photo, email, language, newsletter — on the SSO account profile), "settings_team" (team members), "settings_webhooks" (webhook management), "settings_notifications" (email notifications), "settings_integrations" (integrations overview), "settings_subscribe" (double opt-in settings), "settings_unsubscribe" (unsubscribe page), "settings_preference_center" (subscriber preference center), "settings_brand_styles" (brand styles) — none of the settings_* types need resource_id.
Required
resource_typemailerlite__get_form2 arguments · 2 required
Get Form
Get details of a specific form
Required
form_idcontextmailerlite__get_form_subscribers5 arguments · 2 required
Get Form Subscribers
Get subscribers who signed up via a specific form. Results are page-paginated — increment the page number to fetch more results.
Required
form_idcontextmailerlite__get_group_subscribers4 arguments · 2 required
Get Group Subscribers
Get subscribers in a specific group. Results are cursor-paginated — pass the cursor from the previous response to fetch the next page.
Required
group_idcontextmailerlite__get_more_tools1 argument · 1 required
Check for additional tools whenever your task might benefit from specialized capabilities - even if existing tools could work as a fallback.
Required
contextmailerlite__get_segment2 arguments · 2 required
Get Segment
Get details of a specific segment
Required
segment_idcontextmailerlite__get_segment_subscribers5 arguments · 2 required
Get Segment Subscribers
Get subscribers belonging to a specific segment. Results are cursor-paginated — pass the cursor from the previous response to fetch the next page.
Required
segment_idcontextmailerlite__get_subscriber2 arguments · 2 required
Get Subscriber
Get subscriber information by ID or email. Requires an ID or email — MailerLite has no way to look subscribers up by name. If you only have a name, ask the user for the subscriber's email or ID rather than calling list_subscribers to search for them. If no subscriber matches, this returns a normal (non-error) result with found: false rather than failing — a missing subscriber is an expected outcome, not a tool error.
Required
subscriber_idcontextmailerlite__get_subscriber_activity2 arguments · 2 required
Get Subscriber Activity
Get activity history for a subscriber (opens, clicks, etc.)
Required
subscriber_idcontextmailerlite__get_subscriber_count2 arguments · 1 required
Get Subscriber Count
Get the count of subscribers in the account. By default returns the total across all statuses; pass status to get the count for just that status (e.g. unsubscribed).
Required
contextmailerlite__get_webhook2 arguments · 2 required
Get Webhook
Get a specific webhook by ID
Required
webhook_idcontextmailerlite__import_subscribers_to_group5 arguments · 3 required
Import Subscribers to Group
Import multiple subscribers to a group at once. Existing subscribers may be updated or resubscribed, and enabling autoresponders can send automation emails.
Required
group_idsubscriberscontextmailerlite__install_template2 arguments · 2 required
Install Template
Install a pre-built automation template, creating a new (inactive) automation in the account. You MUST obtain template_id from discover_automation_templates first — template IDs are long numeric strings (e.g. "178927102220830454"); a non-numeric value is rejected. Args: - template_id (string): Numeric template ID from discover_automation_templates results. Returns: { success, automation_id, automation_name, dashboard_url, next_steps }. Examples: - After discover returns a "Welcome series" template with id "178...", call install_template with that exact id. - Emails still need to be designed in the dashboard after installing.
Required
template_idcontextmailerlite__list_automations4 arguments · 1 required
List My Automations
List automations in the account. Results are page-paginated — increment the page number to fetch more results.
Required
contextmailerlite__list_campaigns5 arguments · 1 required
List Campaigns
List campaigns with optional status and type filters. Results are cursor-paginated — pass the cursor from the previous response to fetch the next page.
Required
contextmailerlite__list_email_templates3 arguments · 1 required
List Email Templates
List email templates (visual designs) with optional search filter.
Required
contextmailerlite__list_fields6 arguments · 1 required
List Fields
List all custom subscriber fields
Required
contextmailerlite__list_form_templates3 arguments · 2 required
List Form Templates
List form design templates by type (popup, promotion, or embedded).
Required
typecontextmailerlite__list_forms6 arguments · 2 required
List Forms
List forms by type (popup, embedded, or promotion). Results are page-paginated — increment the page number to fetch more results.
Required
typecontextmailerlite__list_resources3 arguments · 2 required
List Available Resources
List resources by type: "group", "form", "shop", or "segment" (plurals like "groups" are also accepted).
Required
resource_typecontextmailerlite__list_segments3 arguments · 1 required
List Segments
List subscriber segments. Results are page-paginated — increment the page number to fetch more results.
Required
contextmailerlite__list_subscribers4 arguments · 1 required
List Subscribers
List subscribers in the account. Results are cursor-paginated (default 25 per page) — pass the cursor from the previous response to fetch the next page. This tool cannot filter by name — MailerLite's API only supports filtering by status. Do not use this to search for or look up one specific subscriber; use get_subscriber with an ID/email instead, or ask the user for one.
Required
contextmailerlite__list_timezones2 arguments · 1 required
List Timezones
List timezones and their numeric IDs, for use as `schedule.timezone_id` when scheduling a campaign. Pass `search` (e.g. "Vilnius", "+02:00") to filter instead of listing all ~400 rows.
Required
contextmailerlite__list_webhooks1 argument · 1 required
List Webhooks
List all webhooks
Required
contextmailerlite__manage_ecommerce_cart_items6 arguments · 4 required
Manage E-commerce Cart Items
Create, update or delete the line items of a cart. Requires `shop_id` and `cart_id`.
Required
actionshop_idcart_idcontextmailerlite__manage_ecommerce_carts5 arguments · 3 required
Manage E-commerce Carts
Update a shopping cart within a shop (carts cannot be created or deleted via the API). Requires `shop_id`.
Required
actionshop_idcontextmailerlite__manage_ecommerce_categories5 arguments · 3 required
Manage E-commerce Categories
Create, update, delete or bulk-import product categories within a shop. Requires `shop_id`.
Required
actionshop_idcontextmailerlite__manage_ecommerce_category_products5 arguments · 5 required
Manage E-commerce Category Products
Attach a product to a category, or detach it from one. Requires `shop_id`, `category_id` and `product_id`.
Required
actionshop_idcategory_idproduct_idcontextmailerlite__manage_ecommerce_customers5 arguments · 3 required
Manage E-commerce Customers
Create, update or delete customers within a shop. Requires `shop_id`.
Required
actionshop_idcontextmailerlite__manage_ecommerce_orders5 arguments · 3 required
Manage E-commerce Orders
Create, update, delete or bulk-import orders within a shop. Requires `shop_id`.
Required
actionshop_idcontextmailerlite__manage_ecommerce_products5 arguments · 3 required
Manage E-commerce Products
Create, update, delete or bulk-import products within a shop. Requires `shop_id`.
Required
actionshop_idcontextmailerlite__manage_ecommerce_shops4 arguments · 2 required
Manage E-commerce Shops
Create, update or delete MailerLite e-commerce shops. Use `id` as the shop id for update/delete.
Required
actioncontextmailerlite__read_ecommerce_data9 arguments · 3 required
Read E-commerce Data
List or fetch MailerLite e-commerce data: shops, products, customers, orders, categories, carts, cart items, and the products in a category. Read-only — it cannot create, change or delete anything; use the manage_ecommerce_* tools for that. `shop_id` is required for every resource except `shops`; `cart_items` also requires `cart_id`; `category_products` also requires `category_id` and supports only the `list` action. Use `action: "get"` with `id` to fetch one record, and the `list` cursor for further pages.
Required
resourceactioncontextmailerlite__schedule_campaign4 arguments · 3 required
Schedule Campaign
Schedule a campaign to be sent. Requires a verified sender on the account. Use delivery "instant" to send immediately, or "scheduled" with a schedule object to send at a specific time.
Required
campaign_iddeliverycontextmailerlite__search3 arguments · 2 required
Search MailerLite Resources
Search across MailerLite campaigns, groups, forms, and automations by free-text query, matching names and key fields (subject, type, status, slug). This is a discovery tool that returns lightweight result stubs, not full records. To get the full details of a result, pass its id to the fetch tool. Args: - query (string, required): Case-insensitive text to match across resource names and fields. - limit (number): Max results, 1-20 (default 10). Returns: { "results": [{ "id": string, "title": string, "url": string }] }. Each id is a prefixed identifier like "campaign:123", "group:456", "form:789", or "automation:012" — pass it verbatim to fetch. Returns an empty results array (never an error) when nothing matches. Examples: - "find my black friday campaign" -> query="black friday" - "which welcome automation do I have" -> query="welcome" - For unfiltered listing use list_campaigns / list_automations / list_resources instead.
Required
querycontextmailerlite__select_resource4 arguments · 4 required
Select Resource
Confirms a user-selected resource (group, form, shop, or segment).
Required
resource_idresource_nameresource_typecontextmailerlite__send_test_automation3 arguments · 3 required
Send Test Emails
Send test emails from an automation.
Required
automation_idemailcontextmailerlite__start_automation_conversation2 arguments · 2 required
Start Automation Conversation
Analyze a user's automation request and return the clarifying questions needed before building it. Use this FIRST when a user wants to create an automation but has not specified the trigger, the target resource, and the timing. It returns the questions to ask; it does NOT create anything or call the API. Args: - user_request (string): The user's verbatim automation request. Returns: a conversation guide with detected.{ has_trigger_type, has_resource_name, has_timing_info }, questions_to_ask[], and instructions for how to proceed. Examples: - "I want to set up a welcome email" -> returns questions about trigger, resource, and timing. - Once you already have trigger + resource + timing, skip this and go to build_custom_automation / create_automation.
Required
user_requestcontextmailerlite__unassign_subscriber_from_group3 arguments · 3 required
Remove Subscriber from Group
Remove a subscriber from a group
Required
subscriber_idgroup_idcontextmailerlite__update_automation_delay5 arguments · 5 required
Update Automation Delay
Update the duration of a delay step in an automation.
Required
automation_idstep_indexvalueunitcontextmailerlite__update_automation_email5 arguments · 4 required
Update Automation Email
Update the subject line and plain text content of an email step in an automation.
Required
automation_idstep_indexsubjectcontextmailerlite__update_automation_email_content5 arguments · 3 required
Update Automation Email HTML Content
Replace the HTML body of an automation email. This overwrites the existing email design — any content previously created in the dashboard editor is lost. Use update_automation_email to change the subject or plain text instead.
Required
automation_idhtmlcontextmailerlite__update_campaign7 arguments · 2 required
Update Campaign
Update campaign details. `name` is optional — if omitted, the campaign's existing name is preserved automatically, so subject/content-only edits don't require knowing or inventing a name.
Required
campaign_idcontextmailerlite__update_field3 arguments · 3 required
Update Field
Update a custom subscriber field name
Required
field_idnamecontextmailerlite__update_form3 arguments · 2 required
Update Form
Update a form name
Required
form_idcontextmailerlite__update_group3 arguments · 3 required
Update Group
Update a group name
Required
group_idnamecontextmailerlite__update_segment3 arguments · 3 required
Update Segment
Update a segment name
Required
segment_idnamecontextmailerlite__update_subscriber4 arguments · 2 required
Update Subscriber
Update subscriber information.
Required
subscriber_idcontextmailerlite__update_webhook7 arguments · 2 required
Update Webhook
Update an existing webhook
Required
webhook_idcontextmailerlite__validate_email_content3 arguments · 3 required
Validate Email Content
Validate email content (subject and body) against MailerLite best practices. Provide the subject and plain_text you have drafted, and this tool will check for issues like subject length, spam trigger words, missing call-to-action, and body length limits.
Required
subjectplain_textcontextmailerlite__validate_subject_lines2 arguments · 2 required
Validate Subject Lines
Validate a list of email subject line candidates against MailerLite best practices. Provide subject lines you have drafted, and this tool will check each one for length, spam trigger words, and other issues.
Required
subject_linescontext
Three steps, and the last one is not yours.
Point a client at Omniio
One URL, authorized once by your client. If you already use Omniio, this step is done.
Switch MailerLite on
Authorize it from your library; the grant is yours and stays yours.
Ask for what you need
The agent searches, reads the one schema it picked, and runs it. You do not name the tool.
claude mcp add --transport http omniio https://mcp.omniio.dev