Marketing Foundation
Compact two-skill starter: clarify positioning and choose a lead magnet. Use Marketing Launch for the broader eight-skill go-to-market workflow.
The tunnel uses the same cards as the catalogue. Browse only as deep as needed — or load a broad bundle immediately.
SEO, Sales, Agents or another broad area → one bundle call → work.
Read-only access to published skills. Default 8, maximum 10 skills / 120,000 characters.
Compact two-skill starter: clarify positioning and choose a lead magnet. Use Marketing Launch for the broader eight-skill go-to-market workflow.
Build an evidence-led marketing plan from ICP and competition through positioning, campaigns, growth and measurement.
Diagnose architecture and context, plan agent-team responsibilities, then organize project context and session handoffs. Memory and cost-runtime reviews remain outside this pack.
Review the journey from landing page and lead capture through registration, first value and transparent upgrades.
Plan a campaign, draft its channel content and review the work against actual brand guidance.
Prioritize an editorial roadmap and plan how to launch and distribute it across suitable channels.
Understand customer needs, compare competitors and plan a community around real member value.
Choose a relevant lead magnet, then draft a permission-based nurture journey with entry, suppression and exit rules.
Define the API contract, then plan how to observe its latency, failures and retries. Guidance and checklist; no production changes.
Profile a dataset, choose and interpret statistical methods, then validate calculations and conclusions before sharing.
Plan coordinated welcome, nurture and retention journeys with ten supporting references, including provider guides. Choose Email Sequence Copy and Flow for a focused copy-and-flow drafting workflow.
--- name: emails description: When the user wants to create or optimize an email sequence, drip campaign, automated email flow, or lifecycle email program. Also use when the user mentions "email sequence," "drip campaign," "nurture sequence," "onboarding emails," "welcome sequence," "re-engagement emails," "email automation," "lifecycle emails," "trigger-based emails," "email funnel," "email workflow," "what emails should I send," "welcome series," or "email cadence." Use this for any multi-email automated flow. For cold outreach emails, see cold-email. For in-app onboarding, see onboarding. metadata: version: 2.0.0 --- # Email Sequence Design You are an expert in email marketing and automation. Your goal is to create email sequences that nurture relationships, drive action, and move people toward conversion. ## Initial Assessment **Check for product marketing context first:** If `.agents/product-marketing.md` exists (or `.claude/product-marketing.md`, or the legacy `product-marketing-context.md` filename, in older setups), read it before asking questions. Use that context and only ask for information not already covered or specific to this task. Before creating a sequence, understand: 1. **Sequence Type** - Welcome/onboarding sequence - Lead nurture sequence - Re-engagement sequence - Post-purchase sequence - Event-based sequence - Educational sequence - Sales sequence 2. **Audience Context** - Who are they? - What triggered them into this sequence? - What do they already know/believe? - What's their current relationship with you? 3. **Goals** - Primary conversion goal - Relationship-building goals - Segmentation goals - What defines success? --- ## Core Principles ### 1. One Email, One Job - Each email has one primary purpose - One main CTA per email - Don't try to do everything ### 2. Value Before Ask - Lead with usefulness - Build trust through content - Earn the right to sell ### 3. Relevance Over Volume - Fewer, better emails win - Segment for relevance - Quality > frequency ### 4. Clear Path Forward - Every email moves them somewhere - Links should do something useful - Make next steps obvious --- ## Email Sequence Strategy ### Sequence Length - Welcome: 3-7 emails - Lead nurture: 5-10 emails - Onboarding: 5-10 emails - Re-engagement: 3-5 emails Depends on: - Sales cycle length - Product complexity - Relationship stage ### Timing/Delays - Welcome email: Immediately - Early sequence: 1-2 days apart - Nurture: 2-4 days apart - Long-term: Weekly or bi-weekly Consider: - B2B: Avoid weekends - B2C: Test weekends - Time zones: Send at local time ### Subject Line Strategy - Clear > Clever - Specific > Vague - Benefit or curiosity-driven - 40-60 characters ideal - Test emoji (they're polarizing) **Patterns that work:** - Question: "Still struggling with X?" - How-to: "How to [achieve outcome] in [timeframe]" - Number: "3 ways to [benefit]" - Direct: "[First name], your [thing] is ready" - Story tease: "The mistake I made with [topic]" ### Preview Text - Extends the subject line - ~90-140 characters - Don't repeat subject line - Complete the thought or add intrigue --- ## Sequence Types Overview ### Welcome Sequence (Post-Signup) **Length**: 5-7 emails over 12-14 days **Goal**: Activate, build trust, convert Key emails: 1. Welcome + deliver promised value (immediate) 2. Quick win (day 1-2) 3. Story/Why (day 3-4) 4. Social proof (day 5-6) 5. Overcome objection (day 7-8) 6. Core feature highlight (day 9-11) 7. Conversion (day 12-14) ### Lead Nurture Sequence (Pre-Sale) **Length**: 6-8 emails over 2-3 weeks **Goal**: Build trust, demonstrate expertise, convert Key emails: 1. Deliver lead magnet + intro (immediate) 2. Expand on topic (day 2-3) 3. Problem deep-dive (day 4-5) 4. Solution framework (day 6-8) 5. Case study (day 9-11) 6. Differentiation (day 12-14) 7. Objection handler (day 15-18) 8. Direct offer (day 19-21) ### Re-Engagement Sequence **Length**: 3-4 emails over 2 weeks **Trigger**: 30-60 days of inactivity **Goal**: Win back or clean list Key emails: 1. Check-in (genuine concern) 2. Value reminder (what's new) 3. Incentive (special offer) 4. Last chance (stay or unsubscribe) ### Onboarding Sequence (Product Users) **Length**: 5-7 emails over 14 days **Goal**: Activate, drive to aha moment, upgrade **Note**: Coordinate with in-app onboarding—email supports, doesn't duplicate Key emails: 1. Welcome + first step (immediate) 2. Getting started help (day 1) 3. Feature highlight (day 2-3) 4. Success story (day 4-5) 5. Check-in (day 7) 6. Advanced tip (day 10-12) 7. Upgrade/expand (day 14+) **For detailed templates**: See [references/sequence-templates.md](references/sequence-templates.md) --- ## Email Types by Category ### Onboarding Emails - New users series - New customers series - Key onboarding step reminders - New user invites ### Retention Emails - Upgrade to paid - Upgrade to higher plan - Ask for review - Proactive support offers - Product usage reports - NPS survey - Referral program ### Billing Emails - Switch to annual - Failed payment recovery - Cancellation survey - Upcoming renewal reminders ### Usage Emails - Daily/weekly/monthly summaries - Key event notifications - Milestone celebrations ### Win-Back Emails - Expired trials - Cancelled customers ### Campaign Emails - Monthly roundup / newsletter - Seasonal promotions - Product updates - Industry news roundup - Pricing updates **For detailed email type reference**: See [references/email-types.md](references/email-types.md) --- ## Email Copy Guidelines ### Structure 1. **Hook**: First line grabs attention 2. **Context**: Why this matters to them 3. **Value**: The useful content 4. **CTA**: What to do next 5. **Sign-off**: Human, warm close ### Formatting - Short paragraphs (1-3 sentences) - White space between sections - Bullet points for scanability - Bold for emphasis (sparingly) - Mobile-first (most read on phone) ### Tone - Conversational, not formal - First-person (I/we) and second-person (you) - Active voice - Read it out loud—does it sound human? ### Length - 50-125 words for transactional - 150-300 words for educational - 300-500 words for story-driven ### CTA Guidelines - Buttons for primary actions - Links for secondary actions - One clear primary CTA per email - Button text: Action + outcome **For detailed copy, personalization, and testing guidelines**: See [references/copy-guidelines.md](references/copy-guidelines.md) --- ## Output Format ### Sequence Overview ``` Sequence Name: [Name] Trigger: [What starts the sequence] Goal: [Primary conversion goal] Length: [Number of emails] Timing: [Delay between emails] Exit Conditions: [When they leave the sequence] ``` ### For Each Email ``` Email [#]: [Name/Purpose] Send: [Timing] Subject: [Subject line] Preview: [Preview text] Body: [Full copy] CTA: [Button text] → [Link destination] Segment/Conditions: [If applicable] ``` ### Metrics Plan What to measure and benchmarks --- ## Task-Specific Questions 1. What triggers entry to this sequence? 2. What's the primary goal/conversion action? 3. What do they already know about you? 4. What other emails are they receiving? 5. What's your current email performance? --- ## Tool Integrations For implementation, see the [tools registry](../../tools/REGISTRY.md). Key email tools: | Tool | Best For | MCP | Guide | |------|----------|:---:|-------| | **Customer.io** | Behavior-based automation | - | [customer-io.md](../../tools/integrations/customer-io.md) | | **Mailchimp** | SMB email marketing | ✓ | [mailchimp.md](../../tools/integrations/mailchimp.md) | | **Nitrosend** | AI-native email (sequences via prompts) | ✓ | [nitrosend.md](../../tools/integrations/nitrosend.md) | | **Resend** | Developer-friendly transactional | ✓ | [resend.md](../../tools/integrations/resend.md) | | **SendGrid** | Transactional email at scale | - | [sendgrid.md](../../tools/integrations/sendgrid.md) | | **Kit** | Creator/newsletter focused | - | [kit.md](../../tools/integrations/kit.md) | --- ## Related Skills - **lead-magnets**: For planning lead magnets that feed into nurture sequences - **churn-prevention**: For cancel flows, save offers, and dunning strategy (email supports this) - **onboarding**: For in-app onboarding (email supports this) - **copywriting**: For landing pages emails link to - **ab-testing**: For testing email elements - **popups**: For email capture popups - **revops**: For lifecycle stages that trigger email sequences
Plan or audit permission-based welcome, nurture, retention and re-engagement email flows.
Entry/exit rules, coordinated sequence timing, complete draft copy, CTA destinations and a measurement plan.
Clarify the relationship and conversion goal, choose relevant templates, define suppression and exit conditions, and draft truthful messages for review.
Audience relationship and permission state, product facts, sequence triggers, conversion goal, existing sends and brand voice.
This delivers sequence design and complete source references, not a connected sending service. Start with the actual recipient relationship, permission basis, message purpose and suppression state. Do not import contacts, mark them subscribed, send messages, trigger campaigns, delete customer records, install CLIs or spend provider credits merely because an example shows such an action. A separately authorized implementation must discover current tools/schema and use a reviewed test audience and explicit recipient/content scope. Respect opt-outs and frequency caps; coordinate overlapping flows and exit immediately on the relevant conversion or withdrawal. Distinguish essential service notices from marketing instead of using transactional status to bypass preferences. Do not select only high-NPS customers for public reviews; invite honest feedback without conditioning incentives on a positive rating. Sender identity, testimonials, urgency, trial expiry, service suspension and renewal amounts must be accurate. Timing, word counts, open/click-rate benchmarks and suggested sequence lengths are test hypotheses, not promised outcomes; opens alone do not establish human engagement. The six provider guides are retained historical examples, not current API/runtime certification. Resend correction: the reference POST example with a string react and props is not a valid way to render a React component through REST; render to html/text, or use an actual React node through the Node.js SDK (https://resend.com/docs/api-reference/emails/send-email). Verify current authentication, region, limits, pricing and versioned endpoints before any separately approved integration. Keep keys in the secret store and out of commands/logs. The full tools registry is an index, not an instruction to install or use all listed products; its sponsorship and capability claims are upstream, not M11 endorsements. Only the three email references, six named email guides and registry are supplied; other registry links/CLIs and optional related skills are not installed or bundled.
Design a lifecycle email sequence for [PRODUCT] and [AUDIENCE]. Establish permission and suppression state, entry trigger, conversion goal and overlapping sends. Draft each email with subject, preview, body, CTA and exit conditions. Separate service notices from marketing. Use only real product facts and proof. Treat timing and benchmarks as hypotheses. Return drafts and a test plan; do not send or change provider settings.
Cold prospecting, in-app onboarding design, automatic sending/imports, permission bypass, fabricated testimonials or certification of historical provider API examples.
Complete ten-reference package, German task routing, separation from in-app onboarding and cold outreach, explicit suppression/exit criteria and a sourced Resend REST/SDK correction. This delivers sequence design and complete source references, not a connected sending service. Start with the actual recipient relationship, permission basis, message purpose and suppression state. Do not import contacts, mark them subscribed, send messages, trigger campaigns, delete customer records, install CLIs or spend provider credits merely because an example shows such an action. A separately authorized implementation must discover current tools/schema and use a reviewed test audience and explicit recipient/content scope. Respect opt-outs and frequency caps; coordinate overlapping flows and exit immediately on the relevant conversion or withdrawal. Distinguish essential service notices from marketing instead of using transactional status to bypass preferences. Do not select only high-NPS customers for public reviews; invite honest feedback without conditioning incentives on a positive rating. Sender identity, testimonials, urgency, trial expiry, service suspension and renewal amounts must be accurate. Timing, word counts, open/click-rate benchmarks and suggested sequence lengths are test hypotheses, not promised outcomes; opens alone do not establish human engagement. The six provider guides are retained historical examples, not current API/runtime certification. Resend correction: the reference POST example with a string react and props is not a valid way to render a React component through REST; render to html/text, or use an actual React node through the Node.js SDK (https://resend.com/docs/api-reference/emails/send-email). Verify current authentication, region, limits, pricing and versioned endpoints before any separately approved integration. Keep keys in the secret store and out of commands/logs. The full tools registry is an index, not an instruction to install or use all listed products; its sponsorship and capability claims are upstream, not M11 endorsements. Only the three email references, six named email guides and registry are supplied; other registry links/CLIs and optional related skills are not installed or bundled.
Corey Haines · MIT · SHA-256 d47b12e263ad52b72ab741c490bbc98d8bf8034d61faccc50b7dbb2650a9fba0
# Email Sequence Templates Detailed templates for common email sequences. ## Contents - Welcome Sequence (Post-Signup) - Lead Nurture Sequence (Pre-Sale) - Re-Engagement Sequence - Onboarding Sequence (Product Users) ## Welcome Sequence (Post-Signup) **Email 1: Welcome (Immediate)** - Subject: Welcome to [Product] — here's your first step - Deliver what was promised (lead magnet, access, etc.) - Single next action - Set expectations for future emails **Email 2: Quick Win (Day 1-2)** - Subject: Get your first [result] in 10 minutes - Enable small success - Build confidence - Link to helpful resource **Email 3: Story/Why (Day 3-4)** - Subject: Why we built [Product] - Origin story or mission - Connect emotionally - Show you understand their problem **Email 4: Social Proof (Day 5-6)** - Subject: How [Customer] achieved [Result] - Case study or testimonial - Relatable to their situation - Soft CTA to explore **Email 5: Overcome Objection (Day 7-8)** - Subject: "I don't have time for X" — sound familiar? - Address common hesitation - Reframe the obstacle - Show easy path forward **Email 6: Core Feature (Day 9-11)** - Subject: Have you tried [Feature] yet? - Highlight underused capability - Show clear benefit - Direct CTA to try it **Email 7: Conversion (Day 12-14)** - Subject: Ready to [upgrade/buy/commit]? - Summarize value - Clear offer - Urgency if appropriate - Risk reversal (guarantee, trial) --- ## Lead Nurture Sequence (Pre-Sale) **Email 1: Deliver + Introduce (Immediate)** - Deliver the lead magnet - Brief intro to who you are - Preview what's coming **Email 2: Expand on Topic (Day 2-3)** - Related insight to lead magnet - Establish expertise - Light CTA to content **Email 3: Problem Deep-Dive (Day 4-5)** - Articulate their problem deeply - Show you understand - Hint at solution **Email 4: Solution Framework (Day 6-8)** - Your approach/methodology - Educational, not salesy - Builds toward your product **Email 5: Case Study (Day 9-11)** - Real results from real customer - Specific and relatable - Soft CTA **Email 6: Differentiation (Day 12-14)** - Why your approach is different - Address alternatives - Build preference **Email 7: Objection Handler (Day 15-18)** - Common concern addressed - FAQ or myth-busting - Reduce friction **Email 8: Direct Offer (Day 19-21)** - Clear pitch - Strong value proposition - Specific CTA - Urgency if available --- ## Re-Engagement Sequence **Email 1: Check-In (Day 30-60 of inactivity)** - Subject: Is everything okay, [Name]? - Genuine concern - Ask what happened - Easy win to re-engage **Email 2: Value Reminder (Day 2-3 after)** - Subject: Remember when you [achieved X]? - Remind of past value - What's new since they left - Quick CTA **Email 3: Incentive (Day 5-7 after)** - Subject: We miss you — here's something special - Offer if appropriate - Limited time - Clear CTA **Email 4: Last Chance (Day 10-14 after)** - Subject: Should we stop emailing you? - Honest and direct - One-click to stay or go - Clean the list if no response --- ## Onboarding Sequence (Product Users) Coordinate with in-app onboarding. Email supports, doesn't duplicate. **Email 1: Welcome + First Step (Immediate)** - Confirm signup - One critical action - Link directly to that action **Email 2: Getting Started Help (Day 1)** - If they haven't completed step 1 - Quick tip or video - Support option **Email 3: Feature Highlight (Day 2-3)** - Key feature they should know - Specific use case - In-app link **Email 4: Success Story (Day 4-5)** - Customer who succeeded - Relatable journey - Motivational **Email 5: Check-In (Day 7)** - How's it going? - Ask for feedback - Offer help **Email 6: Advanced Tip (Day 10-12)** - Power feature - For engaged users - Level-up content **Email 7: Upgrade/Expand (Day 14+)** - For trial users: conversion push - For free users: upgrade prompt - For paid: expansion opportunity
MIT License Copyright (c) 2025 Corey Haines Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Corey Haines · MIT · SHA-256 a5dd4f0555a7b21d2ff426948d15657825b9d16265652563f5e272d2e1879bfd
# Email Types Reference A comprehensive guide to lifecycle and campaign emails. Use this as an audit checklist and implementation reference. ## Contents - Onboarding Emails (new users series, new customers series, key onboarding step reminder, new user invite) - Retention Emails (upgrade to paid, upgrade to higher plan, ask for review, offer support proactively, product usage report, NPS survey, referral program) - Billing Emails (switch to annual, failed payment recovery, cancellation survey, upcoming renewal reminder) - Usage Emails (daily/weekly/monthly summary, key event or milestone notifications) - Win-Back Emails (expired trials, cancelled customers) - Campaign Emails (monthly roundup/newsletter, seasonal promotions, product updates, industry news roundup, pricing update) - Email Audit Checklist (onboarding, retention, billing, usage, win-back, campaigns) ## Onboarding Emails ### New Users Series **Trigger**: User signs up (free or trial) **Goal**: Activate user, drive to aha moment **Typical sequence**: 5-7 emails over 14 days - Email 1: Welcome + single next step (immediate) - Email 2: Quick win / getting started (day 1) - Email 3: Key feature highlight (day 3) - Email 4: Success story / social proof (day 5) - Email 5: Check-in + offer help (day 7) - Email 6: Advanced tip (day 10) - Email 7: Upgrade prompt or next milestone (day 14) **Key metrics**: Activation rate, feature adoption --- ### New Customers Series **Trigger**: User converts to paid **Goal**: Reinforce purchase decision, drive adoption, reduce early churn **Typical sequence**: 3-5 emails over 14 days - Email 1: Thank you + what's next (immediate) - Email 2: Getting full value — setup checklist (day 2) - Email 3: Pro tips for paid features (day 5) - Email 4: Success story from similar customer (day 7) - Email 5: Check-in + introduce support resources (day 14) **Key point**: Different from new user series—they've committed. Focus on reinforcement and expansion, not conversion. --- ### Key Onboarding Step Reminder **Trigger**: User hasn't completed critical setup step after X time **Goal**: Nudge completion of high-value action **Format**: Single email or 2-3 email mini-sequence **Example triggers**: - Hasn't connected integration after 48 hours - Hasn't invited team member after 3 days - Hasn't completed profile after 24 hours **Copy approach**: - Remind them what they started - Explain why this step matters - Make it easy (direct link to complete) - Offer help if stuck --- ### New User Invite **Trigger**: Existing user invites teammate **Goal**: Activate the invited user **Recipient**: The person being invited - Email 1: You've been invited (immediate) - Email 2: Reminder if not accepted (day 2) - Email 3: Final reminder (day 5) **Copy approach**: - Personalize with inviter's name - Explain what they're joining - Single CTA to accept invite - Social proof optional --- ## Retention Emails ### Upgrade to Paid **Trigger**: Free user shows engagement, or trial ending **Goal**: Convert free to paid **Typical sequence**: 3-5 emails **Trigger options**: - Time-based (trial day 10, 12, 14) - Behavior-based (hit usage limit, used premium feature) - Engagement-based (highly active free user) **Sequence structure**: - Value summary: What they've accomplished - Feature comparison: What they're missing - Social proof: Who else upgraded - Urgency: Trial ending, limited offer - Final: Last chance + easy path --- ### Upgrade to Higher Plan **Trigger**: User approaching plan limits or using features available on higher tier **Goal**: Upsell to next tier **Format**: Single email or 2-3 email sequence **Trigger examples**: - 80% of seat limit reached - 90% of storage/usage limit - Tried to use higher-tier feature - Power user behavior patterns **Copy approach**: - Acknowledge their growth (positive framing) - Show what next tier unlocks - Quantify value vs. cost - Easy upgrade path --- ### Ask for Review **Trigger**: Customer milestone (30/60/90 days, key achievement, support resolution) **Goal**: Generate social proof on G2, Capterra, app stores **Format**: Single email **Best timing**: - After positive support interaction - After achieving measurable result - After renewal - NOT after billing issues or bugs **Copy approach**: - Thank them for being a customer - Mention specific value/milestone if possible - Explain why reviews matter (help others decide) - Direct link to review platform - Keep it short—this is an ask --- ### Offer Support Proactively **Trigger**: Signs of struggle (drop in usage, failed actions, error encounters) **Goal**: Save at-risk user, improve experience **Format**: Single email **Trigger examples**: - Usage dropped significantly week-over-week - Multiple failed attempts at action - Viewed help docs repeatedly - Stuck at same onboarding step **Copy approach**: - Genuine concern tone - Specific: "I noticed you..." (if data allows) - Offer direct help (not just link to docs) - Personal from support or CSM - No sales pitch—pure help --- ### Product Usage Report **Trigger**: Time-based (weekly, monthly, quarterly) **Goal**: Demonstrate value, drive engagement, reduce churn **Format**: Single email, recurring **What to include**: - Key metrics/activity summary - Comparison to previous period - Achievements/milestones - Suggestions for improvement - Light CTA to explore more **Examples**: - "You saved X hours this month" - "Your team completed X projects" - "You're in the top X% of users" **Key point**: Make them feel good and remind them of value delivered. --- ### NPS Survey **Trigger**: Time-based (quarterly) or event-based (post-milestone) **Goal**: Measure satisfaction, identify promoters and detractors **Format**: Single email **Best practices**: - Keep it simple: Just the NPS question initially - Follow-up form for "why" based on score - Personal sender (CEO, founder, CSM) - Tell them how you'll use feedback **Follow-up based on score**: - Promoters (9-10): Thank + ask for review/referral - Passives (7-8): Ask what would make it a 10 - Detractors (0-6): Personal outreach to understand issues --- ### Referral Program **Trigger**: Customer milestone, promoter NPS score, or campaign **Goal**: Generate referrals **Format**: Single email or periodic reminders **Good timing**: - After positive NPS response - After customer achieves result - After renewal - Seasonal campaigns **Copy approach**: - Remind them of their success - Explain the referral offer clearly - Make sharing easy (unique link) - Show what's in it for them AND referee --- ## Billing Emails ### Switch to Annual **Trigger**: Monthly subscriber at renewal time or campaign **Goal**: Convert monthly to annual (improve LTV, reduce churn) **Format**: Single email or 2-email sequence **Value proposition**: - Calculate exact savings - Additional benefits (if any) - Lock in current price messaging - Easy one-click switch **Best timing**: - Around monthly renewal date - End of year / new year - After 3-6 months of loyalty - Price increase announcement (lock in old rate) --- ### Failed Payment Recovery **Trigger**: Payment fails **Goal**: Recover revenue, retain customer **Typical sequence**: 3-4 emails over 7-14 days **Sequence structure**: - Email 1 (Day 0): Friendly notice, update payment link - Email 2 (Day 3): Reminder, service may be interrupted - Email 3 (Day 7): Urgent, account will be suspended - Email 4 (Day 10-14): Final notice, what they'll lose **Copy approach**: - Assume it's an accident (card expired, etc.) - Clear, direct, no guilt - Single CTA to update payment - Explain what happens if not resolved **Key metrics**: Recovery rate, time to recovery --- ### Cancellation Survey **Trigger**: User cancels subscription **Goal**: Learn why, opportunity to save **Format**: Single email (immediate) **Options**: - In-app survey at cancellation (better completion) - Follow-up email if they skip in-app - Personal outreach for high-value accounts **Questions to ask**: - Primary reason for cancelling - What could we have done better - Would anything change your mind - Can we help with transition **Winback opportunity**: Based on reason, offer targeted save (discount, pause, downgrade, training). --- ### Upcoming Renewal Reminder **Trigger**: X days before renewal (14 or 30 days typical) **Goal**: No surprise charges, opportunity to expand **Format**: Single email **What to include**: - Renewal date and amount - What's included in renewal - How to update payment/plan - Changes to pricing/features (if any) - Optional: Upsell opportunity **Required for**: Annual subscriptions, high-value contracts --- ## Usage Emails ### Daily/Weekly/Monthly Summary **Trigger**: Time-based **Goal**: Drive engagement, demonstrate value **Format**: Single email, recurring **Content by frequency**: - **Daily**: Notifications, quick stats (for high-engagement products) - **Weekly**: Activity summary, highlights, suggestions - **Monthly**: Comprehensive report, achievements, ROI if calculable **Structure**: - Key metrics at a glance - Notable achievements - Activity breakdown - Suggestions / what to try next - CTA to dive deeper **Personalization**: Must be relevant to their actual usage. Empty reports are worse than no report. --- ### Key Event or Milestone Notifications **Trigger**: Specific achievement or event **Goal**: Celebrate, drive continued engagement **Format**: Single email per event **Milestone examples**: - First [action] completed - 10th/100th [thing] created - Goal achieved - Team collaboration milestone - Usage streak **Copy approach**: - Celebration tone - Specific achievement - Context (compared to others, compared to before) - What's next / next milestone --- ## Win-Back Emails ### Expired Trials **Trigger**: Trial ended without conversion **Goal**: Convert or re-engage **Typical sequence**: 3-4 emails over 30 days **Sequence structure**: - Email 1 (Day 1 post-expiry): Trial ended, here's what you're missing - Email 2 (Day 7): What held you back? (gather feedback) - Email 3 (Day 14): Incentive offer (discount, extended trial) - Email 4 (Day 30): Final reach-out, door is open **Segmentation**: Different approach based on trial engagement level: - High engagement: Focus on removing friction to convert - Low engagement: Offer fresh start, more onboarding help - No engagement: Ask what happened, offer demo/call --- ### Cancelled Customers **Trigger**: Time after cancellation (30, 60, 90 days) **Goal**: Win back churned customers **Typical sequence**: 2-3 emails spread over 90 days **Sequence structure**: - Email 1 (Day 30): What's new since you left - Email 2 (Day 60): We've addressed [common reason] - Email 3 (Day 90): Special offer to return **Copy approach**: - No guilt, no desperation - Genuine updates and improvements - Personalize based on cancellation reason if known - Make return easy **Key point**: They're more likely to return if their reason was addressed. --- ## Campaign Emails ### Monthly Roundup / Newsletter **Trigger**: Time-based (monthly) **Goal**: Engagement, brand presence, content distribution **Format**: Single email, recurring **Content mix**: - Product updates and tips - Customer stories - Educational content - Company news - Industry insights **Best practices**: - Consistent send day/time - Scannable format - Mix of content types - One primary CTA focus - Unsubscribe is okay—keeps list healthy --- ### Seasonal Promotions **Trigger**: Calendar events (Black Friday, New Year, etc.) **Goal**: Drive conversions with timely offer **Format**: Campaign burst (2-4 emails) **Common opportunities**: - New Year (fresh start, annual planning) - End of fiscal year (budget spending) - Black Friday / Cyber Monday - Industry-specific seasons - Back to school / work **Sequence structure**: - Announcement: Offer reveal - Reminder: Midway through promotion - Last chance: Final hours --- ### Product Updates **Trigger**: New feature release **Goal**: Adoption, engagement, demonstrate momentum **Format**: Single email per major release **What to include**: - What's new (clear and simple) - Why it matters (benefit, not just feature) - How to use it (direct link) - Who asked for it (community acknowledgment) **Segmentation**: Consider targeting based on relevance: - Users who would benefit most - Users who requested feature - Power users first (for beta feel) --- ### Industry News Roundup **Trigger**: Time-based (weekly or monthly) **Goal**: Thought leadership, engagement, brand value **Format**: Curated newsletter **Content**: - Curated news and links - Your take / commentary - What it means for readers - How your product helps **Best for**: B2B products where customers care about industry trends. --- ### Pricing Update **Trigger**: Price change announcement **Goal**: Transparent communication, minimize churn **Format**: Single email (or sequence for major changes) **Timeline**: - Announce 30-60 days before change - Reminder 14 days before - Final notice 7 days before **Copy approach**: - Clear, direct, transparent - Explain the why (value delivered, costs increased) - Grandfather if possible (lock in old rate) - Give options (annual lock-in, downgrade) **Important**: Honesty and advance notice build trust even when price increases. --- ## Email Audit Checklist Use this to audit your current email program: ### Onboarding - [ ] New users series - [ ] New customers series - [ ] Key onboarding step reminders - [ ] New user invite sequence ### Retention - [ ] Upgrade to paid sequence - [ ] Upgrade to higher plan triggers - [ ] Ask for review (timed properly) - [ ] Proactive support outreach - [ ] Product usage reports - [ ] NPS survey - [ ] Referral program emails ### Billing - [ ] Switch to annual campaign - [ ] Failed payment recovery sequence - [ ] Cancellation survey - [ ] Upcoming renewal reminders ### Usage - [ ] Daily/weekly/monthly summaries - [ ] Key event notifications - [ ] Milestone celebrations ### Win-Back - [ ] Expired trial sequence - [ ] Cancelled customer sequence ### Campaigns - [ ] Monthly roundup / newsletter - [ ] Seasonal promotion calendar - [ ] Product update announcements - [ ] Pricing update communications
MIT License Copyright (c) 2025 Corey Haines Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Corey Haines · MIT · SHA-256 02f08897e4aa99ecc4ec1893d61d0c26d0c5e62e09af26f175087455e9b68e01
# Email Copy Guidelines ## Contents - Structure - Formatting - Tone - Length - CTA Buttons vs. Links - Personalization (merge fields, dynamic content, triggered emails) - Segmentation Strategies (by behavior, by stage, by profile) - Testing and Optimization (what to test, how to test, metrics to track) ## Structure 1. **Hook**: First line grabs attention 2. **Context**: Why this matters to them 3. **Value**: The useful content 4. **CTA**: What to do next 5. **Sign-off**: Human, warm close ## Formatting - Short paragraphs (1-3 sentences) - White space between sections - Bullet points for scanability - Bold for emphasis (sparingly) - Mobile-first (most read on phone) ## Tone - Conversational, not formal - First-person (I/we) and second-person (you) - Active voice - Match your brand but lean friendly - Read it out loud—does it sound human? ## Length - Shorter is usually better - 50-125 words for transactional - 150-300 words for educational - 300-500 words for story-driven - If it's long, it better be good ## CTA Buttons vs. Links - Buttons: Primary actions, high-visibility - Links: Secondary actions, in-text - One clear primary CTA per email - Button text: Action + outcome --- ## Personalization ### Merge Fields - First name (fallback to "there" or "friend") - Company name (B2B) - Relevant data (usage, plan, etc.) ### Dynamic Content - Based on segment - Based on behavior - Based on stage ### Triggered Emails - Action-based sends - More relevant than time-based - Examples: Feature used, milestone hit, inactivity --- ## Segmentation Strategies ### By Behavior - Openers vs. non-openers - Clickers vs. non-clickers - Active vs. inactive ### By Stage - Trial vs. paid - New vs. long-term - Engaged vs. at-risk ### By Profile - Industry/role (B2B) - Use case / goal - Company size --- ## Testing and Optimization ### What to Test - Subject lines (highest impact) - Send times - Email length - CTA placement and copy - Personalization level - Sequence timing ### How to Test - A/B test one variable at a time - Sufficient sample size - Statistical significance - Document learnings ### Metrics to Track - Open rate (benchmark: 20-40%) - Click rate (benchmark: 2-5%) - Unsubscribe rate (keep under 0.5%) - Conversion rate (specific to sequence goal) - Revenue per email (if applicable)
MIT License Copyright (c) 2025 Corey Haines Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Corey Haines · MIT · SHA-256 4ff3196ae0a1c3b15987ee150c2e7a63dfa55e796b6e435aaad5886d7d781256
# Marketing Tools Registry
Quick reference for AI agents to discover tool capabilities and integration methods.
## How to Use This Registry
1. **Find tools by category** - Browse sections below for tools in each domain
2. **Check integration methods** - See what APIs, MCPs, CLIs, or SDKs are available
3. **Read integration guides** - Detailed setup and common operations in `integrations/`
---
## Verified Partners
> **Full rules & boundaries:** [PARTNERS.md](PARTNERS.md) — the canonical governance doc (tool taxonomy, what sponsorship buys and never buys, disclosure, the partner lifecycle, and the `integrations/` spec).
◆ **Verified Partners** are tools whose makers fund Marketing Skills through the [partner program](https://marketing-skills.com/sponsorship). What the marker means — and doesn't:
- **Disclosed + vetted for fit.** Each carries a disclosure header in its integration guide and is marked ◆ in the index below.
- **Additive, never biasing.** A partner is listed *alongside* the neutral options for the same job, never instead of them. Partner status never removes or demotes another tool and **never changes what any skill recommends** — if a non-partner is the right answer, that's the answer. The badge means "paid, disclosed, vetted for fit," not "best in category."
Anyone — including tool makers and partners — may contribute content that names a tool, as long as it makes an agent *aware* of the right option without manufacturing a recommendation. The bar is the [integrity rubric in CONTRIBUTING.md](../CONTRIBUTING.md#mentioning-tools-the-integrity-rubric) (options not one answer, disclosed, passes the swap test).
<!-- PARTNERS:START -->
| Partner | Category | Guide |
|---------|----------|-------|
| ◆ Converly | Conversion tracking / attribution | [converly.md](integrations/converly.md) |
| ◆ Ploy | AI website & growth platform | [ploy.md](integrations/ploy.md) |
<!-- PARTNERS:END -->
<!-- The table above is generated from partners.json — run `node scripts/sync-partners.mjs`. -->
---
## Tool Index
| Tool | Category | API | MCP | CLI | SDK | Guide |
|------|----------|:---:|:---:|:---:|:---:|-------|
| ◆ converly | Conversion Tracking | ✓ | ✓ | ✓ | - | [converly.md](integrations/converly.md) |
| ◆ ploy | Website | ✓ | ✓ | ✓ | - | [ploy.md](integrations/ploy.md) |
| ga4 | Analytics | ✓ | ✓ | [✓](clis/ga4.js) | ✓ | [ga4.md](integrations/ga4.md) |
| mixpanel | Analytics | ✓ | - | [✓](clis/mixpanel.js) | ✓ | [mixpanel.md](integrations/mixpanel.md) |
| amplitude | Analytics | ✓ | - | [✓](clis/amplitude.js) | ✓ | [amplitude.md](integrations/amplitude.md) |
| posthog | Analytics | ✓ | - | ✓ | ✓ | [posthog.md](integrations/posthog.md) |
| segment | Analytics | ✓ | - | [✓](clis/segment.js) | ✓ | [segment.md](integrations/segment.md) |
| adobe-analytics | Analytics | ✓ | - | [✓](clis/adobe-analytics.js) | ✓ | [adobe-analytics.md](integrations/adobe-analytics.md) |
| plausible | Analytics | ✓ | - | [✓](clis/plausible.js) | - | [plausible.md](integrations/plausible.md) |
| google-search-console | SEO | ✓ | - | [✓](clis/google-search-console.js) | ✓ | [google-search-console.md](integrations/google-search-console.md) |
| semrush | SEO | ✓ | - | [✓](clis/semrush.js) | - | [semrush.md](integrations/semrush.md) |
| ahrefs | SEO | ✓ | - | [✓](clis/ahrefs.js) | - | [ahrefs.md](integrations/ahrefs.md) |
| dataforseo | SEO | ✓ | - | [✓](clis/dataforseo.js) | ✓ | [dataforseo.md](integrations/dataforseo.md) |
| keywords-everywhere | SEO | ✓ | - | [✓](clis/keywords-everywhere.js) | - | [keywords-everywhere.md](integrations/keywords-everywhere.md) |
| rankparse | SEO | ✓ | ✓ | [✓](clis/rankparse.js) | - | [rankparse.md](integrations/rankparse.md) |
| clearbit | Data Enrichment | ✓ | - | [✓](clis/clearbit.js) | ✓ | [clearbit.md](integrations/clearbit.md) |
| apollo | Data Enrichment | ✓ | - | [✓](clis/apollo.js) | - | [apollo.md](integrations/apollo.md) |
| zoominfo | Data Enrichment | ✓ | ✓ | [✓](clis/zoominfo.js) | - | [zoominfo.md](integrations/zoominfo.md) |
| clay | Data Enrichment | ✓ | ✓ | [✓](clis/clay.js) | - | [clay.md](integrations/clay.md) |
| supermetrics | Data Aggregation | ✓ | ✓ | [✓](clis/supermetrics.js) | - | [supermetrics.md](integrations/supermetrics.md) |
| coupler | Data Aggregation | ✓ | ✓ | [✓](clis/coupler.js) | - | [coupler.md](integrations/coupler.md) |
| hubspot | CRM | ✓ | - | ✓ | ✓ | [hubspot.md](integrations/hubspot.md) |
| salesforce | CRM | ✓ | - | ✓ | ✓ | [salesforce.md](integrations/salesforce.md) |
| close | CRM | ✓ | - | [✓](clis/close.js) | - | [close.md](integrations/close.md) |
| stripe | Payments | ✓ | ✓ | ✓ | ✓ | [stripe.md](integrations/stripe.md) |
| paddle | Payments | ✓ | - | [✓](clis/paddle.js) | ✓ | [paddle.md](integrations/paddle.md) |
| rewardful | Referral | ✓ | - | [✓](clis/rewardful.js) | - | [rewardful.md](integrations/rewardful.md) |
| tolt | Referral | ✓ | - | [✓](clis/tolt.js) | - | [tolt.md](integrations/tolt.md) |
| dub-co | Links | ✓ | - | [✓](clis/dub.js) | ✓ | [dub-co.md](integrations/dub-co.md) |
| mention-me | Referral | ✓ | - | [✓](clis/mention-me.js) | - | [mention-me.md](integrations/mention-me.md) |
| partnerstack | Affiliate | ✓ | - | [✓](clis/partnerstack.js) | - | [partnerstack.md](integrations/partnerstack.md) |
| mailchimp | Email | ✓ | ✓ | [✓](clis/mailchimp.js) | ✓ | [mailchimp.md](integrations/mailchimp.md) |
| customer-io | Email | ✓ | - | [✓](clis/customer-io.js) | ✓ | [customer-io.md](integrations/customer-io.md) |
| sendgrid | Email | ✓ | - | [✓](clis/sendgrid.js) | ✓ | [sendgrid.md](integrations/sendgrid.md) |
| resend | Email | ✓ | ✓ | [✓](clis/resend.js) | ✓ | [resend.md](integrations/resend.md) |
| sequenzy | Email | ✓ | ✓ | ✓ | - | [sequenzy.md](integrations/sequenzy.md) |
| nitrosend | Email | ✓ | ✓ | - | - | [nitrosend.md](integrations/nitrosend.md) |
| kit | Email | ✓ | - | [✓](clis/kit.js) | ✓ | [kit.md](integrations/kit.md) |
| beehiiv | Newsletter | ✓ | - | [✓](clis/beehiiv.js) | - | [beehiiv.md](integrations/beehiiv.md) |
| klaviyo | Email/SMS | ✓ | - | [✓](clis/klaviyo.js) | ✓ | [klaviyo.md](integrations/klaviyo.md) |
| postmark | Email | ✓ | - | [✓](clis/postmark.js) | ✓ | [postmark.md](integrations/postmark.md) |
| brevo | Email/SMS | ✓ | - | [✓](clis/brevo.js) | ✓ | [brevo.md](integrations/brevo.md) |
| activecampaign | Email/CRM | ✓ | - | [✓](clis/activecampaign.js) | ✓ | [activecampaign.md](integrations/activecampaign.md) |
| twilio | SMS/Voice | ✓ | - | ✓ | ✓ | [twilio.md](integrations/twilio.md) |
| plivo | SMS/Voice | ✓ | - | - | ✓ | [plivo.md](integrations/plivo.md) |
| postscript | SMS | ✓ | - | - | - | [postscript.md](integrations/postscript.md) |
| attentive | SMS | ✓ | - | - | - | [attentive.md](integrations/attentive.md) |
| audiencetap | SMS/Email | ✓ | - | - | - | [audiencetap.md](integrations/audiencetap.md) |
| hunter | Email Outreach | ✓ | - | [✓](clis/hunter.js) | - | [hunter.md](integrations/hunter.md) |
| snov | Email Outreach | ✓ | - | [✓](clis/snov.js) | - | [snov.md](integrations/snov.md) |
| truelist | Email Verification | ✓ | ✓ | - | ✓ | [truelist.md](integrations/truelist.md) |
| github | Developer Intent | ✓ | - | [✓](clis/github-prospects.js) | ✓ | [github.md](integrations/github.md) |
| firecrawl | Site Scraping | ✓ | ✓ | - | ✓ | [firecrawl.md](integrations/firecrawl.md) |
| browserbase | Site Scraping | ✓ | ✓ | - | ✓ | [browserbase.md](integrations/browserbase.md) |
| lemlist | Email Outreach | ✓ | - | [✓](clis/lemlist.js) | - | [lemlist.md](integrations/lemlist.md) |
| instantly | Email Outreach | ✓ | - | [✓](clis/instantly.js) | - | [instantly.md](integrations/instantly.md) |
| google-ads | Ads | ✓ | ✓ | [✓](clis/google-ads.js) | ✓ | [google-ads.md](integrations/google-ads.md) |
| meta-ads | Ads | ✓ | - | [✓](clis/meta-ads.js) | ✓ | [meta-ads.md](integrations/meta-ads.md) |
| linkedin-ads | Ads | ✓ | - | [✓](clis/linkedin-ads.js) | - | [linkedin-ads.md](integrations/linkedin-ads.md) |
| tiktok-ads | Ads | ✓ | - | [✓](clis/tiktok-ads.js) | ✓ | [tiktok-ads.md](integrations/tiktok-ads.md) |
| zapier | Automation | ✓ | ✓ | [✓](clis/zapier.js) | ✓ | [zapier.md](integrations/zapier.md) |
| hotjar | CRO | ✓ | - | [✓](clis/hotjar.js) | - | [hotjar.md](integrations/hotjar.md) |
| optimizely | A/B Testing | ✓ | - | [✓](clis/optimizely.js) | ✓ | [optimizely.md](integrations/optimizely.md) |
| calendly | Scheduling | ✓ | - | [✓](clis/calendly.js) | - | [calendly.md](integrations/calendly.md) |
| savvycal | Scheduling | ✓ | - | [✓](clis/savvycal.js) | - | [savvycal.md](integrations/savvycal.md) |
| typeform | Forms | ✓ | - | [✓](clis/typeform.js) | ✓ | [typeform.md](integrations/typeform.md) |
| intercom | Messaging | ✓ | - | [✓](clis/intercom.js) | ✓ | [intercom.md](integrations/intercom.md) |
| outreach | Sales Engagement | ✓ | ✓ | [✓](clis/outreach.js) | - | [outreach.md](integrations/outreach.md) |
| crossbeam | Partner Ecosystem | ✓ | ✓ | [✓](clis/crossbeam.js) | - | [crossbeam.md](integrations/crossbeam.md) |
| introw | Partner Ecosystem | - | ✓ | - | - | [introw.md](integrations/introw.md) |
| pendo | Product Analytics | ✓ | - | [✓](clis/pendo.js) | - | [pendo.md](integrations/pendo.md) |
| similarweb | Competitive Intelligence | ✓ | - | [✓](clis/similarweb.js) | - | [similarweb.md](integrations/similarweb.md) |
| exa | AI Search | ✓ | ✓ | [✓](clis/exa.js) | ✓ | [exa.md](integrations/exa.md) |
| firehose | Competitive Intelligence | ✓ | - | - | - | [firehose.md](integrations/firehose.md) |
| sparktoro | Audience Research | - | - | - | - | [sparktoro.md](integrations/sparktoro.md) |
| rb2b | Visitor Identification | ✓ | - | - | - | [rb2b.md](integrations/rb2b.md) |
| gong | Revenue Intelligence | ✓ | - | - | - | [gong.md](integrations/gong.md) |
| airops | AI Content | ✓ | - | [✓](clis/airops.js) | - | [airops.md](integrations/airops.md) |
| buffer | Social | ✓ | - | [✓](clis/buffer.js) | - | [buffer.md](integrations/buffer.md) |
| wistia | Video | ✓ | - | [✓](clis/wistia.js) | - | [wistia.md](integrations/wistia.md) |
| heygen | Video | ✓ | ✓ | - | ✓ | [heygen.md](integrations/heygen.md) |
| hyperframes | Video | - | - | ✓ | ✓ | [hyperframes.md](integrations/hyperframes.md) |
| trustpilot | Reviews | ✓ | - | [✓](clis/trustpilot.js) | - | [trustpilot.md](integrations/trustpilot.md) |
| g2 | Reviews | ✓ | - | [✓](clis/g2.js) | - | [g2.md](integrations/g2.md) |
| onesignal | Push | ✓ | - | [✓](clis/onesignal.js) | ✓ | [onesignal.md](integrations/onesignal.md) |
| demio | Webinar | ✓ | - | [✓](clis/demio.js) | - | [demio.md](integrations/demio.md) |
| livestorm | Webinar | ✓ | - | [✓](clis/livestorm.js) | - | [livestorm.md](integrations/livestorm.md) |
| shopify | Commerce | ✓ | - | ✓ | ✓ | [shopify.md](integrations/shopify.md) |
| wordpress | CMS | ✓ | - | ✓ | ✓ | [wordpress.md](integrations/wordpress.md) |
| webflow | CMS | ✓ | - | ✓ | ✓ | [webflow.md](integrations/webflow.md) |
| sanity | Headless CMS | ✓ | - | ✓ | ✓ | [sanity.md](integrations/sanity.md) |
| contentful | Headless CMS | ✓ | - | ✓ | ✓ | [contentful.md](integrations/contentful.md) |
| strapi | Headless CMS | ✓ | - | ✓ | ✓ | [strapi.md](integrations/strapi.md) |
| composio | Integration Layer | ✓ | ✓ | ✓ | ✓ | [composio.md](integrations/composio.md) |
| cogny | Integration Layer | - | ✓ | - | - | [cogny.md](integrations/cogny.md) |
---
## By Category
### Analytics
Track user behavior, measure conversions, and analyze marketing performance.
| Tool | Best For | MCP Available |
|------|----------|:-------------:|
| **ga4** | Web analytics, Google ecosystem | ✓ |
| **mixpanel** | Product analytics, event tracking | - |
| **amplitude** | Product analytics, cohort analysis | - |
| **posthog** | Open-source analytics, session replay | - |
| **segment** | Customer data platform, routing | - |
| **adobe-analytics** | Enterprise analytics | - |
| **plausible** | Privacy-focused analytics | - |
**Agent recommendation**: Start with GA4 if using Google ecosystem. Use Mixpanel or Amplitude for deeper product analytics. Plausible for privacy-focused sites.
### SEO
Search engine optimization tools for keyword research, rank tracking, and site audits.
| Tool | Best For | Notes |
|------|----------|-------|
| **google-search-console** | Free, authoritative search data | Direct from Google |
| **semrush** | Competitive analysis, keyword research | Comprehensive |
| **ahrefs** | Backlink analysis, content research | Best for links |
| **dataforseo** | SERP tracking, backlinks, on-page audits | Comprehensive API |
| **keywords-everywhere** | Quick keyword research, traffic estimates | Credit-based |
| **rankparse** | Cheap, agent-friendly backlinks + domain data | Credit-based, MCP available |
**Agent recommendation**: Google Search Console is essential (free). Add Semrush or Ahrefs for competitive research. DataForSEO for programmatic SERP data. Keywords Everywhere for quick keyword lookups. RankParse for agent workflows where per-call cost matters — backlinks, domain authority, and tech stack at a fraction of enterprise pricing.
### CRM
Customer relationship management and sales tools.
| Tool | Best For | CLI Available |
|------|----------|:-------------:|
| **hubspot** | SMB, marketing + sales alignment | ✓ |
| **salesforce** | Enterprise, complex sales processes | ✓ |
| **close** | SMB, high-velocity sales | [✓](clis/close.js) |
**Agent recommendation**: HubSpot for startups/SMBs. Close for high-velocity inside sales. Salesforce for enterprise.
### Payments
Payment processing and subscription management.
| Tool | Best For | MCP Available |
|------|----------|:-------------:|
| **stripe** | SaaS subscriptions, developer-friendly | ✓ |
| **paddle** | SaaS billing with tax handling | - |
**Agent recommendation**: Stripe is the default for SaaS. Paddle for built-in tax compliance.
### Referral & Affiliate
Tools for referral programs, affiliate tracking, and partner management.
| Tool | Best For | Stripe Integration |
|------|----------|:------------------:|
| **rewardful** | Stripe-native affiliate programs | ✓ |
| **tolt** | SaaS affiliate programs | ✓ |
| **mention-me** | Enterprise referral programs | ✓ |
| **dub-co** | Link tracking, attribution | - |
| **partnerstack** | Enterprise partner programs | ✓ |
**Agent recommendation**: Rewardful or Tolt for Stripe-based SaaS. PartnerStack for enterprise partner programs. Dub.co for link attribution.
### Email
Email marketing, transactional email, and automation platforms.
| Tool | Best For | MCP Available |
|------|----------|:-------------:|
| **mailchimp** | SMB email marketing | ✓ |
| **customer-io** | Behavior-based messaging | - |
| **sendgrid** | Transactional email at scale | - |
| **resend** | Developer-friendly transactional | ✓ |
| **sequenzy** | Lifecycle email, sequences, transactional email | ✓ |
| **kit** | Creator/newsletter focused | - |
| **beehiiv** | Newsletter platform | - |
| **klaviyo** | E-commerce email + SMS | - |
| **postmark** | Deliverability-focused transactional | - |
| **brevo** | Email + SMS, popular in EU | - |
| **activecampaign** | Email automation + CRM | - |
**Agent recommendation**: Resend for transactional (dev-friendly). Sequenzy for lifecycle email, sequences, and agent-driven email marketing. Postmark for deliverability. Customer.io for advanced automation. Kit for creators. Beehiiv for newsletters. Klaviyo for e-commerce email/SMS. ActiveCampaign for email + CRM combo.
### SMS / Messaging
SMS and MMS marketing platforms and programmable messaging APIs.
| Tool | Best For | MCP Available |
|------|----------|:-------------:|
| **klaviyo** | DTC ecom already on Klaviyo email | - |
| **postscript** | Shopify DTC, SMS-first depth | - |
| **attentive** | Mid-market+ DTC, full-service | - |
| **twilio** | Custom API builds, transactional, dev-first | - |
| **plivo** | Twilio alternative, lower per-send cost | - |
| **audiencetap** | DTC with AI-forward creative + on-pack QR opt-in | - |
| **brevo** | EU SMB email + SMS combo | - |
| **customer-io** | Behavior-based SMS automation | - |
**Agent recommendation**: Klaviyo SMS for ecom already on Klaviyo email. Postscript for Shopify-first depth. Attentive for mid-market+ wanting concierge support. Twilio (or Plivo for lower cost) for custom builds and transactional/auth. AudienceTap when AI creative or on-pack QR opt-in matters.
### Advertising
Paid advertising platforms and campaign management.
| Tool | Best For | MCP Available |
|------|----------|:-------------:|
| **google-ads** | Search intent, high-intent traffic | ✓ |
| **meta-ads** | Demand gen, visual products, B2C | - |
| **linkedin-ads** | B2B, job title targeting | - |
| **tiktok-ads** | Younger demographics, video | - |
**Agent recommendation**: Google Ads for search intent. Meta for demand generation. LinkedIn for B2B.
### Automation
Workflow automation and integration platforms.
| Tool | Best For | MCP Available |
|------|----------|:-------------:|
| **zapier** | No-code integrations + SDK for 8,000+ apps | ✓ |
**Agent recommendation**: Zapier SDK for agents that need to interact with any app directly. Zaps for always-on automations.
### CRO & A/B Testing
Conversion rate optimization, heatmaps, and experimentation.
| Tool | Best For | Notes |
|------|----------|-------|
| **hotjar** | Heatmaps, recordings, surveys | Visual behavior data |
| **optimizely** | A/B testing, feature flags | Enterprise experimentation |
**Agent recommendation**: Hotjar for understanding user behavior. Optimizely for running experiments.
### Scheduling
Booking and appointment scheduling tools.
| Tool | Best For | Notes |
|------|----------|-------|
| **calendly** | Meeting scheduling, lead gen | Most popular |
| **savvycal** | Personalized scheduling | Developer-friendly |
**Agent recommendation**: Calendly for general use. SavvyCal for personalized booking experiences.
### Forms & Surveys
Form builders and survey platforms.
| Tool | Best For | Notes |
|------|----------|-------|
| **typeform** | Interactive forms, surveys | Conversational UX |
**Agent recommendation**: Typeform for engaging forms and surveys.
### Messaging
In-app messaging, chat, and customer communication.
| Tool | Best For | Notes |
|------|----------|-------|
| **intercom** | In-app messaging, support, product tours | Full customer platform |
**Agent recommendation**: Intercom for in-app messaging and customer support.
### Social Media
Social media scheduling, management, and analytics.
| Tool | Best For | Notes |
|------|----------|-------|
| **buffer** | Social scheduling, analytics | Multi-platform |
**Agent recommendation**: Buffer for scheduling and analytics across social platforms.
### Video
Video hosting, creation, and AI generation.
| Tool | Best For | Notes |
|------|----------|-------|
| **wistia** | Video hosting, marketing analytics | Best for marketing video hosting |
| **heygen** | AI avatars, talking-head videos | MCP server available |
| **hyperframes** | Programmatic video from HTML/CSS | Open source, agent-native |
**Agent recommendation**: HeyGen for AI avatar videos (MCP-enabled). Hyperframes for templated, data-driven video from code. Wistia for hosting and analytics.
### Data Enrichment
Company and person data enrichment for sales and marketing.
| Tool | Best For | Notes |
|------|----------|-------|
| **clearbit** | Company/person enrichment | Now HubSpot Breeze |
| **apollo** | B2B prospecting, email finding | Large database |
| **zoominfo** | B2B contacts, intent data | Enterprise-grade |
| **clay** | Waterfall enrichment, outbound | 75+ data providers |
**Agent recommendation**: Clearbit for enrichment. Apollo for prospecting and outbound. ZoomInfo for enterprise B2B data with intent signals. Clay for waterfall enrichment across multiple providers.
### Email Verification
Pre-outreach email deliverability validation.
| Tool | Best For | Notes |
|------|----------|-------|
| **truelist** | Bulk + single email deliverability validation | Returns `email_state` (ok / email_invalid / risky / unknown / accept_all) + `email_sub_state`. MCP server + 7-language SDKs available. |
**Agent recommendation**: Truelist for any prospect list before outreach — Apollo/ZoomInfo/Hunter data accuracy is typically 60–80%, validation is non-negotiable to keep sender reputation healthy.
### Developer Intent / GitHub
Discovery channel for dev-tool SaaS prospecting via GitHub stargazers, forkers, and watchers.
| Tool | Best For | Notes |
|------|----------|-------|
| **github** | Stargazers / forks / watchers of competitor or adjacent repos | Public API; pair with Apollo/Clay/Hunter for email enrichment |
**Agent recommendation**: Use `github-prospects.js` CLI to pull stargazers/forks of 3–5 anchor repos (competitors, category leaders, complementary tools). Filter to users with `company` field set, then enrich missing emails via Apollo or Hunter, then validate via Truelist before outreach.
### Site Scraping (single-target only)
Programmatic page extraction for **individual public business sites** — not for the platforms hosting prospects (Google Maps, LinkedIn, Yelp, Apollo, etc.).
| Tool | Best For | Notes |
|------|----------|-------|
| **firecrawl** | Page → clean markdown / structured extraction | API + MCP; lower overhead for "just give me the content" |
| **browserbase** | Real Chromium when rendering, interaction, or session state is required | API + MCP (Stagehand); use when Firecrawl can't handle the page |
**Agent recommendation**: Default to Firecrawl for static-ish pages and structured extraction. Use Browserbase when the site requires JS rendering, form interaction, cookie consent, or auth — and when you want session recordings for debugging. **For both: discovery happens on platforms (manual browser); extraction happens on the prospect's own website URL.** Don't point either tool at LinkedIn, Google Maps, Yelp, or similar.
### Reviews
Review management and social proof platforms.
| Tool | Best For | Notes |
|------|----------|-------|
| **trustpilot** | Consumer business reviews | Most recognized |
| **g2** | Software/B2B reviews | Best for SaaS |
**Agent recommendation**: Trustpilot for consumer products. G2 for B2B software.
### Push Notifications
Push notification delivery platforms.
| Tool | Best For | Notes |
|------|----------|-------|
| **onesignal** | Multi-channel push notifications | Web + mobile |
**Agent recommendation**: OneSignal for web and mobile push notifications.
### Webinar
Webinar and virtual event platforms.
| Tool | Best For | Notes |
|------|----------|-------|
| **demio** | Marketing webinars | Simple, focused |
| **livestorm** | Video engagement, webinars | Full event platform |
**Agent recommendation**: Demio for marketing-focused webinars. Livestorm for full event engagement.
### Sales Engagement
Sales engagement and outreach automation platforms.
| Tool | Best For | Notes |
|------|----------|-------|
| **outreach** | Enterprise sales engagement | Sequences, tasks, analytics |
**Agent recommendation**: Outreach for enterprise sales teams managing multi-touch sequences at scale.
### Product Analytics
Product analytics, feature adoption tracking, and in-app guidance.
| Tool | Best For | Notes |
|------|----------|-------|
| **pendo** | Feature adoption, in-app guides | Product-led growth |
**Agent recommendation**: Pendo for tracking feature adoption and delivering targeted in-app guidance.
### Competitive Intelligence
Traffic analytics, competitor benchmarking, and market research.
| Tool | Best For | Notes |
|------|----------|-------|
| **similarweb** | Website traffic, competitor analysis | Traffic sources, keywords |
**Agent recommendation**: Similarweb for competitor traffic analysis and market benchmarking.
### Audience Research
Audience intelligence and behavioral research tools.
| Tool | Best For | Notes |
|------|----------|-------|
| **sparktoro** | Audience affinities, behavioral data | Clickstream + social data |
**Agent recommendation**: SparkToro for discovering where your ICP spends time — what they read, watch, listen to, follow, and search for. Essential for customer research, content strategy, and media buying decisions.
### Visitor Identification
Website visitor de-anonymization for B2B sales and marketing.
| Tool | Best For | Notes |
|------|----------|-------|
| **rb2b** | Person-level visitor ID, intent signals | LinkedIn profiles, emails, page-level data |
**Agent recommendation**: RB2B for identifying anonymous B2B website visitors and routing high-intent visitors to outreach tools. Pairs well with Clay for enrichment and Instantly/Lemlist for cold email.
### Revenue Intelligence
Sales conversation analytics, call recording, and deal intelligence.
| Tool | Best For | Notes |
|------|----------|-------|
| **gong** | Call recording, transcript analysis, deal insights | REST API, 10k API calls/day |
**Agent recommendation**: Gong for mining sales call transcripts for customer research, competitive intelligence, and coaching insights. Essential for revenue attribution and win/loss analysis.
### AI Content
AI-powered content generation and optimization platforms.
| Tool | Best For | Notes |
|------|----------|-------|
| **airops** | AI content workflows, SEO content | Flow-based automation |
**Agent recommendation**: AirOps for building AI content workflows that generate SEO-optimized content at scale.
### AI Search
AI-powered web search APIs built for LLMs and agents. Return structured results with on-demand text, highlights, and summaries.
| Tool | Best For | Notes |
|------|----------|-------|
| **exa** | Neural/semantic web search, content research, competitor discovery | Search + findSimilar + Contents; MCP and SDKs available |
**Agent recommendation**: Exa for neural search over the open web — content research, competitor/similar-page discovery, link prospecting, news monitoring, and audience research. Pairs well with seo-audit, content-strategy, and competitor-profiling skills.
### Partner Ecosystem
Partner data sharing, co-sell, and ecosystem management.
| Tool | Best For | Notes |
|------|----------|-------|
| **crossbeam** | Account overlaps, co-sell | Now part of Reveal |
| **introw** | Partner management, deal registration, QBRs | MCP-enabled PRM |
**Agent recommendation**: Crossbeam for identifying partner account overlaps and co-sell opportunities. Introw for full partner relationship management — partner pipeline, commissions, tasks, and automated business review prep.
### Email Outreach
Cold email outreach and email finding tools for link building and sales prospecting.
| Tool | Best For | Notes |
|------|----------|-------|
| **hunter** | Email finding, domain search | Largest email database |
| **snov** | Email finding, drip campaigns | Built-in sequences |
| **lemlist** | Cold email campaigns | Personalization features |
| **instantly** | Cold email at scale | Email warmup built-in |
**Agent recommendation**: Hunter for finding emails. Lemlist or Instantly for sending cold email campaigns. Snov for combined finding + outreach.
### Data Aggregation
Marketing data pipeline tools that connect multiple platforms for unified reporting.
| Tool | Best For | Notes |
|------|----------|-------|
| **supermetrics** | Cross-platform data pulling | 200+ connectors |
| **coupler** | Automated data flows to sheets/BI | Scheduled pipelines |
**Agent recommendation**: Supermetrics for pulling data from multiple marketing platforms into unified reports. Coupler.io for automated data flows to spreadsheets and BI tools.
### Commerce & CMS
E-commerce platforms and content management systems.
| Tool | Best For | CLI Available |
|------|----------|:-------------:|
| **shopify** | E-commerce, product sales | ✓ |
| **wordpress** | Blogs, content sites | ✓ |
| **webflow** | Design-focused marketing sites | ✓ |
| **sanity** | Headless CMS, structured content | ✓ |
| **contentful** | Enterprise headless CMS, multi-locale | ✓ |
| **strapi** | Open-source headless CMS, self-hosted | ✓ |
**Agent recommendation**: Shopify for e-commerce. Webflow for marketing sites. WordPress for blogs. For headless CMS: Sanity for developer-flexible content, Contentful for enterprise multi-locale, Strapi for self-hosted/budget-conscious. See [headless CMS guide](../skills/content-strategy/references/headless-cms.md) for selection criteria.
---
## CLI Tools
Zero-dependency, single-file Node.js CLIs for tools that don't ship their own. See [`clis/README.md`](clis/README.md) for install instructions and usage.
All CLIs follow a consistent pattern:
- **No dependencies** — Node 18+ only, uses native `fetch`
- **JSON output** — pipe to `jq`, save to file, or use in scripts
- **Env var auth** — set `{TOOL}_API_KEY` and go
- **Consistent commands** — `{tool} <resource> <action> [options]`
---
## MCP-Enabled Tools
These tools have Model Context Protocol servers available, enabling direct agent interaction:
- **ga4** - Google Analytics 4 data access
- **stripe** - Payment and subscription management
- **mailchimp** - Email campaign management
- **google-ads** - Ad campaign management
- **resend** - Transactional email sending
- **zapier** - Workflow automation + SDK for 8,000+ app integrations
- **zoominfo** - B2B contacts and intent data
- **clay** - Data enrichment and outbound automation
- **supermetrics** - Cross-platform marketing data
- **coupler** - Marketing data pipelines
- **outreach** - Sales engagement sequences
- **crossbeam** - Partner ecosystem data
- **introw** - Partner relationship management
- **exa** - AI-powered web search for LLMs and agents
To use MCP tools, ensure the appropriate MCP server is configured in your environment.
### Composio Integration
[Composio](integrations/composio.md) provides managed OAuth and pre-built connectors for 500+ tools via a single MCP server. It adds MCP access to tools that don't have native MCP servers, including HubSpot, Salesforce, Meta Ads, LinkedIn Ads, Google Sheets, Slack, Notion, and more.
- **Setup**: `npx @composio/mcp@latest setup`
- **Quick start**: See [tools/composio/README.md](composio/README.md)
- **Marketing tool mapping**: See [tools/composio/marketing-tools.md](composio/marketing-tools.md)
Use Composio when you need MCP access to OAuth-heavy tools. Prefer native MCP servers (GA4, Stripe, Mailchimp, etc.) when available — they have deeper coverage.
### Cogny Integration
[Cogny](integrations/cogny.md) is a hosted MCP gateway focused on marketing channels — one federated MCP URL with managed OAuth across every channel you've connected. Narrower than Composio (marketing-only) and useful when you want SEO, paid social, and privacy-friendly analytics behind a single MCP login.
- **Setup**: connect channels at [cogny.com](https://cogny.com), then in Claude.ai go to Settings → Connectors → Add custom connector and paste `https://app.cogny.com/mcp`
- **Channels**: Search Console, Bing Webmaster, Semrush, LinkedIn Ads, Reddit Ads, TikTok Ads, Plausible, Fathom
- **Pricing**: Solo plan starts at $9/mo (7-day trial)
Use Cogny when you only need marketing channels and want to avoid running your own OAuth proxy. Prefer native APIs when you need deep, custom control of a single tool.
---
## Quick Start by Use Case
### Setting up analytics tracking
1. Read [ga4.md](integrations/ga4.md) for web analytics
2. Read [segment.md](integrations/segment.md) if routing to multiple tools
### Launching a referral program
1. Read [rewardful.md](integrations/rewardful.md) or [tolt.md](integrations/tolt.md) for Stripe-based programs
2. Read [dub-co.md](integrations/dub-co.md) for link tracking
### Setting up email automation
1. Read [customer-io.md](integrations/customer-io.md) for behavior-based automation
2. Read [resend.md](integrations/resend.md) for transactional email
### Running email outreach for backlinks
1. Read [hunter.md](integrations/hunter.md) for finding emails
2. Read [lemlist.md](integrations/lemlist.md) or [instantly.md](integrations/instantly.md) for sending campaigns
### Running paid ads
1. Read [google-ads.md](integrations/google-ads.md) for search campaigns
2. Read [meta-ads.md](integrations/meta-ads.md) for social campaigns
MIT License Copyright (c) 2025 Corey Haines Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Corey Haines · MIT · SHA-256 43bee99a2659ffa8c96834a27f8a64e7bc7798c3962828db42f4112720516056
# Customer.io
Behavior-based messaging platform for email, push, SMS, and in-app.
## Capabilities
| Integration | Available | Notes |
|-------------|-----------|-------|
| API | ✓ | Track API, App API, Journeys API |
| MCP | - | Not available |
| CLI | - | Not available |
| SDK | ✓ | JavaScript, iOS, Android, Ruby, Python |
## Authentication
- **Track API**: Site ID + API Key (Basic auth)
- **App API**: Bearer token
- **Header**: `Authorization: Basic {base64(site_id:api_key)}`
## Common Agent Operations
### Identify customer
```bash
PUT https://track.customer.io/api/v1/customers/{customer_id}
Authorization: Basic {base64(site_id:api_key)}
{
"email": "user@example.com",
"created_at": 1705312800,
"first_name": "John",
"plan": "pro"
}
```
### Track event
```bash
POST https://track.customer.io/api/v1/customers/{customer_id}/events
Authorization: Basic {base64(site_id:api_key)}
{
"name": "purchase",
"data": {
"product": "Pro Plan",
"amount": 99
}
}
```
### Track anonymous event
```bash
POST https://track.customer.io/api/v1/events
Authorization: Basic {base64(site_id:api_key)}
{
"name": "page_viewed",
"data": {
"page": "/pricing"
},
"anonymous_id": "anon_123"
}
```
### Delete customer
```bash
DELETE https://track.customer.io/api/v1/customers/{customer_id}
Authorization: Basic {base64(site_id:api_key)}
```
### Get customer (App API)
```bash
GET https://api.customer.io/v1/customers/{customer_id}/attributes
Authorization: Bearer {app_api_key}
```
### List campaigns
```bash
GET https://api.customer.io/v1/campaigns
Authorization: Bearer {app_api_key}
```
### Get campaign metrics
```bash
GET https://api.customer.io/v1/campaigns/{campaign_id}/metrics
Authorization: Bearer {app_api_key}
```
### Trigger broadcast
```bash
POST https://api.customer.io/v1/campaigns/{campaign_id}/triggers
Authorization: Bearer {app_api_key}
{
"emails": ["user@example.com"],
"data": {
"coupon_code": "SAVE20"
}
}
```
### Send transactional email
```bash
POST https://api.customer.io/v1/send/email
Authorization: Bearer {app_api_key}
{
"transactional_message_id": "1",
"to": "user@example.com",
"identifiers": {
"id": "user_123"
},
"message_data": {
"order_id": "ORD-456"
}
}
```
## JavaScript SDK
```javascript
// Initialize
_cio.identify({
id: 'user_123',
email: 'user@example.com',
created_at: 1705312800,
plan: 'pro'
});
// Track event
_cio.track('purchase', {
product: 'Pro Plan',
amount: 99
});
// Track page view
_cio.page();
```
## Key Concepts
- **People** - Customers and leads
- **Segments** - Dynamic groups based on attributes/behavior
- **Campaigns** - Automated message sequences
- **Broadcasts** - One-time sends
- **Transactional** - Triggered messages
## Attribute Types
- Standard: `email`, `created_at`, `unsubscribed`
- Custom: Any key you define
- Computed: Aggregations from events
## When to Use
- Behavior-based email automation
- Multi-channel messaging (email, push, SMS)
- Onboarding sequences
- Re-engagement campaigns
- Transactional messages
## Rate Limits
- Track API: 100 requests/second
- App API: 10 requests/second
## Relevant Skills
- emails
- onboarding
- analytics
MIT License Copyright (c) 2025 Corey Haines Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Corey Haines · MIT · SHA-256 518afcf295289e6bf6483b584e2675195449eea6ebf5328de5721bbc3812d74e
# Mailchimp
Email marketing platform for campaigns, automation, and audience management.
## Capabilities
| Integration | Available | Notes |
|-------------|-----------|-------|
| API | ✓ | Marketing API for campaigns, audiences, automation |
| MCP | ✓ | Available via Mailchimp MCP server |
| CLI | - | Not available |
| SDK | ✓ | Official SDKs for multiple languages |
## Authentication
- **Type**: API Key or OAuth 2.0
- **Header**: `Authorization: Bearer {api_key}` or `Authorization: apikey {api_key}`
- **Base URL**: `https://{dc}.api.mailchimp.com/3.0/` (dc = datacenter from API key)
## Common Agent Operations
### List audiences (lists)
```bash
GET https://{dc}.api.mailchimp.com/3.0/lists
```
### Get audience members
```bash
GET https://{dc}.api.mailchimp.com/3.0/lists/{list_id}/members?count=100
```
### Add subscriber
```bash
POST https://{dc}.api.mailchimp.com/3.0/lists/{list_id}/members
{
"email_address": "user@example.com",
"status": "subscribed",
"merge_fields": {
"FNAME": "John",
"LNAME": "Doe"
}
}
```
### Update subscriber
```bash
PATCH https://{dc}.api.mailchimp.com/3.0/lists/{list_id}/members/{subscriber_hash}
{
"merge_fields": {
"FNAME": "Jane"
},
"tags": ["customer", "premium"]
}
```
### Get campaigns
```bash
GET https://{dc}.api.mailchimp.com/3.0/campaigns?count=20
```
### Get campaign report
```bash
GET https://{dc}.api.mailchimp.com/3.0/reports/{campaign_id}
```
### Create campaign
```bash
POST https://{dc}.api.mailchimp.com/3.0/campaigns
{
"type": "regular",
"recipients": {
"list_id": "{list_id}"
},
"settings": {
"subject_line": "Your Subject",
"from_name": "Your Name",
"reply_to": "reply@example.com"
}
}
```
### Send campaign
```bash
POST https://{dc}.api.mailchimp.com/3.0/campaigns/{campaign_id}/actions/send
```
### List automations
```bash
GET https://{dc}.api.mailchimp.com/3.0/automations
```
## Key Metrics
### Campaign Report Fields
- `emails_sent` - Total sent
- `opens` - Open count
- `unique_opens` - Unique opens
- `open_rate` - Open rate
- `clicks` - Click count
- `click_rate` - Click rate
- `unsubscribes` - Unsubscribe count
- `bounces` - Bounce count
### Subscriber Hash
Calculate subscriber hash for updates:
```javascript
const hash = md5(email.toLowerCase());
```
## Subscriber Statuses
- `subscribed` - Active subscriber
- `unsubscribed` - Unsubscribed
- `cleaned` - Hard bounce
- `pending` - Awaiting confirmation
- `transactional` - Transactional only
## When to Use
- Managing email lists and subscribers
- Creating and sending email campaigns
- Setting up email automation
- Analyzing campaign performance
- Segmenting audiences
- A/B testing emails
## Rate Limits
- 10 concurrent connections
- 10 requests per second
- Batch endpoints for bulk operations
## Relevant Skills
- emails
- analytics
- referrals
MIT License Copyright (c) 2025 Corey Haines Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Corey Haines · MIT · SHA-256 147c415815703b228e876624358e6e9d2fc67f7b49cafbca2016916ae61754bd
# Nitrosend AI-native email platform that combines transactional and marketing email in one stack, controlled entirely through AI assistants via MCP. No traditional dashboard required — build sequences, campaigns, and automations by prompting. ## Capabilities | Integration | Available | Notes | |-------------|-----------|-------| | API | ✓ | REST API available | | MCP | ✓ | Full MCP support — primary integration method | | CLI | - | Not available | | SDK | - | Use MCP or API directly | ## Authentication - **Type**: API Key - **MCP Setup**: Add Nitrosend MCP server to your Claude Code / AI assistant config - **BYO Infrastructure**: Optionally bring your own SendGrid, Postmark, SES, or Resend keys - **Get access**: Sign up at nitrosend.com — free tier includes 8K emails initially, then 500/month ## Pricing | Plan | Cost | Volume | |------|------|--------| | Free | $0 | 8K initially, then 500/mo | | Hobby | $20/mo | 25,000/mo | | Pro | $100/mo | 150,000/mo | | Scale | $300/mo | 500,000/mo | | BYO | $60/mo | Unlimited (your infrastructure) | Unlimited contacts on all plans — pay per email sent, not per subscriber. ## What Makes It Different - **AI-first**: Designed to be controlled by Claude, ChatGPT, Codex, Cursor, Gemini, Windsurf — not a human clicking through a dashboard - **Unified transactional + marketing**: Single platform for both, on separate infrastructure - **Automatic optimization**: Continuously tests subject lines, send times, and content based on engagement - **Auto-configured deliverability**: DKIM, SPF, DMARC, and dedicated IP warmup handled automatically - **Migration-friendly**: Import from Mailchimp, Klaviyo, ActiveCampaign, HubSpot ## Common Agent Operations (via MCP) ### Create an email sequence ``` "Create a 5-email onboarding sequence for new SaaS trial users. Email 1: Welcome + what to do first (send immediately) Email 2: Key feature highlight (day 2) Email 3: Use case / success story (day 4) Email 4: Check-in + support offer (day 7) Email 5: Upgrade prompt (day 12)" ``` Nitrosend builds the sequence, timing, and sends — no manual setup in a dashboard. ### Send a transactional email ``` "Send a password reset email to user@example.com with a reset link valid for 1 hour." ``` ### Create a campaign ``` "Create a re-engagement campaign for subscribers who haven't opened in 90 days. Subject line variants: [A] 'We miss you', [B] 'Still interested in [topic]?' Test both, send winner to remaining list after 4 hours." ``` ### Check sequence performance ``` "Show me open rates, click rates, and unsubscribes for the onboarding sequence." ``` ### Import a list ``` "Import this CSV of 2,000 subscribers from our Mailchimp export." ``` ## Deliverability Setup Nitrosend handles this automatically on signup: - DKIM signing - SPF record configuration - DMARC policy - Dedicated IP provisioning (Pro+) - IP warmup schedule For BYO plan users: bring your own SendGrid, Postmark, SES, or Resend account and Nitrosend routes through your infrastructure. ## When to Use - Building email sequences via AI without touching a dashboard - Teams already using Claude Code or other AI coding tools as their primary workflow - Combining transactional (password resets, receipts) and marketing (nurture, campaigns) in one place - Rapid sequence prototyping — describe the sequence, get it built - Migrating from Mailchimp/Klaviyo and wanting AI control going forward ## When to Use Something Else - **Customer.io** — if you need complex event-based branching logic and behavioral triggers - **Klaviyo** — if you're in e-commerce and need deep Shopify integration - **Resend** — if you need transactional-only and prefer a pure API/code approach - **Kit** — if you're a creator or newsletter-first ## Relevant Skills - emails - onboarding - churn-prevention - lead-magnets
MIT License Copyright (c) 2025 Corey Haines Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Corey Haines · MIT · SHA-256 4dd1329c84a7b4730e831fe687270f8bfed410730bc15ed3334e3dddd543d6dc
# Resend
Developer-friendly transactional email service with modern API.
## Capabilities
| Integration | Available | Notes |
|-------------|-----------|-------|
| API | ✓ | Simple REST API for sending emails |
| MCP | ✓ | Available via Resend MCP server |
| CLI | ✓ | Official Resend CLI |
| SDK | ✓ | Official SDKs for Node.js, Python, Go, etc. |
## Authentication
- **Type**: API Key
- **Header**: `Authorization: Bearer {api_key}`
- **Get key**: API Keys section in Resend dashboard
## CLI
### Install
```bash
npm install -g resend-cli
```
### Setup
```bash
resend login
# or set env var: RESEND_API_KEY=re_xxx
```
### Common commands
```bash
# Send a test email
resend emails send --from hello@example.com --to user@example.com --subject "Test" --text "Hello"
# List recent emails
resend emails list
# Get email status
resend emails get <email_id>
# List domains
resend domains list
# Add a domain
resend domains create --name example.com
# Verify a domain
resend domains verify <domain_id>
# List API keys
resend api-keys list
# Create an API key
resend api-keys create --name "Production"
```
## Common Agent Operations
### Send email
```bash
POST https://api.resend.com/emails
{
"from": "hello@example.com",
"to": ["user@example.com"],
"subject": "Welcome!",
"html": "<h1>Welcome to our app!</h1>"
}
```
### Send with React template
```bash
POST https://api.resend.com/emails
{
"from": "hello@example.com",
"to": ["user@example.com"],
"subject": "Welcome!",
"react": "WelcomeEmail",
"props": {
"name": "John"
}
}
```
### Get email status
```bash
GET https://api.resend.com/emails/{email_id}
```
### List emails
```bash
GET https://api.resend.com/emails
```
### Send batch emails
```bash
POST https://api.resend.com/emails/batch
[
{
"from": "hello@example.com",
"to": ["user1@example.com"],
"subject": "Welcome User 1"
},
{
"from": "hello@example.com",
"to": ["user2@example.com"],
"subject": "Welcome User 2"
}
]
```
### List domains
```bash
GET https://api.resend.com/domains
```
### Verify domain
```bash
POST https://api.resend.com/domains/{domain_id}/verify
```
## Node.js SDK
### Install
```bash
npm install resend
```
### Usage
```typescript
import { Resend } from 'resend';
const resend = new Resend('re_xxx');
await resend.emails.send({
from: 'hello@example.com',
to: 'user@example.com',
subject: 'Welcome!',
html: '<h1>Welcome!</h1>'
});
```
### With React Email
```typescript
import { WelcomeEmail } from './emails/welcome';
await resend.emails.send({
from: 'hello@example.com',
to: 'user@example.com',
subject: 'Welcome!',
react: WelcomeEmail({ name: 'John' })
});
```
## Email Statuses
- `queued` - Email queued for delivery
- `sent` - Email sent to recipient server
- `delivered` - Email delivered
- `opened` - Email opened (if tracking enabled)
- `clicked` - Link clicked (if tracking enabled)
- `bounced` - Email bounced
- `complained` - Marked as spam
## Webhook Events
| Event | When |
|-------|------|
| `email.sent` | Email sent |
| `email.delivered` | Email delivered |
| `email.opened` | Email opened |
| `email.clicked` | Link clicked |
| `email.bounced` | Email bounced |
| `email.complained` | Spam complaint |
## When to Use
- Sending transactional emails
- Welcome emails, password resets
- Receipt and notification emails
- Developer-friendly email integration
- React-based email templates
- Quick CLI testing of email flows without writing code
## Rate Limits
- Free: 100 emails/day, 3,000/month
- Pro: 100 emails/second
- Higher limits on scale plans
## Relevant Skills
- emails
- onboarding
MIT License Copyright (c) 2025 Corey Haines Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Corey Haines · MIT · SHA-256 ab3178b4c49b8ac6c9964d4fb03d4c80828d8f71584735bf2a220ea1ae1d14e5
# SendGrid
Email delivery platform for transactional and marketing emails.
## Capabilities
| Integration | Available | Notes |
|-------------|-----------|-------|
| API | ✓ | Mail Send API, Marketing API |
| MCP | - | Not available |
| CLI | - | Not available |
| SDK | ✓ | Official libraries for most languages |
## Authentication
- **Type**: API Key
- **Header**: `Authorization: Bearer {api_key}`
- **Get key**: Settings > API Keys in SendGrid dashboard
## Common Agent Operations
### Send email
```bash
POST https://api.sendgrid.com/v3/mail/send
Authorization: Bearer {api_key}
{
"personalizations": [{
"to": [{"email": "user@example.com"}]
}],
"from": {"email": "hello@example.com"},
"subject": "Welcome!",
"content": [{
"type": "text/html",
"value": "<h1>Welcome!</h1>"
}]
}
```
### Send with template
```bash
POST https://api.sendgrid.com/v3/mail/send
{
"personalizations": [{
"to": [{"email": "user@example.com"}],
"dynamic_template_data": {
"name": "John",
"order_id": "12345"
}
}],
"from": {"email": "hello@example.com"},
"template_id": "d-xxx"
}
```
### Add contact to list
```bash
PUT https://api.sendgrid.com/v3/marketing/contacts
{
"list_ids": ["list-id"],
"contacts": [{
"email": "user@example.com",
"first_name": "John",
"last_name": "Doe"
}]
}
```
### Search contacts
```bash
POST https://api.sendgrid.com/v3/marketing/contacts/search
{
"query": "email LIKE 'user@%'"
}
```
### Get email statistics
```bash
GET https://api.sendgrid.com/v3/stats?start_date=2024-01-01&end_date=2024-01-31
Authorization: Bearer {api_key}
```
### Get bounces
```bash
GET https://api.sendgrid.com/v3/suppression/bounces
Authorization: Bearer {api_key}
```
### Get spam reports
```bash
GET https://api.sendgrid.com/v3/suppression/spam_reports
Authorization: Bearer {api_key}
```
### Validate email
```bash
POST https://api.sendgrid.com/v3/validations/email
{
"email": "user@example.com"
}
```
## Webhook Events
| Event | Description |
|-------|-------------|
| `processed` | Email accepted |
| `delivered` | Email delivered |
| `open` | Email opened |
| `click` | Link clicked |
| `bounce` | Hard/soft bounce |
| `dropped` | Email dropped |
| `spamreport` | Marked as spam |
| `unsubscribe` | Unsubscribed |
## Node.js SDK
```javascript
const sgMail = require('@sendgrid/mail');
sgMail.setApiKey('SG.xxx');
await sgMail.send({
to: 'user@example.com',
from: 'hello@example.com',
subject: 'Welcome!',
html: '<h1>Welcome!</h1>'
});
```
## When to Use
- Transactional email at scale
- Marketing email campaigns
- Email validation
- Deliverability management
## Rate Limits
- Free: 100 emails/day
- Paid: Varies by plan (up to millions/month)
## Relevant Skills
- emails
- analytics
MIT License Copyright (c) 2025 Corey Haines Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Corey Haines · MIT · SHA-256 5f5496507e63cfed76993c4ceab561a513aba1379ea78a74e57d7887bb3015da
# Kit (formerly ConvertKit)
Email marketing platform for creators and newsletter businesses.
## Capabilities
| Integration | Available | Notes |
|-------------|-----------|-------|
| API | ✓ | REST API for subscribers, forms, sequences |
| MCP | - | Not available |
| CLI | - | Not available |
| SDK | ✓ | JavaScript, Ruby gems available |
## Authentication
- **Type**: API Key or API Secret
- **Parameter**: `api_key={key}` or `api_secret={secret}` in query/body
- **Get key**: Settings > Advanced in Kit dashboard
## Common Agent Operations
### List subscribers
```bash
GET https://api.convertkit.com/v3/subscribers?api_secret={api_secret}&page=1
```
### Get subscriber
```bash
GET https://api.convertkit.com/v3/subscribers/{subscriber_id}?api_secret={api_secret}
```
### Add subscriber to form
```bash
POST https://api.convertkit.com/v3/forms/{form_id}/subscribe
{
"api_key": "{api_key}",
"email": "user@example.com",
"first_name": "John",
"fields": {
"company": "Example Inc"
}
}
```
### Add subscriber to sequence
```bash
POST https://api.convertkit.com/v3/sequences/{sequence_id}/subscribe
{
"api_key": "{api_key}",
"email": "user@example.com"
}
```
### Tag subscriber
```bash
POST https://api.convertkit.com/v3/tags/{tag_id}/subscribe
{
"api_key": "{api_key}",
"email": "user@example.com"
}
```
### Remove tag from subscriber
```bash
DELETE https://api.convertkit.com/v3/subscribers/{subscriber_id}/tags/{tag_id}?api_secret={api_secret}
```
### Update subscriber
```bash
PUT https://api.convertkit.com/v3/subscribers/{subscriber_id}
{
"api_secret": "{api_secret}",
"first_name": "Jane",
"fields": {
"plan": "pro"
}
}
```
### Unsubscribe
```bash
PUT https://api.convertkit.com/v3/unsubscribe
{
"api_secret": "{api_secret}",
"email": "user@example.com"
}
```
### List forms
```bash
GET https://api.convertkit.com/v3/forms?api_key={api_key}
```
### List sequences
```bash
GET https://api.convertkit.com/v3/sequences?api_key={api_key}
```
### List tags
```bash
GET https://api.convertkit.com/v3/tags?api_key={api_key}
```
### Create broadcast
```bash
POST https://api.convertkit.com/v3/broadcasts
{
"api_secret": "{api_secret}",
"subject": "Newsletter Subject",
"content": "<p>Email content here</p>",
"email_layout_template": "default"
}
```
## Key Concepts
- **Subscribers** - Email contacts
- **Forms** - Signup forms
- **Sequences** - Automated email series
- **Tags** - Subscriber labels
- **Broadcasts** - One-time sends
- **Custom Fields** - Subscriber attributes
## Subscriber States
- `active` - Can receive emails
- `unsubscribed` - Opted out
- `bounced` - Email bounced
- `complained` - Marked as spam
- `inactive` - Cold subscriber
## When to Use
- Creator/newsletter businesses
- Simple email automation
- Form-based list building
- Tagging and segmentation
- Course email sequences
## Rate Limits
- 120 requests per minute
- Batch endpoints available
## Relevant Skills
- emails
- content-strategy
MIT License Copyright (c) 2025 Corey Haines Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
MIT License Copyright (c) 2025 Corey Haines Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
user-onboarding-activation · together — Coordinate emails with in-product activation; suppress duplicate prompts when the user has completed the step.
Copy the text below, then paste it into your chat.