# Freshmarketer MCP

> Freshmarketer connects your entire marketing automation suite to any AI client, letting you manage contacts, build lists, and trigger email campaigns through natural conversation. Instead of clicking through dashboards, simply ask your agent to segment an audience or post a custom event timeline update. It lets you run complex marketing operations directly from your chat interface.

## Overview
- **Category:** marketing-automation
- **Price:** Free
- **Tags:** email-marketing, marketing-campaigns, lead-nurturing, customer-segmentation, event-tracking

## Description

This MCP connects your Freshmarketer account to any AI client, giving you complete control over your marketing database and campaigns. You can manage contacts, organize mailing lists, and trigger personalized emails without ever leaving your agent window. Need to find out who hasn't opened an email in 60 days? Just ask. Want to send a specific follow-up campaign to the top 1% of leads? The MCP handles it. It lets you list all contacts, check their profiles, and even post custom events directly to trigger automated journeys. This capability means you run complex marketing logic using simple conversations, making your entire catalog available through Vinkius.

It's about talking to your marketing system like you talk to a coworker, getting the data or action you need immediately.

## Tools

### create_mailing_list
Creates a brand new mailing list within your Freshmarketer account.

### check_account_status
Verifies the current API status of your Freshmarketer account credentials.

### get_contact_details
Retrieves specific metadata and details for any given contact record.

### list_contacts
Lists a queryable set of all marketing contacts in your system.

### list_custom_events
Displays all the custom events you have configured for use in automation flows.

### list_journeys
Retrieves a list of currently active or paused marketing journeys.

### list_mailing_lists
Shows all the mailing lists that have been configured in your account.

### post_custom_event
Triggers and logs a specific custom event onto a contact's timeline for tracking purposes.

### send_transactional_email
Sends an immediate, single transactional email to one or more contacts.

### upsert_contact
Either creates a new contact record or updates existing details for a specific person.

## Prompt Examples

**Prompt:** 
```
List my 5 most recent marketing contacts.
```

**Response:** 
```
Retrieving contacts... I found 5 recent records, including 'john@example.com' (Subscribed) and 'jane@example.com' (Bounced). Would you like their full profiles?
```

**Prompt:** 
```
Show me all active mailing lists in my account.
```

**Response:** 
```
Fetching lists... You have 3 active mailing lists: 'Newsletter Subscribers', 'Beta Testers', and 'Churned Users'.
```

**Prompt:** 
```
Trigger the 'Welcome Email' (Campaign ID: 123) for 'newuser@example.com'.
```

**Response:** 
```
Email triggered! The transactional 'Welcome Email' has been successfully dispatched to newuser@example.com.
```

## Capabilities

### Manage and Update Contacts
Retrieve detailed profiles of existing contacts, list all available records, or create new ones using simple commands.

### Segment Audiences and Lists
List configured mailing lists to see how your audience is segmented, or build entirely new lists from scratch.

### Automate Communications
Trigger specific transactional emails directly for single contacts or entire campaigns without needing the marketing dashboard.

### Track Customer Activity
Post custom events to a contact's timeline, which programs your automation flows and updates their record instantly.

### Monitor Marketing Journeys
Access status details for all active or paused marketing automation campaigns.

## Use Cases

### A prospect just finished onboarding, and you need to kick off their welcome sequence.
Instead of navigating to the CRM, finding the user's record, and manually triggering an event, you ask your agent: 'Post a 'Welcome Onboarded' custom event for newuser@example.com.' The system executes this via `post_custom_event`, immediately starting their personalized journey.

### You realize the main list is missing people who signed up through a different channel.
You ask your agent to pull all recent leads and then tell it to use `list_contacts` followed by `create_mailing_list` and populate that new list. You don't have to export, clean, and re-import the data yourself.

### A key stakeholder needs a quick report on all active marketing lists.
You ask your agent: 'What are our top 5 mailing lists?' The system uses `list_mailing_lists` to fetch and present the current segmentation options in natural language, saving the stakeholder from dashboard exploration.

### You need to send a highly personalized email update immediately after a sales call.
After getting the contact's details via `get_contact_details`, you ask your agent to draft and dispatch an immediate follow-up using `send_transactional_email`. The entire communication loop is closed in chat.

## Benefits

- Automate contact updates: Instead of logging into the CRM to verify data, you simply ask your agent to use `get_contact_details` or `upsert_contact`, and it handles the record management instantly.
- Instant segmentation: Need a list of users who failed to open an email? You can call `list_mailing_lists` and filter contacts directly through conversation, skipping manual report generation.
- Trigger complex workflows: Use `post_custom_event` to mark a contact as 'Attended Webinar.' This action immediately triggers the correct automated sequence without human intervention.
- Run targeted campaigns on demand: Need to send a quick follow-up? You don't navigate to email marketing; you just tell your agent to use `send_transactional_email` for immediate dispatch.
- See campaign status at a glance: Quickly review all active flows by asking the agent to `list_journeys`, saving minutes of clicking through dashboard tabs.

## How It Works

The bottom line is that you get conversational control over complex marketing systems.

1. Subscribe to this MCP through the Vinkius Marketplace and enter your Freshmarketer Domain prefix and API Key.
2. Connect this MCP to your preferred AI client (Claude, Cursor, etc.) for access.
3. Start a conversation with your agent by asking it to perform a marketing action, like 'List all contacts who signed up last week.'

## Frequently Asked Questions

**How do I update a contact record using Freshmarketer MCP?**
You use the 'upsert_contact' tool. You just tell your agent which fields need changing, and it updates or creates the record for you.

**Can Freshmarketer MCP help me segment my audience?**
Yes. You can use list_mailing_lists to see existing segments, and by combining actions like 'list_contacts' with filtering requests, you can define new audiences on the fly.

**What is the easiest way to test a marketing flow?**
You can use post_custom_event to manually trigger a custom event onto a contact's timeline. This lets you verify if your automation flows are listening for that specific action.

**Does Freshmarketer MCP only work with one type of email?**
No, it handles transactional emails via 'send_transactional_email.' You can send immediate, personalized messages without having to build a full campaign journey first.

**Do I need API keys for the Freshmarketer MCP?**
Yes. The setup process requires you to enter your domain prefix and API Key from your Admin Settings so that the agent can authorize all necessary actions on your behalf.