MCP App Store
by KeenEthics
Constant Contact icon

Constant Contact

By Constant Contact

Get New App Alerts

Overview

Go from email idea to a polished, ready-to-send campaign with the Constant Contact app. Describe the email you want, and the Constant Contact app will generate the HTML and render a live preview. Not quite right? Give feedback in chat, make edits, and preview again until it's exactly what you want. When you're ready to send, connect or create a Constant Contact account to import your email and reach your audience.

Tools

add_account_email_address

ChatGPT
Use this method to add a new email address to a Constant Contact account. If the email address you are adding already exists in the account the API will return a 409 conflict error. When you add a new email address to an account, Constant Contact automatically sends an email to that address with a link to confirm it. After a user clicks that link, the account email status changes from UNCONFIRMED to CONFIRMED. You can use confirmed account email addresses in the email campaign from_email and reply_to_email headers. For more use case information, see [Add an Account Email Address](/api_guide/account_post_emails.html) in the API guide.

add_physical_address

ChatGPT
Use this method to add the address where the account's organization physically resides. The physical address is required to send emails and displays on the footer of every email that is sent from the account. The country (country_code) where the account organization resides determines whether you use the state_code to specify United States (US) and Canada (CA) addresses, or use the state_name to specify all other countries.

bulk_import_contacts_json

ChatGPT
Use this method to create an asynchronous background job that adds new contacts or updates existing contacts by importing a JSON payload. This method requires a request body that contains the contact data you are importing and the contact lists to which you want to add the imported contacts. A contact's data must include an email address and/or sms_number. The sms_number must be a US phone number to associate with the contact's SMS-enabled phone. Valid formats are 1231231234 or 123-123-1234 (the country code must be valid). Importing a new contact using this method automatically sets the contact's email permission_to_send property to implicit and the opt_in_source property as Account. Importing an existing contact only updates the contact properties you include in the request. For each contact, you can import up to three addresses and three phone numbers. International phone numbers are currently not supported. To import custom fields, prefix the custom field name with cf: and add it as a contact property. For example, use the property name cf:first_name if you have a custom field named first_name. The custom field must already exist in the Constant Contact account you are using. Each contact can contain up to 25 custom fields. To include a contact's sms_number, if the contact provided explicit permission to receive SMS messages, you must set the sms_permission_to_send property to explicit and specify the date of consent using the sms_consent_date column header. If explicit permission was not provided, set sms_permission_to_send to not_set (the sms_consent_date is not required). If the sms_consent_date is not set, SMS messages cannot be sent to contacts and sms_permission_to_send defaults to not_set. Valid value formats for sms_consent_date include MM/DD/YYYY, M/D/YYYY, YYYY/MM/DD, YYYY/M/D, YYYY-MM-DD, YYYY-M-D,M-D-YYYY, or M-DD-YYYY. The request body payload has a maximum size of 4 megabytes (MB). If the request body exceeds 4 MB, this method only imports the first 4 MB and drops the remaining data. Use the activity URL to check the status of the import activity request.

check_campaign_schedule_readiness

ChatGPT
Check if an email campaign activity is ready to be scheduled for sending. Returns status and scheduling URL. Only DRAFT status campaigns can be scheduled.

check_email_schedule_readiness

ChatGPT
Check if an email campaign activity is ready to be scheduled for sending. Returns status and scheduling URL. Only DRAFT status campaigns can be scheduled.

create_email

