Skip to main content
Glama
monk24215

listmonk-mcp

by monk24215

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
LISTMONK_URLYesBase URL of the Listmonk instance (no /api suffix).
MCP_HTTP_PORTNoHTTP port used when MCP_TRANSPORT=http.3100
MCP_TRANSPORTNoTransport to use: stdio or http.stdio
MCP_HTTP_TOKENNoRequired only when MCP_TRANSPORT=http. At least 24 characters; used in the /mcp/<token> URL which acts as a secret.
LISTMONK_API_USERYesListmonk API user name (Admin -> Users -> API user).
LISTMONK_API_TOKENYesListmonk API token for the API user.
LISTMONK_MCP_READONLYNotrue = write and delete tools are not registered (14 read-only tools instead of 32).false

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
listmonk_statusA

Server health, version, and build info. Start here when diagnosing anything. Returns {health, about, config}.

listmonk_dashboard_countsA

Totals across the instance: subscribers by status, lists, campaigns, and messages.

listmonk_logsB

Recent Listmonk application log lines (ring buffer, not persisted).

listmonk_settings_getA

Instance settings. Passwords, keys, and tokens are replaced with [redacted] before being returned.

listmonk_smtp_testA

Opens a connection to a configured SMTP server and sends a test email to the given address. Sends real mail through the instance's SMTP settings.

lists_listB

All mailing lists with id, name, type, opt-in mode, tags, and subscriber counts.

list_getC

One mailing list by id.

list_createC

Create a mailing list. type is 'public' or 'private'; optin is 'single' or 'double'.

list_updateB

Update a mailing list. Only the fields you pass change; the rest are kept from the current list.

list_deleteA

Permanently delete a mailing list by id. Subscriptions to it are removed; subscriber records are kept.

subscribers_searchB

Search subscribers. Pass query as a Listmonk SQL expression on the subscribers table, e.g. subscribers.email LIKE '%@example.com' or subscribers.status = 'blocklisted'. Omit query to list all.

subscriber_getB

One subscriber by id, including their list memberships.

subscriber_createB

Create a subscriber. list_ids subscribes them to lists. preconfirm skips double opt-in confirmation for double opt-in lists.

subscriber_updateA

Update a subscriber. Only the fields you pass change. Passing list_ids replaces their list memberships; use subscribers_lists_change to add or remove without replacing.

subscribers_lists_changeB

Bulk add, remove, or unsubscribe subscribers from lists without replacing their other memberships. action: add | remove | unsubscribe.

subscriber_deleteA

Permanently delete a subscriber by id, with their list subscriptions and campaign history.

campaigns_searchC

List campaigns. Filter by status (draft, scheduled, running, paused, cancelled, finished) and optional query text.

campaign_getA

One campaign by id, including body, lists, and send statistics.

campaign_createA

Create a campaign as a draft. Nothing is sent until campaign_set_status moves it to running or scheduled.

campaign_updateA

Update a campaign. Only the fields you pass change. Listmonk only allows edits while the campaign is a draft, scheduled, or paused.

campaign_set_statusA

Start, schedule, pause, resume, or cancel a campaign. 'running' SENDS EMAIL to all recipients immediately. 'scheduled' sends at send_at. Confirm the recipient lists and body before using.

campaign_test_sendA

Send a test copy of a campaign to up to 10 email addresses. Sends real mail to those addresses.

campaign_deleteA

Permanently delete a campaign and its view and click statistics. Listmonk rejects deletion of running campaigns.

templates_listA

All campaign and transactional templates with id, name, type, and default flag.

template_getB

One template by id, including its HTML body.

template_createB

Create a template. type is 'campaign' (for campaigns) or 'tx' (for transactional sends). body must contain {{ template "content" . }} for campaign templates.

template_updateB

Update a template. Only the fields you pass change.

template_deleteA

Permanently delete a template. Listmonk refuses to delete the default template or one in use by a campaign.

bounces_searchB

Recorded bounces, newest first. Filter by bounce type (soft, hard, complaint) and campaign.

bounce_getC

One bounce record by id.

bounce_deleteA

Delete a bounce record by id. Does not change the subscriber's status; use subscriber_update to re-enable a subscriber.

tx_sendB

Send one transactional email from a 'tx' template to a subscriber email. data fills template placeholders. Sends real mail.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.3/5.0

Scored across 32 tools

Disambiguation4/5

Tools are organized around distinct resources and actions, so most selections are clear. A few areas could be confused, such as subscriber_update versus subscribers_lists_change and the several email-sending tools, but their descriptions make the intended use distinguishable.

Naming Consistency4/5

Names are consistently snake_case and mostly follow a resource_action pattern, with plural collection names like subscribers_search and singular record names like subscriber_get. Minor deviations exist, including the listmonk_ prefix for system tools and mixed collection verbs such as list versus search.

Tool Count3/5

32 tools is heavy for an MCP surface, even though Listmonk is a broad domain with multiple CRUD-managed resources. Most tools map to real operations, but the count is borderline and could overwhelm agents selecting among many similar resource actions.

Completeness4/5

Core lifecycle coverage is strong across lists, subscribers, campaigns, templates, bounces, and system diagnostics. Minor gaps remain, such as no settings update, subscriber import/export, campaign preview beyond campaign_get, and media management.

Maintenance

ActivityMaintained
ResponsivenessNo issues