home / mcp / drip mcp server

Drip MCP Server

Provides programmatic control to manage Drip subscribers, campaigns, tags, events, and workflows via MCP.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "ctrlswing-drip_mcp": {
      "command": "python",
      "args": [
        "-m",
        "drip_mcp.server"
      ],
      "env": {
        "PYTHONPATH": "/absolute/path/to/drip_mcp/src",
        "DRIP_API_KEY": "your-api-key-here",
        "DRIP_ACCOUNT_ID": "your-account-id-here"
      }
    }
  }
}

You can run Drip MCP Server locally to let Claude Code and other MCP clients manage subscribers, campaigns, tags, events, and workflows with Drip’s email marketing platform. This server gives you practical, scriptable control over your Drip account through a consistent MCP interface, with safe defaults and clear error handling.

How to use

Install and run the server, then connect your MCP client to the local process to perform actions such as creating or updating subscribers, applying tags, recording events, listing campaigns, and starting subscribers on workflows. Use the server to perform bulk updates, manage custom fields, and ensure GDPR-compliant consent handling. When using a client, choose the human-friendly Markdown responses for readability or switch to JSON for machine processing, depending on your needs. If you expect large results, rely on built-in pagination to retrieve data in manageable chunks. If a response is long, you’ll receive a helpful truncation notice with guidance.

How to install

Prerequisites: Python 3.8 or higher, a Drip account with API access, and an MCP-compatible client.

Step 1: Prepare your environment by creating a working directory.

Step 2: Set required environment variables with your Drip credentials.

Step 3: Run the server using the recommended start command shown in the configuration snippet.

Step 4: Verify the server starts correctly by listing help or running the test suite.

Step 5: Connect your MCP client configuration to the server using the provided command and environment setup.

Configuration and usage notes

The server exposes a standard Python entry point for development and testing. You can configure your MCP client to launch the server as a stdio process with Python and the -m module flag, and you should pass in the required environment variables and working directory.

Environment variables you will typically provide include your Drip API key and account ID. You can also set PYTHONPATH to include the server source for development-time imports.

To help you start, use the following configuration example for your MCP client, which runs the server as a local Python module and injects the necessary environment variables.

Troubleshooting and best practices

If the server won’t start, verify your Python version is 3.8 or higher, ensure dependencies are installed, and confirm your API credentials are set. If you encounter import errors for the MCP library, install or rebuild the SDK from its GitHub source and retry. Check that your Drip API is reachable and that your network allows HTTPS connections to the API.

Best practices include using batch operations for many subscribers, respecting rate limits, tagging for segmentation, and including event properties to enrich analytics. Choose JSON for programmatic processing and Markdown for easy human reading. Use pagination when listing large datasets and adjust the character limit if needed to balance detail with readability.

Code block: MCP client configuration (example)

{
  "mcpServers": {
    "drip": {
      "command": "python",
      "args": ["-m", "drip_mcp.server"],
      "cwd": "/absolute/path/to/drip_mcp",
      "env": {
        "DRIP_API_KEY": "your-api-key-here",
        "DRIP_ACCOUNT_ID": "your-account-id-here",
        "PYTHONPATH": "/absolute/path/to/drip_mcp/src"
      }
    }
  }
}

Examples and workflows

Common tasks include creating or updating a subscriber with tags, listing active campaigns, applying a tag to a user, recording events with properties, and subscribing or unsubscribing a subscriber from campaigns. Batch import operations help you process large lists efficiently, and you can start a subscriber on a workflow to trigger automated steps.

Security and data handling

Never expose API keys in logs or code. Use environment variables or a secure key management solution. All API calls occur over HTTPS, inputs are validated with strong typing, and the server is designed to minimize unnecessary requests while honoring consent controls.

Notes on upgrading and project structure

The server is structured to separate source code, tests, and tooling. When upgrading, update the MCP client configuration to point to the updated server entry point and verify compatibility with your existing workflows.

Supported tools and endpoints

The server exposes a set of tools for handling subscribers, tags, events, campaigns, workflows, and custom fields. These include creating or updating subscribers, listing subscribers, applying and removing tags, recording custom events, listing campaigns, subscribing or unsubscribing from campaigns, list and manage workflows, and starting subscribers on workflows.

Available tools

drip_create_update_subscriber

Create or update a subscriber with optional tags and custom fields

drip_list_subscribers

List subscribers with filtering and pagination options

drip_fetch_subscriber

Fetch detailed information for a specific subscriber

drip_unsubscribe_from_all

Globally unsubscribe a subscriber from all emails

drip_batch_subscribe

Batch create or update up to 1000 subscribers in a single operation

drip_list_tags

List all tags in the account

drip_apply_tag

Apply a tag to a subscriber for segmentation

drip_remove_tag

Remove a tag from a subscriber

drip_record_event

Record a custom event for a subscriber with optional properties

drip_list_event_actions

List all event types being tracked

drip_list_campaigns

List Email Series Campaigns

drip_subscribe_to_campaign

Subscribe a subscriber to a campaign

drip_unsubscribe_from_campaign

Unsubscribe a subscriber from a campaign or multiple campaigns

drip_list_workflows

List all workflows in the account

drip_activate_workflow

Activate a workflow to start automations

drip_pause_workflow

Pause an active workflow

drip_start_on_workflow

Start a subscriber on a workflow to begin automated steps

drip_list_custom_fields

List identifiers for custom fields used in the account