Skip to main content

Klaviyo MCP Server community fork adding template listing, campaign cloning, template cloning, and campaign-message template traversal tools

Project description

klaviyo-mcp-server-extended

A community fork of Klaviyo's official klaviyo-mcp-server (v0.4.1) adding six tools that the official server does not expose.

This is an unofficial, unsupported patch. It layers the missing tools onto the official code without changing any existing behavior — everything that works in the official server continues to work identically here.

Why this exists

As of April 2026, the official Klaviyo MCP server (v0.4.1) does not expose tools to:

  1. List email templates (only fetch by known ID)
  2. Traverse from a campaign or campaign message to its associated template
  3. Clone a campaign or a template

These gaps make it impossible to clone an email campaign end-to-end through the MCP server, even though the underlying REST API fully supports all of these operations and the bundled klaviyo-api Python SDK already has the methods wired up. This fork simply exposes them.

Tools added

All six tools are thin wrappers around methods that already exist in the official klaviyo-api SDK. They follow the same style conventions as the surrounding code (@mcp_tool, get_klaviyo_client(), clean_result()).

Tool Writes? REST endpoint
klaviyo_get_email_templates no GET /api/templates
klaviyo_clone_email_template yes POST /api/template-clone
klaviyo_get_messages_for_campaign no GET /api/campaigns/{id}/campaign-messages
klaviyo_get_template_for_campaign_message no GET /api/campaign-messages/{id}/template
klaviyo_get_template_id_for_campaign_message no GET /api/campaign-messages/{id}/relationships/template
klaviyo_clone_campaign yes POST /api/campaign-clone

All other tools from the official server are preserved unchanged.

Authentication

Identical to the official local server: private API key via the PRIVATE_API_KEY environment variable. This fork does not provide OAuth or any remote hosting — OAuth is Klaviyo's own gateway at https://mcp.klaviyo.com/mcp and is not part of the open-source package.

The private API key needs the same scopes as the official server. For the new tools specifically:

  • templates:read — for get_email_templates, get_template_for_campaign_message
  • templates:write — for clone_email_template
  • campaigns:read — for get_messages_for_campaign, get_template_id_for_campaign_message
  • campaigns:write — for clone_campaign

The full recommended scope set from Klaviyo's docs already covers all of these.

Installation

From PyPI

After this package is published, install and run the fork with:

uvx --from klaviyo-mcp-server-extended klaviyo-mcp-server

Pin the release version for reproducible MCP client configs:

uvx --from klaviyo-mcp-server-extended==0.4.2 klaviyo-mcp-server

From a local wheel

Build the wheel first:

uv build

Then run the generated wheel from dist/:

uvx --from ./dist/klaviyo_mcp_server_extended-0.4.2-py3-none-any.whl klaviyo-mcp-server

MCP client config (Claude Desktop, Cursor, VS Code)

Replace the official uvx klaviyo-mcp-server@latest invocation with uvx --from klaviyo-mcp-server-extended==0.4.2 klaviyo-mcp-server. For example, in Claude Desktop:

{
  "mcpServers": {
    "klaviyo": {
      "command": "uvx",
      "args": [
        "--from",
        "klaviyo-mcp-server-extended==0.4.2",
        "klaviyo-mcp-server"
      ],
      "env": {
        "PRIVATE_API_KEY": "YOUR_API_KEY",
        "READ_ONLY": "false",
        "ALLOW_USER_GENERATED_CONTENT": "false"
      }
    }
  }
}

The entry point command (klaviyo-mcp-server) is unchanged, so no downstream agent code needs to change — only the --from package is new.

Verifying the fork loaded

After restarting your MCP client, your tool list should include the six new tools alongside the existing ones. In Claude Desktop, click Search and tools → klaviyo to confirm.

Upstream relationship

  • Based on klaviyo-mcp-server==0.4.1 from PyPI (published 2026-03-05)
  • Version 0.4.2, based on the upstream 0.4.1 base plus the six added tools
  • No changes to existing tools, models, utilities, prompts, or scripts
  • The added tools are the only diff

If Klaviyo eventually ships equivalent tools upstream, uninstall this fork and revert to the official klaviyo-mcp-server@latest.

License

MIT, matching the upstream package. See LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

klaviyo_mcp_server_extended-0.4.2.tar.gz (28.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

klaviyo_mcp_server_extended-0.4.2-py3-none-any.whl (44.4 kB view details)

Uploaded Python 3

File details

Details for the file klaviyo_mcp_server_extended-0.4.2.tar.gz.

File metadata

File hashes

Hashes for klaviyo_mcp_server_extended-0.4.2.tar.gz
Algorithm Hash digest
SHA256 be370cde65628f65df32c1d302b4d68ef60728c1333b47fe04429a1b4d313f64
MD5 b066d3a6a34a9f699b7e592632a09117
BLAKE2b-256 90b404bb56cdb5a46cfb661b0c5849a66357ee4691feb8e7be75b4048d1b4c0d

See more details on using hashes here.

Provenance

The following attestation bundles were made for klaviyo_mcp_server_extended-0.4.2.tar.gz:

Publisher: publish.yaml on MissionSquad/mcp-klaviyo

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file klaviyo_mcp_server_extended-0.4.2-py3-none-any.whl.

File metadata

File hashes

Hashes for klaviyo_mcp_server_extended-0.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 fcb8b668eecf59f76586a14ccbbd77bb0d69e32f60307791d97c4f97f13597d5
MD5 4a15aa1d6dd1ac7ec01bf652f500d371
BLAKE2b-256 01232269afbd01fb0aae8f458b3e7eaf4a0d0cf83bf16733f637683d73576cc8

See more details on using hashes here.

Provenance

The following attestation bundles were made for klaviyo_mcp_server_extended-0.4.2-py3-none-any.whl:

Publisher: publish.yaml on MissionSquad/mcp-klaviyo

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page