Agent skill · marketing growth · aiskillstore
klaviyo-automation
Automate Klaviyo tasks via Rube MCP (Composio): manage email/SMS campaigns, inspect campaign messages, track tags, and monitor send jobs. Always search tools first for current schemas.
Why this skill is useful
Provides specific commands and workflows for automating Klaviyo marketing tasks that the AI wouldn't generate on its own.
What it needs
Requires klaviyo account access. About 4k tokens when loaded. Last updated 2026-08-07. 405 stars on the source repository.
What this skill does
Klaviyo Automation via Rube MCP Automate Klaviyo email and SMS marketing operations through Composio's Klaviyo toolkit via Rube MCP. Prerequisites Rube MCP must be connected (RUBESEARCHTOOLS available) Active Klaviyo connection via RUBEMANAGECONNECTIONS with toolkit klaviyo Always call RUBESEARCHTOOLS first to get current tool schemas Setup Get Rube MCP: Add https://rube.app/mcp as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works. 1. Verify Rube MCP is available by confirming RUBESEARCHTOOLS responds 2. Call RUBEMANAGECONNECTIONS with toolkit klaviyo 3. If connection is not ACTIVE, follow the returned auth link to complete Klaviyo authentication 4. Confirm connection status shows ACTIVE before running any workflows Core Workflows 1. List and Filter Campaigns When to use: User wants to browse, search, or filter marketing campaigns Tool sequence: 1. KLAVIYOGETCAMPAIGNS - List campaigns with channel and status filters [Required] Key parameters: channel: Campaign channel - 'email' or 'sms' (required by Klaviyo API) filter: Additional filter string (e.g., equals(status,"draft")) sort: Sort field with optional - prefix for descending (e.g., '-createdat', 'name') pagecursor: Pagination cursor for next page includearchived: Include archived campaigns (default: false) Pitfalls: channel is required; omitting it can produce incomplete or unexpected results Pagination is mandatory for full coverage; a single call returns only one page (default ~10) Follow pagecursor until exhausted to get all campaigns Status filtering via filter (e.g., equals(status,"draft")) can return mixed statuses; always validate data[].attributes.status client-side Status strings are case-sensitive and can be compound (e.g., 'Cancelled: No Recipients') Response shape is nested: response.data.data with status at data[].attributes.status 2. Get Campaign Details When to use: User wants detailed information about a specific campaign Tool sequence: 1. …
How to use it
Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:
@skills aiskillstore/klaviyo-automation