# Constant Contact MCP

> Manage your entire email marketing life cycle from one place. Create campaigns, segment audiences, update contacts, and pull detailed analytics—all by talking to your agent. This MCP connects directly to Constant Contact, letting you automate tasks without jumping between tabs or logging into a separate dashboard.

## Overview
- **Category:** marketing-automation
- **Price:** Free
- **Tags:** email-campaigns, contact-management, marketing-analytics, audience-segmentation, newsletter-automation

## Description

You can manage your audience and run full marketing cycles just by telling your AI client what you need. Need to send out an announcement? You’ll create, schedule, and test the email campaign directly through conversation. It handles everything from building the initial list segments to pulling reports on engagement rates like opens, clicks, and bounces. Want to clean up your database? Add or delete contacts in bulk, or update their profile details if they change jobs. If you're using Vinkius for other services, this MCP gives you a single point of access to run all your marketing automation tasks without context switching. You can even pull raw data exports and get summaries on user privileges so you know exactly who has access to the account.

## Tools

### add_list_memberships
Adds multiple contacts to specific lists in bulk.

### add_tags_to_contacts
Applies custom tags to a group of existing contacts.

### bulk_delete_contacts
Removes many contacts from the system at once.

### create_campaign
Builds and prepares a brand new email marketing campaign.

### create_contact
Adds one new individual contact to the platform.

### create_list
Sets up an entirely new contact list for organization.

### create_segment
Defines a specific, filtered group of contacts within a larger list.

### create_tag
Establishes a new category or tag for contacts.

### delete_contact
Marks an existing contact as soft-deleted.

### delete_list
Permanently removes an entire contact list.

### delete_segment
Removes a previously created segment definition.

### export_contacts
Downloads the data for all contacts into a CSV file.

### get_account_summary
Retrieves a high-level overview of the entire Constant Contact account status.

### get_activity_status
Checks if a bulk action, like an export, has finished running.

### get_campaign_bounces
Pulls a report listing contacts that bounced from the last campaign.

### get_campaign_clicks
Retrieves data on which links people clicked inside an email campaign.

### get_campaign_details
Get details for a specific email campaign

### get_campaign_opens
Gathers a report showing how many people opened the latest campaign.

### get_campaign_optouts
Lists contacts who unsubscribed from receiving emails after a campaign.

### get_campaign_sends
Provides tracking data showing how many copies of the campaign were sent out.

### get_contact_activity_details
Shows a detailed log of actions taken by one specific contact.

### get_contact_activity_summary
Gives a quick summary view of all recent activity for a single contact.

### get_contact_engagement_rates
Calculates the open and click rates specifically for one individual contact over time.

### get_contacts
Retrieves a filtered or full list of all contacts currently in the system.

### get_email_campaign_summaries
Fetches summary reports for multiple past email campaigns.

### get_lists
Lists all existing contact groups defined in the account.

### get_segments
Retrieves a list of all predefined audience segments.

### get_tags
Shows every tag currently available for use on contacts.

### get_user_privileges
Checks what permissions the current access token has within the account.

### import_contacts_json
Uploads a large batch of contacts using structured JSON data.

### schedule_campaign
Sets a specific date and time for an email campaign to automatically send out.

### sign_up_form
Creates or updates contact records when someone signs up through a web form.

### test_campaign
Sends one sample copy of the campaign to check for formatting issues before sending widely.

### update_account_summary
Modifies general information about the Constant Contact account settings.

### update_campaign_activity
Adjusts a campaign's target lists or segments before it goes out.

### update_contact
Makes changes to the information of an existing contact record.

### update_list
Modifies the settings or contents of a specific contact list.

## Prompt Examples

**Prompt:** 
```
List all my contact lists in Constant Contact.
```

**Response:** 
```
I've retrieved your lists. You have 3 active lists: 'Newsletter Subscribers' (ID: 101), 'VIP Customers' (ID: 102), and 'Event Leads' (ID: 103).
```

**Prompt:** 
```
Show me the engagement rates for my contacts.
```

**Response:** 
```
Fetching engagement data... Your overall engagement rates show a 24% open rate and a 3.5% click-through rate across your recent campaigns.
```

**Prompt:** 
```
Get the details for campaign ID 12345.
```

**Response:** 
```
Inspecting campaign 12345... This is the 'Summer Sale' email. It was sent to 1,200 recipients and is currently in 'Scheduled' status for tomorrow morning.
```

## Capabilities

### Build and Schedule Campaigns
Draft, test, and schedule new email campaigns for your audience.

