MailerLite

Manage MailerLite email marketing — subscribers, groups, campaigns, and automations. Sign in with MailerLite to connect.

OAuthProductivity80 tools
Tools

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.

80 tools
  • 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.

    Requiredemailcontext

  • mailerlite__assign_subscriber_to_group3 arguments · 3 required

    Assign Subscriber to Group

    Add a subscriber to a group

    Requiredsubscriber_idgroup_idcontext

  • mailerlite__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.

    Requiredrequestscontext

  • mailerlite__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.

    Requiredtrigger_typestepscontext

  • mailerlite__cancel_campaign2 arguments · 2 required

    Cancel Campaign

    Cancel a scheduled campaign

    Requiredcampaign_idcontext

  • mailerlite__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.

    Requirednametrigger_typetrigger_configstepscontext

  • mailerlite__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.

    Requirednametypesubjectfrom_namefromcontext

  • mailerlite__create_field3 arguments · 3 required

    Create Field

    Create a new custom subscriber field

    Requirednametypecontext

  • mailerlite__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.

    Requirednametypegroupscontext

  • mailerlite__create_group2 arguments · 2 required

    Create Group

    Create a new subscriber group

    Requirednamecontext

  • mailerlite__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.

    Requirednamecontext

  • mailerlite__create_webhook6 arguments · 3 required

    Create Webhook

    Create a new webhook. Events requiring batchable=true: campaign.open, campaign.click, subscriber.deleted

    Requiredeventsurlcontext

  • mailerlite__delete_automation2 arguments · 2 required

    Delete Automation

    Delete an automation

    Requiredautomation_idcontext

  • mailerlite__delete_campaign2 arguments · 2 required

    Delete Campaign

    Delete a campaign

    Requiredcampaign_idcontext

  • mailerlite__delete_field2 arguments · 2 required

    Delete Field

    Delete a custom subscriber field

    Requiredfield_idcontext

  • mailerlite__delete_form2 arguments · 2 required

    Delete Form

    Delete a form

    Requiredform_idcontext

  • mailerlite__delete_group2 arguments · 2 required

    Delete Group

    Delete a subscriber group

    Requiredgroup_idcontext

  • mailerlite__delete_segment2 arguments · 2 required

    Delete Segment

    Delete a segment.

    Requiredsegment_idcontext

  • mailerlite__delete_subscriber2 arguments · 2 required

    Delete Subscriber

    Delete a subscriber from the account.

    Requiredsubscriber_idcontext

  • mailerlite__delete_webhook2 arguments · 2 required

    Delete Webhook

    Delete a webhook

    Requiredwebhook_idcontext

  • mailerlite__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.

    Requiredtypecontext

  • mailerlite__dry_run_automation3 arguments · 3 required

    Test Automation (Dry-Run)

    Simulate automation flow without sending real emails.

    Requiredautomation_idtest_emailcontext

  • mailerlite__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.

    Requiredidcontext

  • mailerlite__get_auth_status1 argument · 1 required

    Get Auth Status

    Get current authentication status for this MailerLite connection.

    Requiredcontext

  • mailerlite__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.

    Requiredautomation_idstatuscontext

  • mailerlite__get_campaign2 arguments · 2 required

    Get Campaign

    Get details of a specific campaign

    Requiredcampaign_idcontext

  • mailerlite__get_campaign_link_recipients8 arguments · 3 required

    Get Campaign Link Recipients

    Get subscribers who clicked a specific link in a campaign.

    Requiredcampaign_idlink_idcontext

  • mailerlite__get_campaign_links2 arguments · 2 required

    Get Campaign Links

    Get all tracked links in a sent campaign, including their IDs, URLs, and click counts.

    Requiredcampaign_idcontext

  • mailerlite__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.

    Requiredcampaign_idcontext

  • mailerlite__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.

    Requiredresource_type

  • mailerlite__get_form2 arguments · 2 required

    Get Form

    Get details of a specific form

    Requiredform_idcontext

  • mailerlite__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.

    Requiredform_idcontext

  • mailerlite__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.

    Requiredgroup_idcontext

  • mailerlite__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.

    Requiredcontext

  • mailerlite__get_segment2 arguments · 2 required

    Get Segment

    Get details of a specific segment

    Requiredsegment_idcontext

  • mailerlite__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.

    Requiredsegment_idcontext

  • mailerlite__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.

    Requiredsubscriber_idcontext

  • mailerlite__get_subscriber_activity2 arguments · 2 required

    Get Subscriber Activity

    Get activity history for a subscriber (opens, clicks, etc.)

    Requiredsubscriber_idcontext

  • mailerlite__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).

    Requiredcontext

  • mailerlite__get_webhook2 arguments · 2 required

    Get Webhook

    Get a specific webhook by ID

    Requiredwebhook_idcontext

  • mailerlite__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.

    Requiredgroup_idsubscriberscontext

  • mailerlite__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.

    Requiredtemplate_idcontext

  • mailerlite__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.

    Requiredcontext

  • mailerlite__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.

    Requiredcontext

  • mailerlite__list_email_templates3 arguments · 1 required

    List Email Templates

    List email templates (visual designs) with optional search filter.

    Requiredcontext

  • mailerlite__list_fields6 arguments · 1 required

    List Fields

    List all custom subscriber fields

    Requiredcontext

  • mailerlite__list_form_templates3 arguments · 2 required

    List Form Templates

    List form design templates by type (popup, promotion, or embedded).

    Requiredtypecontext

  • mailerlite__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.

    Requiredtypecontext

  • mailerlite__list_resources3 arguments · 2 required

    List Available Resources

    List resources by type: "group", "form", "shop", or "segment" (plurals like "groups" are also accepted).

    Requiredresource_typecontext

  • mailerlite__list_segments3 arguments · 1 required

    List Segments

    List subscriber segments. Results are page-paginated — increment the page number to fetch more results.

    Requiredcontext

  • mailerlite__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.

    Requiredcontext

  • mailerlite__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.

    Requiredcontext

  • mailerlite__list_webhooks1 argument · 1 required

    List Webhooks

    List all webhooks

    Requiredcontext

  • mailerlite__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`.

    Requiredactionshop_idcart_idcontext

  • mailerlite__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`.

    Requiredactionshop_idcontext

  • mailerlite__manage_ecommerce_categories5 arguments · 3 required

    Manage E-commerce Categories

    Create, update, delete or bulk-import product categories within a shop. Requires `shop_id`.

    Requiredactionshop_idcontext

  • mailerlite__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`.

    Requiredactionshop_idcategory_idproduct_idcontext

  • mailerlite__manage_ecommerce_customers5 arguments · 3 required

    Manage E-commerce Customers

    Create, update or delete customers within a shop. Requires `shop_id`.

    Requiredactionshop_idcontext

  • mailerlite__manage_ecommerce_orders5 arguments · 3 required

    Manage E-commerce Orders

    Create, update, delete or bulk-import orders within a shop. Requires `shop_id`.

    Requiredactionshop_idcontext

  • mailerlite__manage_ecommerce_products5 arguments · 3 required

    Manage E-commerce Products

    Create, update, delete or bulk-import products within a shop. Requires `shop_id`.

    Requiredactionshop_idcontext

  • mailerlite__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.

    Requiredactioncontext

  • mailerlite__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.

    Requiredresourceactioncontext

  • mailerlite__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.

    Requiredcampaign_iddeliverycontext

  • mailerlite__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.

    Requiredquerycontext

  • mailerlite__select_resource4 arguments · 4 required

    Select Resource

    Confirms a user-selected resource (group, form, shop, or segment).

    Requiredresource_idresource_nameresource_typecontext

  • mailerlite__send_test_automation3 arguments · 3 required

    Send Test Emails

    Send test emails from an automation.

    Requiredautomation_idemailcontext

  • mailerlite__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.

    Requireduser_requestcontext

  • mailerlite__unassign_subscriber_from_group3 arguments · 3 required

    Remove Subscriber from Group

    Remove a subscriber from a group

    Requiredsubscriber_idgroup_idcontext

  • mailerlite__update_automation_delay5 arguments · 5 required

    Update Automation Delay

    Update the duration of a delay step in an automation.

    Requiredautomation_idstep_indexvalueunitcontext

  • mailerlite__update_automation_email5 arguments · 4 required

    Update Automation Email

    Update the subject line and plain text content of an email step in an automation.

    Requiredautomation_idstep_indexsubjectcontext

  • mailerlite__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.

    Requiredautomation_idhtmlcontext

  • mailerlite__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.

    Requiredcampaign_idcontext

  • mailerlite__update_field3 arguments · 3 required

    Update Field

    Update a custom subscriber field name

    Requiredfield_idnamecontext

  • mailerlite__update_form3 arguments · 2 required

    Update Form

    Update a form name

    Requiredform_idcontext

  • mailerlite__update_group3 arguments · 3 required

    Update Group

    Update a group name

    Requiredgroup_idnamecontext

  • mailerlite__update_segment3 arguments · 3 required

    Update Segment

    Update a segment name

    Requiredsegment_idnamecontext

  • mailerlite__update_subscriber4 arguments · 2 required

    Update Subscriber

    Update subscriber information.

    Requiredsubscriber_idcontext

  • mailerlite__update_webhook7 arguments · 2 required

    Update Webhook

    Update an existing webhook

    Requiredwebhook_idcontext

  • mailerlite__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.

    Requiredsubjectplain_textcontext

  • mailerlite__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.

    Requiredsubject_linescontext

Connecting

Three steps, and the last one is not yours.

01

Point a client at Omniio

One URL, authorized once by your client. If you already use Omniio, this step is done.

02

Switch MailerLite on

Authorize it from your library; the grant is yours and stays yours.

03

Ask for what you need

The agent searches, reads the one schema it picked, and runs it. You do not name the tool.

claude code
claude mcp add --transport http omniio https://mcp.omniio.dev
Productivity

Others in the same category.

They share the endpoint, so having more than one on costs you nothing in context — the search decides which is relevant.

Browse the whole library