Connect Klaviyo to Cursor
Connect your Klaviyo data to Cursor with the Windsor.ai connector, so the dashboards and scripts Cursor builds use your real campaign, flow, list and segment data.
Ask Cursor for a campaign revenue canvas, a flow audit script or a deliverability report built on your own Campaign report Revenue Per Recipient, Flow Revenue per recipient and Campaign report Spam Complaint Rate fields.
Forget CSVs. Stop copy/paste. Connect in minutes. No code required.
Build email and SMS reports on live Klaviyo data in your Cursor project
Cursor works inside your project, so what it builds from your Klaviyo data stays with you as files, scripts and canvases you can rerun. Key use cases:
Rank campaigns by what they earn
Cursor can build a canvas of Campaign report Revenue Per Recipient by Campaign Name, with Campaign report Open Rate and Campaign report Click Rate beside it, split by Campaign Channel.
Audit every flow message
Ask for a script that lists each Flow Message Name in your live flows with Flow Open rate, Flow Click rate and Flow Conversion value, and flags the messages below the flow’s own average.
Watch deliverability over time
Campaign report Bounce Rate, Campaign report Spam Complaint Rate and Campaign report Unsubscribe Rate in one weekly chart show when a send hurt your list.
Size your lists and segments
Cursor can write a report of Segment Profile Count and List Profile Count that you keep in the project and rerun to see which audiences grow.
Using Windsor.ai to connect data from Klaviyo to Cursor
Without Windsor.ai, Cursor builds on placeholder numbers or on CSV exports you paste into the project. Windsor MCP gives Cursor live Klaviyo data with the real field names, so the dashboards and scripts it writes match your account.
Connect in minutes, then ask Cursor to build something with your Klaviyo data.
Available actions
Create Flow Create a Klaviyo flow from a full definition: a trigger plus a graph of action steps (time-delay, send-email, send-sms, conditional-split) wired together by temporary_id. The trigger is either a metric event or being added to a list. entry_action_id is the temporary_id of the first step; each step links to the next by temporary_id (conditional-split uses next_if_true / next_if_false). Email steps reference an existing Klaviyo template by template_id (email content is not authored here); SMS steps carry an inline body. The flow and its messages are created in draft status so nothing sends until you activate it with update_flow_status. Note Klaviyo rate-limits flow creation to about 100 per day.
Create a Klaviyo flow from a full definition: a trigger plus a graph of action steps (time-delay, send-email, send-sms, conditional-split) wired together by temporary_id. The trigger is either a metric event or being added to a list. entry_action_id is the temporary_id of the first step; each step links to the next by temporary_id (conditional-split uses next_if_true / next_if_false). Email steps reference an existing Klaviyo template by template_id (email content is not authored here); SMS steps carry an inline body. The flow and its messages are created in draft status so nothing sends until you activate it with update_flow_status. Note Klaviyo rate-limits flow creation to about 100 per day.
Update Flow Status Set a Klaviyo flow's status. 'draft' turns it off (no one enters, nothing sends), 'manual' lets profiles enter but holds messages for manual review, and 'live' sends automatically. The status change applies to the whole flow and all of its actions. The flow id can be obtained from a Klaviyo flows query, the flow's URL in Klaviyo, or the create_flow result.
Set a Klaviyo flow's status. 'draft' turns it off (no one enters, nothing sends), 'manual' lets profiles enter but holds messages for manual review, and 'live' sends automatically. The status change applies to the whole flow and all of its actions. The flow id can be obtained from a Klaviyo flows query, the flow's URL in Klaviyo, or the create_flow result.
How to connect Klaviyo to Cursor with Windsor.ai
Explore a step-by-step guide to add Windsor MCP to Cursor and start building on your Klaviyo data.
Add Windsor MCP in Cursor
Open Settings in Cursor Desktop and go to Tools & Integrations → New MCP Server. When mcp.json opens, add Windsor:
{
"mcpServers": {
"windsor": {
"url": "https://mcp.windsor.ai/"
}
}
}
Authenticate with Windsor.ai
Save mcp.json. Windsor appears in your MCP list and asks you to authenticate. Click Authenticate and sign in to Windsor.ai in the browser.
Ask Cursor to build on your Klaviyo data
Open a chat in your project and ask about your Klaviyo data.
FAQs
What Klaviyo data can Cursor use?
Windsor.ai gives Cursor access to 219 Klaviyo fields. These are some of the groups; the Klaviyo field reference lists all of them:
- Campaigns: Campaign Name, Campaign Channel, Campaign report Recipients, Campaign report Open Rate, Campaign report Click Rate, Campaign report Conversion Value, Campaign report Revenue Per Recipient, Campaign report Unsubscribe Rate.
- Flows: Flow Name, Flow Status, Flow Trigger Type, Flow Message Name, Flow Recipients, Flow Open rate, Flow Click rate, Flow Conversion value, Flow Revenue per recipient.
- Lists and segments: List Name, List Profile Count, Segment Name, Segment Profile Count.
- Deliverability: Campaign report Bounce Rate, Campaign report Spam Complaint Rate, Flow Bounce rate, Flow Spam complaint rate.
What prompts can I use to build with Klaviyo data in Cursor?
Cursor works best when you ask it to build something with a clear output. Each of these names the fields to use and the file or canvas you want back:
-
Pull Campaign Name, Campaign Channel, Campaign report Recipients, Campaign report Open Rate, Campaign report Click Rate and Campaign report Revenue Per Recipient for campaigns sent in the last 90 days. Build a canvas that ranks campaigns by revenue per recipient, separates email from SMS, and marks campaigns sent to fewer than 1,000 recipients as low volume.
-
Pull Flow Name, Flow Status, Flow Message Name, Flow Recipients, Flow Open rate, Flow Click rate and Flow Conversion value for live flows over the last 90 days. Write a Python script that compares each message with its own flow's average and writes flow_audit.csv with the messages that fall more than 30% below it.
-
Pull Campaign report Bounce Rate, Campaign report Spam Complaint Rate and Campaign report Unsubscribe Rate by Campaign Name and send week for this quarter. Build a line chart per rate with the account average marked, and list the campaigns that pushed any rate above it.
-
Pull Flow Name, Flow Trigger Type, Flow Recipients and Flow Revenue per recipient for every live flow. Write a script that ranks flows by revenue per recipient, groups them by trigger type, and saves the table to flows.csv.
-
Pull Segment Name, Segment Profile Count, List Name and List Profile Count. Write a report as audiences.md that lists segments and lists by size, and keep the script in the project so I can rerun it next month and compare the counts.
Can Cursor turn Klaviyo data into dashboards I can share?
Yes. Cursor can render a dashboard, analysis or report as a canvas next to the chat, and it saves the canvas so you can reopen and rerun it later with fresh data. On paid Cursor plans you can publish a canvas to a read-only share link that members of your Cursor team can open. See the Cursor canvas documentation for the current plan requirements.
Can I combine Klaviyo data with other sources in Cursor?
Yes. Windsor.ai supports 350+ data sources, so you can connect Klaviyo alongside tools such as Shopify, Google Ads or Facebook Ads and ask Cursor to work with them together. For example, ask Cursor to join Klaviyo Campaign report Conversion Value by week with Shopify Order Total Price for the same weeks, and write a script that shows email revenue as a share of store revenue.
How do I add Windsor MCP to Cursor?
Open Settings in Cursor Desktop, go to Tools & Integrations → New MCP Server, and add Windsor to mcp.json:
{
"mcpServers": {
"windsor": {
"url": "https://mcp.windsor.ai/"
}
}
}
Save the file, click Authenticate next to Windsor in your MCP list, and sign in to Windsor.ai in the browser.
Do I need to code to connect Klaviyo to Cursor?
No. The connection takes no code: connect Klaviyo in Windsor.ai, add Windsor to Cursor’s MCP settings, and sign in. After that you describe what you want in plain language, and Cursor writes and runs the code. You can read and edit everything it produces.
How much does it cost to integrate Klaviyo with Cursor using Windsor.ai?
The free forever plan covers 1 data source, so connecting Klaviyo on its own costs nothing and needs no credit card. Combining Klaviyo with other sources, such as Shopify, needs a paid plan: $19/month for 3 sources or $99/month for 7. Cursor is billed separately by Cursor. See the pricing page.
Do you have helpful links to get started with Klaviyo and Cursor?
Yes. These are the resources to start with for the Klaviyo to Cursor integration:
Tired of manual Klaviyo data exports? Try Windsor.ai today to build on live data

