constant_contact_ add_ contacts_ to_ listsAdd Contacts to Lists.
Import a trade-show list and tag it, draft a campaign and send yourself a test, schedule it for Tuesday morning, and compare opens and clicks across last month's sends.
PopMCPConstant Contact
Every Constant Contact V3 call for your own account, from contacts and campaigns to bulk activities and reports, plus the account events PopMCP can watch.
122 tools in the full catalog: 67 read and 55 write. 50 load by default, and the rest are found with tool search.
constant_contact_ add_ contacts_ to_ listsAdd Contacts to Lists.
constant_contact_ add_ tags_ to_ contactsAdd Tags to Contacts.
constant_contact_ export_ contactsExport Contacts to a File.
constant_contact_ export_ contacts_ csvExport contacts as CSV text in one call: starts the export (everyone, or only list_ids, or one segment_id), waits up to 40 seconds for it and returns the file (cut at 150,000 characters).
constant_contact_ get_ activityGet an Activity Status.
constant_contact_ import_ contacts_ jsonImport Contacts using a JSON Payload.
constant_contact_ list_ activitiesGet Activity Status Collection.
constant_contact_ remove_ contacts_ from_ listsRemove Contacts from Lists.
constant_contact_ remove_ tags_ from_ contactsRemove Tags from Contacts.
constant_contact_ wait_ for_ activityWait for a bulk activity (an import, export, list or tag change, or bulk delete) to finish, checking every 3 seconds for up to timeout_seconds (default 30, at most 50).
constant_contact_ campaign_ reportEmail campaign performance in one table: for each campaign its name, sent date, sends, delivered, opens and open rate, clicks and click rate, bounces and opt-outs, plus totals over all of them.
constant_contact_ get_ email_ campaign_ statsGet an Email Campaign Stats Report.
constant_contact_ get_ email_ clicks_ reportGet an Email Clicks Report.
constant_contact_ get_ email_ opens_ reportGet an Email Opens Report.
constant_contact_ list_ email_ campaign_ summariesGet an Email Campaigns Summary Report.
constant_contact_ create_ email_ campaignCreate a New Email Campaign.
constant_contact_ create_ email_ draftCreate an email campaign draft ready to review in one call: creates it from a subject and HTML (open tracking added; the sender defaults to the account's confirmed address and organization name), sets its recipients (contact_list_ids or one segment_id) and, when test_emails are given, sends a test to them.
constant_contact_ get_ email_ campaignGet Details About a Single Email Campaign.
constant_contact_ get_ email_ campaign_ activityGet a Single Email Campaign Activity.
constant_contact_ list_ email_ campaignsGet a Collection of Email Campaigns.
constant_contact_ update_ email_ campaign_ activityUpdate An Email Campaign Activity.
constant_contact_ list_ eventsGet a collection of events.
constant_contact_ create_ contactCreate a Contact.
constant_contact_ create_ or_ update_ contactCreate or Update a Contact.
constant_contact_ delete_ contactA Contact.
constant_contact_ get_ account_ summaryGet a Summary of Account Details.
constant_contact_ get_ contactGet a Contact.
constant_contact_ get_ contact_ countsGet Contact Consent Counts.
constant_contact_ get_ user_ privilegesGet User Privileges.
constant_contact_ list_ account_ emailsGet a Collection of Account Email Addresses.
constant_contact_ list_ contactsGet Contacts Collection.
constant_contact_ update_ contactUpdate a Contact.
constant_contact_ create_ listCreate a List.
constant_contact_ create_ segmentCreate a Segment.
constant_contact_ delete_ listA List.
constant_contact_ get_ email_ campaign_ previewGet the HTML Preview of an Email Campaign Activity.
constant_contact_ get_ listGet a List.
constant_contact_ get_ segmentGet a Segment's Details.
constant_contact_ list_ listsGet Lists Collection.
constant_contact_ list_ segmentsGet all Segments.
constant_contact_ schedule_ email_ campaignCreate an Email Campaign Activity Schedule.
constant_contact_ send_ test_ emailTest Send an Email Campaign Activity.
constant_contact_ unschedule_ email_ campaignAn Email Campaign Activity Schedule.
constant_contact_ update_ listUpdate a List.
constant_contact_ create_ custom_ fieldCreate a custom_field.
constant_contact_ create_ tagCreate a Tag.
constant_contact_ list_ custom_ fieldsGet custom_fields Collection.
constant_contact_ list_ tagsGet Details for All Tags.
constant_contact_ get_ contact_ activity_ summaryGet Contact Action Summary.
constant_contact_ list_ automationsList All Automations.
constant_contact_ bulk_ delete_ contactsContacts in Bulk.
constant_contact_ bulk_ delete_ custom_ fieldsCustom Fields.
constant_contact_ bulk_ delete_ listsContact Lists.
constant_contact_ bulk_ delete_ tagsTags.
constant_contact_ get_ contacts_ export_ fileRetrieve Exported Contacts File.
constant_contact_ import_ contacts_ csvImport Contacts using a CSV File.
constant_contact_ get_ email_ bounces_ reportGet an Email Bounces Report.
constant_contact_ get_ email_ campaign_ activity_ statsGet an Email Campaign Activity Stats Report.
constant_contact_ get_ email_ did_ not_ opens_ reportGet an Email Did Not Opens Report.
constant_contact_ get_ email_ forwards_ reportGet an Email Forwards Report.
constant_contact_ get_ email_ links_ reportGet an Email Links Report.
constant_contact_ get_ email_ optouts_ reportGet an Email Opt-outs Report.
constant_contact_ get_ email_ sends_ reportGet an Email Sends Report.
constant_contact_ get_ email_ unique_ opens_ reportGet an Email Unique Opens Report.
constant_contact_ create_ resend_ to_ non_ openersA Resend to Non-openers Campaign Activity.
constant_contact_ delete_ email_ campaignAn Email Campaign.
constant_contact_ delete_ resend_ to_ non_ openersA Resend to Non Openers Activity.
constant_contact_ get_ resend_ to_ non_ openersGet Details for a Resend to Non-openers Campaign Activity.
constant_contact_ list_ email_ campaign_ id_ xrefsGet a Collection of V2 and V3 API Email Campaign Identifiers.
constant_contact_ rename_ email_ campaignUpdate an Email Campaign Name.
constant_contact_ check_ in_ event_ ticketsCheck in event tickets.
constant_contact_ copy_ eventCopy an existing event.
constant_contact_ create_ eventCreate a new event.
constant_contact_ get_ eventGet details for a single event.
constant_contact_ get_ event_ registrationGet registration details for an event.
constant_contact_ list_ event_ registrationsGet a list of registrations for an event.
constant_contact_ undo_ event_ ticket_ check_ inUndo event ticket check-in.
constant_contact_ update_ eventUpdate an event.
constant_contact_ update_ event_ registration_ payment_ statusUpdate payment status for event registrations.
constant_contact_ update_ event_ registration_ statusUpdate status for event registrations.
constant_contact_ add_ account_ emailAdd an Account Email Address.
constant_contact_ add_ physical_ addressThe Physical Address for the Account.
constant_contact_ get_ company_ logoGet the Company Logo for the Account.
constant_contact_ get_ contact_ sms_ engagement_ historyGet SMS Engagement History for a Contact.
constant_contact_ get_ physical_ addressGet the Physical Address for the Account.
constant_contact_ list_ contact_ id_ xrefsGet a collection of V2 and V3 API contact IDs.
constant_contact_ resubscribe_ contactResubscribe a Contact.
constant_contact_ update_ account_ summaryUpdate Account Details.
constant_contact_ update_ company_ logoUpdate the Company Logo for the Account.
constant_contact_ update_ physical_ addressUpdate the Physical Address for an Account.
constant_contact_ delete_ segmentA Segment.
constant_contact_ get_ email_ campaign_ scheduleGet an Email Campaign Activity Schedule.
constant_contact_ get_ email_ campaign_ send_ historyGet the Send History of an Email Campaign Activity.
constant_contact_ get_ landing_ page_ opens_ reportGet a Contacts Opens Landing Page Report.
constant_contact_ get_ landing_ page_ sms_ optins_ reportGet a Unique Contacts SMS Opt-In Landing Page Report.
constant_contact_ get_ landing_ page_ unique_ adds_ reportGet a Unique Contacts Adds Landing Page Report.
constant_contact_ get_ landing_ page_ unique_ clicks_ reportGet a Unique Contacts Clicks Landing Page Report.
constant_contact_ get_ landing_ page_ unique_ opens_ reportGet a Unique Contacts Opens Landing Page Report.
constant_contact_ get_ landing_ page_ unique_ updates_ reportGet a Unique Contacts Updates Landing Page Report.
constant_contact_ list_ list_ id_ xrefsGet a collection of V2 and V3 API List IDs.
constant_contact_ rename_ segmentRename a Segment.
constant_contact_ update_ segmentUpdate a Segment.
constant_contact_ delete_ custom_ fieldA custom_field.
constant_contact_ delete_ tagA Tag.
constant_contact_ get_ custom_ fieldGet a custom_field.
constant_contact_ get_ tagGet Tag Details.
constant_contact_ update_ custom_ fieldUpdate a custom field.
constant_contact_ update_ tagUpdate a Tag.
constant_contact_ create_ automationCreate an Automation.
constant_contact_ create_ social_ postCreate a social media post.
constant_contact_ get_ automationRetrieve an Automation.
constant_contact_ get_ campaign_ performanceGet Campaign Performance Statistics.
constant_contact_ get_ contact_ activity_ detailsGet Contact Activity Details.
constant_contact_ get_ contact_ open_ click_ ratesGet Average Open and Click Rates.
constant_contact_ list_ social_ connectionsGet social network connections.
constant_contact_ list_ social_ hashtag_ groupsGet hashtag groups.
constant_contact_ list_ social_ profilesGet social media profiles.
constant_contact_ update_ automationUpdate an Automation.
constant_contact_ create_ ab_ testCreate an A/B Test for an Email Campaign Activity.
constant_contact_ delete_ ab_ testAn A/B Test for an Email Campaign Activity.
constant_contact_ get_ ab_ testGet A/B Test Details for an Email Campaign Activity.
constant_contact_ list_ sms_ campaign_ summariesGet an SMS Campaigns Summary Report.
Authorize once, then an endpoint your client signs into. Nothing to deploy, and nothing to install on the Constant Contact side.
In Constant Contact's developer portal click New Application, choose Authorization Code Flow and Implicit Flow, add PopMCP's Redirect URI, copy the app's client ID and a generated client secret into PopMCP, then sign in with the account that made the app.
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx••••••••••••3f7aschedule_email_campaign, import_contacts_json and delete_list run the moment the AI calls them, and a send scheduled for now goes out at once. Connections start read-only; tick Constant Contact on the PopMCP consent screen only for clients that send.
Drop the PopMCP URL into Claude, ChatGPT, Claude Code, Codex or any other supported client. It signs in through PopMCP with OAuth, so your Constant Contact credential never leaves the server.
app.popmcp.com/mcpAsk for something harmless before the agent changes anything. Writes run as soon as it calls them, so confirm it reads the right account first.
Import these 300 trade-show leads into a new Expo 2026 list and tag them Expo
constant_contact_create_listok
Then just ask for the work
“Import these 300 trade-show leads into a new Expo 2026 list and tag them Expo”
“Draft our October newsletter for the Customers list and send a test to me and sam@northwind.co”
“How did every campaign we sent in September do on opens, clicks and opt-outs?”
“Export everyone in the Lapsed Customers segment as a CSV”
One hosted endpoint, registered once per client. The same tools and the same permissions, whichever window the request comes from.
Add the PopMCP URL under Customize → Connectors and the tools appear in every chat.
The same endpoint, registered in the browser. Nothing to install on the machine you are working from.
Register PopMCP as a custom connector, then let ChatGPT read and update the account.
Wire the endpoint into Codex or the Codex CLI when a task needs live business context, not a fixture.
Register the remote MCP server in OpenCode's config for terminal-first and scripted agent runs.
Add PopMCP as an MCP server in Z.ai's desktop app and work the account from the same window.
FAQ
What teams ask before putting Constant Contact behind an AI client.
The API Key (client ID) and client secret of an app you create in Constant Contact's V3 developer portal. V3 accepts OAuth sign-ins only, so after pasting both you click Sign in with Constant Contact and approve access on Constant Contact's own page. PopMCP asks for account_read, account_update, contact_data, campaign_data and offline_access, the last one so the connection keeps working without signing in again. Constant Contact shows the client secret once, and PopMCP stores it encrypted.
New Constant Contact apps are private: only the user who created the app can authorize it until Constant Contact approves it, which you start by calling their support on 866-289-2101. For your own account that changes nothing, because you create the app and connect in the same session. An agency connecting client accounts either asks for approval or has each client create an app. Each connection is locked to the account that signed in.
Constant Contact allows 10,000 requests per day and 4 per second for each API key, and the daily count resets at midnight UTC. The limit belongs to your app, so every account connected through it shares one budget. Over it, calls return 429 with quota_exceeded or throttled. Bulk tools save calls: import_contacts_json loads many contacts at once, add_tags_to_contacts tags a whole list, and export_contacts_csv exports a list or segment in one request.
Yes. create_email_draft makes a draft from a subject and HTML, adds the open tracking Constant Contact needs, uses the account's confirmed sender when none is given, sets the recipient lists or a segment, and can send a test to up to five addresses. Nothing goes to your contacts until schedule_email_campaign runs, which sends at the time you give or immediately with scheduled_date 0. unschedule_email_campaign returns a scheduled email to draft.
Constant Contact runs imports, exports, list and tag changes and bulk deletes as background activities, and the call returns an activity_id rather than a result. wait_for_activity checks it every 3 seconds for up to 50 seconds, and get_activity reads its state once, with any per-row errors. Large jobs can take minutes, so the AI calls it again until the state is completed. The Bulk job finished trigger fires when one ends.
10 in total. Polling picks up a contact added, a contact's details or list memberships changing, a contact unsubscribing, an email campaign created, edited, scheduled or sent, and an SMS campaign sent. Change detection catches an email campaign going out, a bulk job finishing or failing, a new contact list and a newly confirmed sender address. One threshold fires when the number of contacts you can email falls below the level you set.
No. PopMCP hosts it and gives you a Streamable HTTP MCP URL. There is nothing to deploy, no callback URL to register, and no infrastructure to keep running or patch.
Any client that supports a remote Streamable HTTP MCP server: Claude Desktop, Claude Web, Claude Code, ChatGPT custom connectors, Codex and the Codex CLI, OpenCode and Z.ai's ZCode, as well as editors such as Cursor, Windsurf and Zed. Your client signs in to PopMCP with OAuth; the provider credential never leaves the server.
Connect Constant Contact in PopMCP first, then run claude mcp add --transport http popmcp https://app.popmcp.com/mcp in a terminal. Inside Claude Code, run /mcp and sign in to PopMCP in the browser window it opens, ticking Constant Contact on the consent screen. The Constant Contact tools are then available in that session, and no Constant Contact credential is stored on your machine.
Loading 122 tool definitions into every conversation burns context before the work starts. PopMCP loads a curated 50-tool set covering the everyday workflows and keeps the rest searchable, so your AI pulls a specialist tool only when a task needs it. Every tool stays searchable, and on Scale the owner can load the full catalog for a teammate's connection.
A tool is something your AI calls, and there are 122 here. A trigger is something PopMCP watches for you: 10 Constant Contact events that can start work on the PopMCP side. Triggers never enter your AI client's context, and none of them ask you to paste a callback URL into Constant Contact.
Launch a hosted MCP endpoint for Constant Contact, keep tool access under control, and start testing real workflow prompts right away.