# eSputnik MCP MCP

> eSputnik MCP handles marketing automation across email, SMS, web push, and mobile notifications. Your AI client can manage entire campaigns, from creating new contacts to segmenting groups and checking message delivery status. It’s designed for complex, multi-channel communication workflows.

## Overview
- **Category:** marketing
- **Price:** Free
- **Tags:** esputnik, email, sms, push, omnichannel

## Description

This MCP lets your agent run full marketing operations without leaving the chat interface. Instead of jumping between email clients, SMS dashboards, and web push consoles, you can orchestrate campaigns using one set of commands. You retrieve contact lists or search specific users by phone number first. Then, if you need to update segments, you can add or remove contacts from groups instantly. Finally, your agent sends a single message that triggers delivery across all channels—email, SMS, and push notifications simultaneously. Because Vinkius hosts this MCP in the catalog, your AI client has instant access to every tool needed for marketing operations, keeping your workflow contained and focused.

## Tools

### attach_to_group
Adds specific contacts to a designated customer group or segment.

### create_contact
Creates a brand new contact record within the eSputnik system.

### detach_from_group
Removes specific contacts from an existing group or segment.

### get_account_info
Retrieves core metadata about the connected account and organization settings.

### get_contact
Gets detailed profile information for a specific contact using their ID or credentials.

### get_message_status
Checks the current delivery status of any message that was previously sent out.

### list_contacts
Retrieves a full list of every contact record available in eSputnik.

### list_groups
Lists all existing, defined groups or customer segments that contacts belong to.

### list_unsubscribed
Retrieves a list of email addresses that have explicitly opted out of receiving messages.

### search_contacts
Finds specific contacts by entering an email address or phone number.

### send_smart_send
Triggers a single, omni-channel message send to the designated recipients (email, SMS, push).

### trigger_event
Generates a system event that can automatically start pre-built marketing workflows.

## Prompt Examples

**Prompt:** 
```
List all my contact groups in eSputnik.
```

**Response:** 
```
I've retrieved your segments. You have 3 groups: 'VIP Customers', 'Newsletter Subs', and 'Inactive Users'.
```

**Prompt:** 
```
Send an SMS saying 'Your order has shipped!' to +123456789.
```

**Response:** 
```
The SMS has been successfully dispatched to +123456789 via eSputnik.
```

**Prompt:** 
```
Add 'john@example.com' to the 'VIP Customers' list.
```

**Response:** 
```
Contact 'john@example.com' was successfully added to the 'VIP Customers' group.
```

## Capabilities

### Orchestrate Multi-Channel Campaigns
Send a single message that automatically delivers content via email, SMS, web push, or mobile notification.

### Manage Contact Records
Create new customer accounts, search existing contacts by phone or email, and retrieve detailed profiles for any user.

### Segment Audience Groups
List all available contact groups (segments) or add/remove specific contacts from a group to tailor messaging.

### Track Message Performance
Check the delivery status of any message you've sent, confirming if it was delivered successfully across channels.

### Automate Workflow Triggers
Generate system events that automatically kick off internal workflows or process sequences within your marketing platform.

## Use Cases

### Handling a Campaign Failure
The marketing manager asks, 'Why did the SMS campaign fail for user X?' The agent calls `get_contact` to verify their profile, then uses `get_message_status` to pinpoint if the failure was due to an invalid number or system block.

### Onboarding a New Client Segment
The sales team finishes a meeting and needs to add 50 contacts. The agent first calls `list_groups`, then uses `attach_to_group` for the new 'Qualified Leads' segment, followed by an immediate `send_smart_send` with welcome instructions.

### Updating User Status
A user has been inactive for six months. The agent calls `list_unsubscribed` to check opt-out status, then uses `detach_from_group` to remove them from active promotional lists before pausing their record.

### Reactivating a Workflow
The product team launches a new feature and needs existing users to be notified. The agent calls `trigger_event`, which immediately kicks off the pre-built 'Feature Launch' sequence across all necessary user groups.

## Benefits

- Stop guessing if a message went through. Use `get_message_status` to confirm delivery across every channel, eliminating guesswork about campaign performance.
- Never manually update segments again. Your agent can call `list_groups` and then use `attach_to_group` to instantly move hundreds of contacts into the 'High Value' segment.
- Build out your customer journey logic entirely within the chat. Use `trigger_event` to execute complex, sequenced workflows that respond to user actions.
- Find exactly who you need fast. Instead of browsing massive lists, use `search_contacts` with a phone number to pull up a specific user profile immediately.
- Manage your entire contact database without leaving your agent chat. From generating new leads using `create_contact` to running full campaigns via `send_smart_send`, it's all contained.

## How It Works

The bottom line is you don't manually hop between different marketing tools; your AI client handles the entire sequence from segmentation to sending.

1. First, use `list_groups` to see all existing customer segments and identify the target audience.
2. Next, you might need to update contacts. You can call `attach_to_group` to move users into a new segment or `create_contact` to onboard brand-new leads.
3. Finally, trigger the campaign by calling `send_smart_send`, specifying the content and the target group for simultaneous delivery.

## Frequently Asked Questions

**How do I check if a message was actually delivered using get_message_status?**
Yes, the `get_message_status` tool allows you to verify delivery. You input the message ID and it reports whether the send failed or succeeded across channels.

**Can I use list_groups before sending messages?**
Absolutely. Running `list_groups` first lets your agent show you all available segments, so you know exactly which group to target before running `send_smart_send`.

**What if I need to add a brand new contact? Should I use create_contact?**
Yes. If the user doesn't exist in your system, you must call `create_contact`. This establishes their record before you can attach them to any groups.

**Is there a way to find a contact if I only have an email?**
The `search_contacts` tool handles this. You provide the email or phone number, and it retrieves all associated details for that user profile.

**I need to move contacts between segments; how do I use `detach_from_group` and `attach_to_group`?**
You simply call both tools sequentially. First, run `detach_from_group` with the contact IDs you want to remove. Then, use `attach_to_group`, referencing those same IDs and the new group name. This handles mass segment changes efficiently.

**Should I check for compliance before sending? How do I use `list_unsubscribed`?**
Yes, always verify this list first. Running `list_unsubscribed` gives you a precise feed of emails that opted out. You must filter these addresses out of your target audience before calling `send_smart_send`, otherwise, you risk bounces and compliance issues.

**I'm ready to send the message; what parameters does `send_smart_send` require?**
The tool needs three things: the recipient list (ideally segmented), the message body content, and the desired channel type (Email, SMS, or Push). You specify these inputs so your agent can trigger the full omnichannel broadcast.

**If I want a workflow to run based on an external system change, how do I use `trigger_event`?**
You use this tool when you need to force eSputnik's internal workflows. Instead of waiting for a contact action, calling `trigger_event` tells the platform that a specific condition has been met elsewhere in your business process.

**Can I send transactional SMS messages via the AI agent?**
Yes! You can specify the recipient's phone number and the message content, and the AI will trigger the eSputnik SMS endpoint.

**How do I query my contact segments?**
Ask the agent to 'List all contact groups'. It will retrieve your active segments directly from the eSputnik API.

**Does it support adding new contacts dynamically?**
Absolutely. You can request the AI to add an email or phone number to your active directory instantly.