campaign_chest

campaign_chest

Provides 35 MCP tools for automated marketing campaigns, integrating event management, booking, and email marketing into a deterministic pipeline for AI agents.

Category
Visit Server

README

campaign_chest

AI Marketing Orchestrator Toolbox — 35 MCP tools for end-to-end campaign automation.

Integrates Hi.Events + Cal.com + Mautic into a single curated toolset designed for LangGraph agents running the deterministic campaign pipeline:

Create Event (Hi.Events) → Publish → Get ticket URL
    → Create Booking Page (Cal.com) → Get booking URL
    → Inject URLs into email templates (Mautic)
    → Create segment + drip campaign → Add contacts

Tool Inventory

Hi.Events: Ticketed Events (11 tools)

Tool Purpose
hi_events_list_organizers Get organizer_id before creating events
hi_events_list Check if event already exists
hi_events_get Get event details + construct public URL
hi_events_create Create event as DRAFT
hi_events_update_settings Set location, timezone, support_email
hi_events_create_ticket Create ticket type with price + quantity
hi_events_create_capacity Set total event capacity
hi_events_publish Publish event LIVE → URL becomes active
hi_events_list_tickets List ticket types + IDs
hi_events_get_stats Ticket sales, revenue, attendance rate
hi_events_list_attendees Who registered (for Mautic contact import)

Cal.com: Consultation Booking (8 tools)

Tool Purpose
calcom_get_profile Get username + timezone for URL construction
calcom_list_schedules Pick schedule when creating event type
calcom_list_event_types Check existing consultation pages + get URLs
calcom_get_event_type Get booking URL after creation
calcom_create_event_type Create consultation booking page
calcom_get_available_slots Show host availability to agent/user
calcom_create_booking Programmatically create a booking
calcom_list_bookings Monitor incoming consultation bookings

Mautic: Email Campaign (16 tools)

Tool Purpose
mautic_list_contacts Check who already exists
mautic_get_contact Verify contact details
mautic_create_contact Add prospect
mautic_update_contact Update contact fields
mautic_list_segments Check existing segments
mautic_create_segment Create campaign audience
mautic_add_to_segment Manual add — reliable (filter-based requires cron)
mautic_list_emails Check existing email templates
mautic_create_email Create email template with injected URLs
mautic_update_email Edit email content
mautic_list_campaigns Check existing campaigns
mautic_create_campaign Create drip campaign with event timeline
mautic_get_campaign Verify campaign state + published status
mautic_list_campaign_contacts Verify contacts entered campaign
mautic_send_email Direct send fallback (bypasses cron)
mautic_add_to_campaign Manually push contact into campaign

Installation

cd /Users/ds/my-mcp-servers/campaign_chest
uv pip install -e ".[mcp]"

Environment Variables

Variable Service Required
HI_EVENTS_BASE_URL Hi.Events Yes
HI_EVENTS_EMAIL Hi.Events Yes
HI_EVENTS_PASSWORD Hi.Events Yes
CALCOM_BASE_URL Cal.com No (default: https://api.cal.com)
CALCOM_API_KEY Cal.com Yes
MAUTIC_BASE_URL Mautic Yes
MAUTIC_USERNAME Mautic Yes
MAUTIC_PASSWORD Mautic Yes

Claude Desktop Config

"campaign-chest": {
  "command": "uv",
  "args": ["--directory", "/Users/ds/my-mcp-servers/campaign_chest",
           "run", "--extra", "mcp", "mcp_server.py"],
  "env": {
    "HI_EVENTS_BASE_URL": "https://events.brothersbit.com/api",
    "HI_EVENTS_EMAIL": "...",
    "HI_EVENTS_PASSWORD": "...",
    "CALCOM_BASE_URL": "https://connect-api.marketfier.com",
    "CALCOM_API_KEY": "...",
    "MAUTIC_BASE_URL": "https://marketing.brothersbit.com",
    "MAUTIC_USERNAME": "...",
    "MAUTIC_PASSWORD": "..."
  }
}

Key API Quirks

  • Hi.Events: location_details causes 500 on event create — always use update_settings() separately
  • Hi.Events: Public ticket URL: {base_url without /api}/event/{id}/{slug}
  • Hi.Events: Products are returned via /product-categories (not /products which 500s)
  • Cal.com: Slots use start/end params (NOT startTime/endTime)
  • Mautic: Campaign triggerMode: "date" causes 500 — use "immediate" or "interval" only
  • Mautic: publishUp format: "YYYY-MM-DD HH:MM:SS" (no T, no timezone offset)
  • Mautic: Campaign events need BOTH parent field AND canvasSettings.connections
  • Mautic: Use manual add_to_segment() — filter-based segments require cron to process
  • Mautic: emailType: "transactional" bypasses frequency rules (right for event invitations)

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured