mailchimp-mcp-server
Mailchimp via MCP: draft, test, and send campaigns; manage audiences and subscribers; pull reports.
The record the registry holds
There is no address to call. This one is a package you install and run yourself, wherever your assistant runs.
{
"server": {
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"name": "io.github.cyanheads/mailchimp-mcp-server",
"description": "Mailchimp via MCP: draft, test, and send campaigns; manage audiences and subscribers; pull reports.",
"repository": {
"url": "https://github.com/cyanheads/mailchimp-mcp-server",
"source": "github"
},
"version": "0.3.8",
"packages": [
{
"registryType": "npm",
"registryBaseUrl": "https://registry.npmjs.org",
"identifier": "@cyanheads/mailchimp-mcp-server",
"version": "0.3.8",
"runtimeHint": "bun",
"transport": {
"type": "stdio"
},
"packageArguments": [
{
"value": "run",
"type": "positional"
},
{
"value": "start:stdio",
"type": "positional"
}
],
"environmentVariables": [
{
"description": "Mailchimp Marketing API key, including the '-dc' data-center suffix (e.g. 'abc...-us22'). Generate at Mailchimp → Account → Extras → API keys.",
"isRequired": true,
"format": "string",
"name": "MAILCHIMP_API_KEY"
},
{
"description": "Override the API base URL (for mock servers or testing). Defaults to 'https://{dc}.api.mailchimp.com/3.0' derived from the API key suffix.",
"format": "string",
"name": "MAILCHIMP_BASE_URL"
},
{
"description": "Per-request timeout in milliseconds.",
"format": "string",
"default": "60000",
"name": "MAILCHIMP_TIMEOUT_MS"
},
{
"description": "Max retry attempts for transient upstream failures (0-10).",
"format": "string",
"default": "3",
"name": "MAILCHIMP_MAX_RETRIES"
},
{
"description": "Max in-flight upstream requests per workflow tool (1-10).",
"format": "string",
"default": "4",
"name": "MAILCHIMP_CONCURRENCY_LIMIT"
},
{
"description": "Absolute path to a local assets directory. When set (Node-only — Workers ignored), enables the `mailchimp_assets` tool and auto-uploads `@assets/<path>` references in campaign HTML to Mailchimp File Manager at send time. Cache at <dir>/.mailchimp-cache.json.",
"format": "string",
"name": "MAILCHIMP_ASSETS_DIR"
},
{
"description": "Absolute path to a local templates directory. When set (Node-only), enables the `mailchimp_local_templates` tool and support for `content.localTemplate` on campaign tools. Templates are `.eta` files with optional `<name>.meta.yaml` sidecars. Canonical write path on free-tier Mailchimp.",
"format": "string",
"name": "MAILCHIMP_TEMPLATES_DIR"
},
{
"description": "Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').",
"format": "string",
"default": "info",
"name": "MCP_LOG_LEVEL"
}
]
},
{
"registryType": "npm",
"registryBaseUrl": "https://registry.npmjs.org",
"identifier": "@cyanheads/mailchimp-mcp-server",
"version": "0.3.8",
"runtimeHint": "bun",
"transport": {
"type": "streamable-http",
"url": "http://localhost:3010/mcp"
},
"packageArguments": [
{
"value": "run",
"type": "positional"
},
{
"value": "start:http",
"type": "positional"
}
],
"environmentVariables": [
{
"description": "Mailchimp Marketing API key, including the '-dc' data-center suffix (e.g. 'abc...-us22'). Generate at Mailchimp → Account → Extras → API keys.",
"isRequired": true,
"format": "string",
"name": "MAILCHIMP_API_KEY"
},
{
"description": "Override the API base URL (for mock servers or testing). Defaults to 'https://{dc}.api.mailchimp.com/3.0' derived from the API key suffix.",
"format": "string",
"name": "MAILCHIMP_BASE_URL"
},
{
"description": "Per-request timeout in milliseconds.",
"format": "string",
"default": "60000",
"name": "MAILCHIMP_TIMEOUT_MS"
},
{
"description": "Max retry attempts for transient upstream failures (0-10).",
"format": "string",
"default": "3",
"name": "MAILCHIMP_MAX_RETRIES"
},
{
"description": "Max in-flight upstream requests per workflow tool (1-10).",
"format": "string",
"default": "4",
"name": "MAILCHIMP_CONCURRENCY_LIMIT"
},
{
"description": "The hostname for the HTTP server.",
"format": "string",
"default": "127.0.0.1",
"name": "MCP_HTTP_HOST"
},
{
"description": "The port to run the HTTP server on.",
"format": "string",
"default": "3010",
"name": "MCP_HTTP_PORT"
},
{
"description": "The endpoint path for the MCP server.",
"format": "string",
"default": "/mcp",
"name": "MCP_HTTP_ENDPOINT_PATH"
},
{
"description": "Authentication mode to use: 'none', 'jwt', or 'oauth'.",
"format": "string",
"default": "none",
"name": "MCP_AUTH_MODE"
},
{
"description": "Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').",
"format": "string",
"default": "info",
"name": "MCP_LOG_LEVEL"
}
]
}
]
},
"_meta": {
"io.modelcontextprotocol.registry/official": {
"status": "active",
"statusChangedAt": "2026-08-22T19:54:24.345864Z",
"publishedAt": "2026-08-22T19:54:24.345864Z",
"updatedAt": "2026-08-22T19:54:24.345864Z",
"isLatest": true
}
}
}
Draft an Agent Plugin from this
An MCP server is raw capability: some tools, wired to something. An Agent Plugin is the packaging that says what job it does, what it leaves behind and where it stops. The prompt below carries this record and asks for the packaging; your own assistant writes it, and nothing here is sent anywhere.
MCP server
These are the publisher's own words, filed by them with the official MCP registry and mirrored here. This catalog did not read them from the publisher and has not run, called or installed anything.
The publisher's own address
https://github.com/cyanheads/mailchimp-mcp-server
The address the publisher put in their registry record, printed as they wrote it. Nobody here has opened it.