### Manage Contacts and Lists
Create, update, delete contacts; segment audiences; or add bulk tags to specific lists.

### Analyze Campaign Performance
Retrieve detailed reports on open rates, click-throughs, bounces, and overall campaign sends.

### Maintain Account Data
Get a summary of the account's health or check user privileges to manage access.

## Use Cases

### The Quarterly Report
A marketing director needs a report showing which campaigns performed best and why. They ask their agent to run `get_email_campaign_summaries` and then follow up with specific calls like `get_contact_engagement_rates`. The agent pulls the data, giving the director the full story in one chat window.

### Cleaning Up Leads
A sales team identifies that several leads were added incorrectly. Instead of logging into Constant Contact and manually changing fields, they ask their agent to `get_contacts`, filter the list, and then run `update_contact` on the specific records.

### Preparing for a Major Launch
The team has gathered new leads from a form. They don't want them in the main mailing list yet. They use `sign_up_form` to capture the data, then run `create_segment` and `add_list_memberships` to put them into a specific 'Pre-Launch VIP' group.

### Database Migration
The company is moving old contact lists. Instead of downloading CSVs, they use `export_contacts` and then feed the clean list back into the system via `import_contacts_json`, ensuring no data gets lost.

## Benefits

- Stop switching tabs to check stats. You can get all performance data—like opens and clicks using `get_campaign_opens` and `get_campaign_clicks`—without leaving your chat interface.
- Keep your audience clean and ready for launch. Use tools like `add_tags_to_contacts` or `create_segment` to quickly isolate the exact group you need, rather than mailing everyone.
- Automate cleanup tasks. Don't manually delete records; run `bulk_delete_contacts` or use `update_contact` to handle database hygiene instantly.
- Build and deploy on demand. You can write a campaign using `create_campaign`, then immediately test it with `test_campaign`, all in one chat session.
- Know your limits. Use `get_user_privileges` to verify who has access before running any critical updates, keeping the account secure.

## How It Works

The bottom line is, it lets you run complex marketing workflows using only natural language prompts.

1. Subscribe to this MCP and enter your Constant Contact Access Token.
2. Tell your agent what you need—for example, 'Create a campaign for Q3 sales.'
3. Your AI client sends the request; the MCP executes the action in Constant Contact and returns the status or data.

## Frequently Asked Questions

**How do I bulk add contacts using the `add_list_memberships` tool?**
You simply provide the list names and the contact IDs (or criteria) to your agent. It handles adding large groups of people at once, saving you hours of manual work.

**Can I check my account's permissions using `get_user_privileges`?**
Yes. Running `get_user_privileges` shows exactly what the current access token can do—whether it can delete lists, update users, or just read data.

**What's the difference between `create_segment` and creating a list?**
A segment is a filtered view of an existing list. You use `create_segment` to define rules (e.g., 'all contacts over 35 who opened last month'), while `create_list` makes a permanent, empty container.

**How do I get the performance data for specific individuals? Use `get_contact_engagement_rates`.**
You provide the contact's unique ID to your agent. It pulls their history and shows you their open rate and click rate, helping you identify who is most engaged.

**How do I check if my email campaign is ready to send using the `test_campaign` tool?**
You can run a test email immediately. This sends a draft copy of your campaign to you so you can review formatting, links, and overall appearance without notifying any subscribers.

**What is the best way to get a complete, downloadable record of my subscriber base using `export_contacts`?**
The tool exports your entire contact database into a CSV file. This lets you take the raw data outside the platform for deep analysis in external tools like Excel or Google Sheets.

**If I suspect my campaign is having delivery problems, how do I check bounces using the `get_campaign_bounces` tool?**
This report tracks all bounced emails for a specific campaign. Reviewing these details helps you identify bad email addresses or technical issues with your sending domain.

**I need to correct a subscriber's email or name; how do I use the `update_contact` tool?**
You can update individual contact details, like correcting an email address or updating demographic information. This ensures your mailing list always uses accurate user data.

**Can I see how many people opened my last email campaign?**
Yes! Use the `get_campaign_opens` tool with your campaign ID. Your agent will return the list of contacts who opened the email along with timestamps.

**How do I check what permissions my current API token has?**
Simply ask the agent to run the `get_user_privileges` action. It will list all authorized scopes and privileges associated with your connected account.

**Can I get a high-level overview of my account details?**
Yes, the `get_account_summary` tool provides organization names, contact information, and other core account metadata in a single query.