ChatGPT
Use this tool to create a new email campaign. You must include a tracking image ([[trackingImage]]) in the email body in order for Constant Contact to report on the email performance. The request body must contain the name property and the email_campaign_activities array. The name must be unique.The email_campaign_activities array contains the main content of your email campaign and must include format_type, subject, and html_content properties. This tool will automatically use the default from_name, from_email, and reply_to_email for the account when creating a campaign, these values do not need to be passed in. Compliance and sender preflight requirements: Quality requirement for default output: when the user asks to create an email campaign and does not explicitly request a plain or minimal draft, default to a polished, production-ready HTML marketing email, not a schema-valid stub. Treat any included HTML example as the minimum visual quality bar, not just a valid payload sample. Strong preference: generate professionally styled HTML with substantial inline CSS and a clear design system. Prefer: a background color and constrained content container, strong heading hierarchy and readable body typography, intentional spacing and section padding, card or panel structure where appropriate, styled CTA buttons and links,polished image treatment, and a coherent visual layout that looks intentionally designed. Always make the layout mobile-friendly and responsive using responsive design techniques such as responsive tables, fluid layouts, and mobile-optimized CSS media queries. Avoid as the default: barebones bodies with only one or two inline styles,placeholder-looking copy, or a simple heading-plus-paragraph structure when richer HTML is feasible from the information already available. User-discovery requirement: before creating the campaign, strongly prefer gathering enough context to make the email effective. Ask about the users business goal/campaign objective, audience, brand style, and desired call to action when that information is missing and asking is practical. Frame this as improving performance and relevance, not as a blocker. Examples: What is the business goal of this email? Who is the audience? What action do you want readers to take? Do you want it to feel promotional, editorial, or transactional? Are there brand colors, logo, product images, or offers to include? It is very important to personalize the email. If a business website is provided, use it to infer brand style, tone, colors, and destination links. If a logo or image is provided, incorporate it into the email. If neither is provided, clearly label the output as a best-effort draft. If the user has not supplied this context and immediate creation is still necessary, create the best possible polished draft using reasonable assumptions, but optimize for a credible business-ready layout rather than a minimal example. Behavioral rule: The assistant should assume the user wants a visually designed email that supports a real business objective. Visual polish does not satisfy this requirement on its own. Unless the user explicitly requests a placeholder, starter draft, mockup, or “just make something,” the assistant must collect the minimum campaign brief — goal, audience, CTA — before creating the campaign. If any of these are missing, ask first. Do not use generic filler strategy or copy as a substitute for the brief.

create_email_campaign

ChatGPT
Use this tool to create a new email campaign. You must include a tracking image ([[trackingImage]]) in the email body in order for Constant Contact to report on the email performance. The request body must contain the name property and the email_campaign_activities array. The name must be unique.The email_campaign_activities array contains the main content of your email campaign and must include format_type, subject, and html_content properties. This tool will automatically use the default from_name, from_email, and reply_to_email for the account when creating a campaign, these values do not need to be passed in. Compliance and sender preflight requirements: Quality requirement for default output: when the user asks to create an email campaign and does not explicitly request a plain or minimal draft, default to a polished, production-ready HTML marketing email, not a schema-valid stub. Treat any included HTML example as the minimum visual quality bar, not just a valid payload sample. Strong preference: generate professionally styled HTML with substantial inline CSS and a clear design system. Prefer: a background color and constrained content container, strong heading hierarchy and readable body typography, intentional spacing and section padding, card or panel structure where appropriate, styled CTA buttons and links,polished image treatment, responsive-friendly table or hybrid email-safe layout patterns, and a coherent visual layout that looks intentionally designed. Avoid as the default: barebones bodies with only one or two inline styles,placeholder-looking copy, or a simple heading-plus-paragraph structure when richer HTML is feasible from the information already available. User-discovery requirement: before creating the campaign, strongly prefer gathering enough context to make the email effective. Ask about the users business goal/campaign objective, audience, brand style, and desired call to action when that information is missing and asking is practical. Frame this as improving performance and relevance, not as a blocker. Examples: What is the business goal of this email? Who is the audience? What action do you want readers to take? Do you want it to feel promotional, editorial, or transactional? Are there brand colors, logo, product images, or offers to include? It is very important to personalize the email. If a business website is provided, use it to infer brand style, tone, colors, and destination links. If a logo or image is provided, incorporate it into the email. If neither is provided, clearly label the output as a best-effort draft. If the user has not supplied this context and immediate creation is still necessary, create the best possible polished draft using reasonable assumptions, but optimize for a credible business-ready layout rather than a minimal example. Behavioral rule: The assistant should assume the user wants a visually designed email that supports a real business objective. Visual polish does not satisfy this requirement on its own. Unless the user explicitly requests a placeholder, starter draft, mockup, or “just make something,” the assistant must collect the minimum campaign brief — goal, audience, CTA — before creating the campaign. If any of these are missing, ask first. Do not use generic filler strategy or copy as a substitute for the brief.

create_list

ChatGPT
Create a new contact list resource

create_social_post

