Skip to main content
Glama

remove_drip_contact

Destructive

Take ONE contact out of a drip campaign so it receives no further steps of that sequence. confirm=true is REQUIRED. This is PERMANENT, and the API documents it as such: one enrolment per address per drip, ever — a contact removed here is NEVER enrolled again by this drip, not even if they enter the sweepstakes again. Tell the user that before they approve it. Messages already sent stay in the report. It takes someone out of this one drip and does NOT unsubscribe them: to stop every message to an address, use add_suppressions instead. The action is recorded in the account log. To stop the whole sequence for everyone instead, use pause_drip. Account-gated, and the two sides of this category are gated differently: this write needs BOTH the Drip Marketing module AND the Send Message module — two separate 403 messages, and either one missing fails the call — while the reads need only Drip Marketing. The gate was NOT observed on the test account, so on a 403 read back which module the API named instead of guessing. Drips are created, edited, activated and deleted ONLY in the Sweeppea app: those actions run a launch checklist (template, sender, 10DLC registration, content screening, plan allowance) that this API deliberately does not reproduce. There is no create endpoint and that is by design, not a gap — the API leaves these writes out on purpose (confirmed by the API maintainer, October 2026) — say so plainly instead of hunting for a workaround, and never propose or invent a tool for it.

Input Schema

NameRequiredDescriptionDefault
confirmYesMust be true. Set it ONLY after the user explicitly approved THIS action in this conversation, having been told what it does and that it cannot be taken back: this contact stops receiving every remaining step of this drip and can NEVER be re-enrolled in it — the API allows one enrolment per address per drip, ever. Never assume, never carry an approval over from a previous item, never set it to satisfy the schema.
drip_tokenYesThe drip campaign token (UUID v4)
source_tokenYesThe contact: a ParticipantToken, OR a lead / subscriber id. NOT always a UUID — pass it through exactly as you received it, and read SourceType in fetch_drip_enrollments to know which kind it is. Never feed it to get_participant without checking SourceType first.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Goes well beyond the destructiveHint/non-idempotent annotations: one-enrolment-per-address-per-drip-ever, no re-enrolment even on re-entry, already-sent messages persist in the report, action is audit-logged, the call requires BOTH Drip Marketing and Send Message modules (two distinct 403s), and the gate was unobserved on the test account so 403s should be read back rather than guessed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded and information-dense, but the closing paragraph about drips being created/edited/activated/deleted only in the Sweeppea app is a tangent about a different operation class rather than this invocation. That material defends against hallucinating a create tool but inflates length with content not needed to call this tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive, gated write with no output schema, the description supplies everything an agent needs: permanence, irreversibility, cross-module auth behavior, audit logging, and correct routing to add_suppressions/pause_drip.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and the confirm field already carries the approval semantics, so the schema does the heavy lifting. The description only reinforces confirm=true as REQUIRED and adds no syntax or format detail for drip_token/source_token beyond what the schema states.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Opens with a specific verb+resource+scope ('Take ONE contact out of a drip campaign so it receives no further steps of that sequence'), which immediately separates it from add_participant, pause_drip, and add_suppressions. An agent can identify the exact operation without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly names the alternatives and the condition that selects them: add_suppressions for stopping every message to an address, pause_drip for stopping the whole sequence for everyone. It also states the confirm precondition and instructs that the user be told about permanence before approving.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources