Dittofeed integration
Dittofeed is an open-source customer engagement platform (email, SMS, push and webhook messaging). With the Admin API: list, create, update and delete message templates, segments, user properties, journeys and embedded-component configurations; send a test message or a template to a batch of users; create and start a broadcast to a segment; set manual segment members; read users with their properties, segments and subscriptions, delete users' data, change subscription group assignments; search events and message deliveries; read delivery analytics. Not exposed: the write-key event tracking routes (the separate Dittofeed Tracking integration), email and SMS provider credential settings, the multi-tenant workspace and session routes, and dashboard routes outside the published Admin API reference. Authentication is an Admin API key (Settings, Admin API key) sent as a Bearer token; the connection also holds the workspace id (sent on every read) and the Dittofeed URL: https://app.dittofeed.com for Dittofeed Cloud, or your self-hosted instance's public URL.
Say what should happen.
The workflow builds itself.
What you can do with Dittofeed
Each of these is one operation on one endpoint, available both as a workflow step and as a tool an AI agent can call on its own. Nothing bundles several operations into one action, so what a run did stays readable afterwards.
Most endpoints run on the free plan. A few, mainly the ones that publish on your behalf, need a paid plan.
Component configuration, 3 operations
delete_component_configurationDelete component configurationDELETEDeletes a component configuration permanently. There is no tool to restore it.list_component_configurationsList component configurationsGETLists the workspace's component configurations: settings that customize Dittofeed's embedded components (hidden elements, allow-lists, link templates).upsert_component_configurationUpsert component configurationPUTCreates a component configuration, or updates the one whose id you pass (name is required on both), to customize Dittofeed's embedded components. Returns the saved configuration.
Journey, 3 operations
delete_journeyDelete journeyDELETEDeletes a journey permanently. There is no tool to restore it.list_journeysList journeysGETLists the workspace's journeys (automated message flows): id, name, status (NotStarted, Running, Paused, Broadcast), definition, draft and timestamps. Filter by ids.upsert_journeyUpsert journeyPUTCreates a journey, or updates the one whose id you pass: name, definition (entry, message, delay and other nodes), draft and status. Setting status Running starts messaging users.
Segment, 3 operations
delete_segmentDelete segmentDELETEDeletes a segment permanently. There is no tool to restore it.list_segmentsList segmentsGETLists the workspace's segments: id, name, definition (its rule tree), status, linked subscription group and timestamps. Filter by ids. Pass an id to update_manual_segment; execute_broadcast takes a definition, not an id.upsert_segmentUpsert segmentPUTCreates a segment, or updates the one whose id you pass (name is required on both), from a rule-tree definition. Returns the saved segment. Membership is recomputed and can start journeys.
Template, 3 operations
delete_templateDelete templateDELETEDeletes a message template permanently (pass its id and type). There is no tool to restore it.list_templatesList templatesGETLists the workspace's message templates (email, SMS, mobile push, webhook): id, name, type, published definition, unsaved draft and last update. Filter by ids.upsert_templateUpsert templatePUTCreates a message template, or updates the one whose id you pass (name is required on both). Returns the saved template. Used by journeys and broadcasts, so a change affects what they send next.
User property, 3 operations
delete_user_propertyDelete user propertyDELETEDeletes a user property permanently. There is no tool to restore it.list_user_propertiesList user propertiesGETLists the workspace's user properties (values computed per user from traits or events, rendered in templates): id, name, definition, example value, status and timestamps.upsert_user_propertyUpsert user propertyPUTCreates a user property, or updates the one whose id you pass (name is required on both), from a definition such as a trait path or an event. Returns the saved property; values are recomputed.
Manual segment, 2 operations
clear_manual_segmentClear manual segmentPOSTRemoves every member from a manual segment. Membership changes can affect journeys that use it.update_manual_segmentUpdate manual segmentPOSTUpdates the members of a manual segment (a segment whose definition is a Manual node) with the listed user ids. Membership changes can start journeys that message these users.
User, 2 operations
delete_usersDelete usersDELETEDeletes the listed users' data from Dittofeed: their events, computed user properties and segment memberships. Irreversible, there is no tool to restore it.list_usersList usersPOSTLists users (read only): their properties, segments and optionally subscriptions, filtered by segment, subscription group, user property values or ids, with cursor paging. Personal data.
Broadcast, 1 operation
execute_broadcastExecute broadcastPOSTCreates a broadcast and starts sending it right away: one message from the given template definition to every user matching the given segment definition. Real messages to real people, possibly many.
Delivery, 1 operation
list_deliveriesList deliveriesGETSearches sent messages (deliveries): status, channel, recipient, sender, subject and body, template, journey or broadcast, user and times. Filter by user, journey, broadcast, channel, status or dates. Personal data.
Delivery chart, 1 operation
get_delivery_chart_dataGet delivery chart dataGETReturns delivery counts over time for the analysis dashboard, between startDate and endDate, optionally grouped by journey, broadcast, template, channel, provider or message state.
Delivery summary, 1 operation
get_delivery_summaryGet delivery summaryGETReturns delivery totals for a period: messages delivered, sent, opened, clicked and bounced.
Event, 1 operation
list_eventsList eventsGETSearches the events Dittofeed received (identify, track, page, screen, group and its own message events): message id, type, name, user, times, traits and context. Personal data.
Group user, 1 operation
list_group_usersList group usersGETLists the ids of the users assigned to one group (an account or company). Page with limit and offset.
Journey stats, 1 operation
get_journey_statsGet journey statsGETReturns per-node statistics of one journey for a period, as shown in the journey editor (nodeStats keyed by node id).
Manual segment status, 1 operation
get_manual_segment_statusGet manual segment statusGETReturns when a manual segment was last computed (lastComputedAt, null if never).
Subscription assignment, 1 operation
update_subscription_assignmentsUpdate subscription assignmentsPUTSubscribes or unsubscribes users to subscription groups (a patch: groups not named keep their state). Unsubscribed users stop receiving that group's messages.
Subscription group, 1 operation
list_subscription_groupsList subscription groupsGETLists the workspace's subscription groups: id, name, channel (Email, MobilePush, Sms, Webhook), type (OptIn or OptOut) and timestamps. Every workspace starts with one per channel.
Template message, 1 operation
send_template_to_usersSend template to usersPOSTSends a template now to each listed user, rendered with each user's properties. Real messages to real people. Returns a result per user: Success, Skipped or an error.
Test message, 1 operation
send_test_messageSend test messagePOSTSends a real test message from a template now, rendered with the user properties you pass (they include the recipient, such as email or phone). Returns Ok with the sent message or Err with suggestions.
User group, 1 operation
list_user_groupsList user groupsGETLists the ids of the groups (accounts, companies) one user is assigned to. Page with limit and offset.
User subscription, 1 operation
get_user_subscriptionsGet user subscriptionsGETReturns one user's subscription groups with whether the user is subscribed to each and its channel. Personal data.
Use Dittofeed from Claude Code, Cursor or Codex
Connect Dittofeed in LiveContext, create an API key in Settings, then add the LiveContext MCP server to your client. Its Dittofeed operations become tools the client can call, next to every other integration you connected.
claude mcp add --transport http livecontext https://livecontext.ai/mcp --header "X-API-Key: YOUR_API_KEY"[mcp_servers.livecontext]
url = "https://livecontext.ai/mcp"
[mcp_servers.livecontext.http_headers]
"X-API-Key" = "YOUR_API_KEY"{
"mcpServers": {
"livecontext": {
"type": "http",
"url": "https://livecontext.ai/mcp",
"headers": {
"X-API-Key": "YOUR_API_KEY"
}
}
}
}How to connect Dittofeed
- Create your workspace
Sign up free. Nothing to install.
- Connect Dittofeed once
Add your Dittofeed connection in Settings. Every tool from this integration reuses it, and secrets are encrypted at rest and visible only to you.
- Describe the job in chat
The workflow builds itself in front of you and picks the endpoints it needs. Drag the steps yourself on the canvas whenever you would rather be explicit.
Dittofeed integration FAQ
What can you do with the Dittofeed integration?
LiveContext exposes 33 operations on Dittofeed, covering component configuration, journey, segment and template.