ChatGPT
Create a new social media post campaign. In order to create an effective post you must include the post text and an image. Always use campaign text and an image unless an end user explicitly asks for a draft or placeholder campaign.Images from social media platforms or from imgur will be rendered in the response.Not all image CDNs are supported due to the CSP settings of the platfrom. If an image is not loading in the preview, upload it to Constant Contact or to imgur.Supports creating posts in DRAFT or SCHEDULED status across one or more social profiles. Use DRAFT to save without publishing, or SCHEDULED to schedule for publication at a specific time. Requires at least one profile_posts entry with target profile IDs for SCHEDULED posts. Use GET /social/profiles to retrieve available profile IDs before creating a post.

get_campaign_html_preview

ChatGPT
Get the HTML preview of an email campaign activity. Returns decoded HTML content ready to render, along with email metadata (subject, from email, preheader, etc.).

get_email_html_preview

ChatGPT
Get the HTML preview of an email campaign activity. Returns decoded HTML content ready to render, along with email metadata (subject, from email, preheader, etc.).

get_physical_address

ChatGPT
Use this method to get the address where the account's organization physically resides. The physical address is required to send emails and displays on the footer of every email that is sent from the account.

public_render_subject_line_score

ChatGPT
Render an interactive subject line score UI component that suggests better subject lines.

rename_email

ChatGPT
Use this method to rename an email campaign. The name is not visible to contacts. The name must be unique and cannot exceed 80 characters. You cannot rename email campaigns that have a Removed status.

rename_email_campaign

ChatGPT
Use this method to rename an email campaign. The name is not visible to contacts. The name must be unique and cannot exceed 80 characters. You cannot rename email campaigns that have a Removed status.

retrieve_email_addresses

ChatGPT
Use this method to return a collection of email addresses for the account associated with your access token. When you Create an Email Campaign, you must use an account email address with a CONFIRMED status in the email campaign from_email and reply_to_email headers. Use the query parameters to filter results. You can filter using confirm_status, role_code, or email_address. For example, searching with confirm_status=CONFIRMED returns all confirmed email addresses in the account. This method only supports one query parameter at a time.

update_email

ChatGPT
Update an email campaign activty. Required fields are from_name, from_email, reply_to_email, and subject.

update_email_campaign_activity

ChatGPT
Update an email campaign activty. Required fields are from_name, from_email, reply_to_email, and subject.

update_list

ChatGPT
Updates an existing contact list resource, specified by list_id

update_physical_address

ChatGPT
Use this method to update the organization's physical address for the Constant Contact user account. The physical address is required to send emails and displays on the footer of every email that is sent from the account. To get the current physical address, make a GET call to /account/summary/physical_address. The country (country_code) where the account organization resides determines whether you use the state_code to specify United States (US) and Canada (CA) addresses, or use the state_name to specify all other countries. For more details, see [Put (update) the Physical Address for the Account](/api_guide/account_address_put.html). You must have the role of Account Owner assigned to update account level details.

update_social_post

ChatGPT
Update an existing social media post campaign. Requires the campaign_id of the post to update.Supports updating posts in DRAFT or SCHEDULED status across one or more social profiles.Use DRAFT to save without publishing, or SCHEDULED to schedule for publication at a specific time.

upload_my_library_file

ChatGPT
Upload an image or file to the Constant Contact MyLibrary. Image uploads must use a publicly accessible URL. Use this tool in workflows involving user submitted images to ensure that the images render correctly in the campaign. Some images may fail to be uploaded to Constant Contact. In these cases, it is reasonable to fall back on the user submitted image for campaign creation. Polls for upload completion and returns the file's id and external_url (publicly accessible CDN URL).

user_image_upload

ChatGPT
Display an interactive UI for uploading images to the Constant Contact MyLibrary. Use this tool when a user wants to upload an image to their Constant Contact account and does not have the image hosted on an external URL. The widget handles image selection and submission directly. The Constant Contact image ids and image urls are passed by the UI to the clients context after the user uploads the image.

addAccountEmailAddress

Claude

addPhysicalAddress

Claude

bulkImportContactsJSON

Claude

check_campaign_schedule_readiness

Claude

createEmailCampaignUsingPOST

Claude

createList

Claude

getPhysicalAddress

Claude

get_campaign_html_preview

Claude

public_render_subject_line_score

Claude

putList

Claude

putPhysicalAddress

Claude

renameEmailCampaignUsingPATCH

Claude

retrieveEmailAddresses

Claude

updateEmailCampaignActivityUsingPUT

Claude

Capabilities

WritesInteractive

Example Prompts

Click any prompt to copy it.

Similar Apps