Skip to main content
Glama
camelmailer

CamelMailer MCP Server

Official
by camelmailer

send_campaign_now

Destructive

Create and send a campaign instantly to every subscriber of a stream, skipping draft review and scheduling. Use when email must go out immediately.

Instructions

CREATES A CAMPAIGN AND SENDS IT IMMEDIATELY to every subscriber of the stream. There is no draft to review and no schedule; the send starts before this returns. Use create_campaign_draft unless the mail really should go out now.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
fromNoSender address on a verified sending domain
nameYesDisplay name
subjectNoMessage subject
html_bodyNoHTML body
permalinkYesBroadcast stream permalink
text_bodyNoPlain-text body

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.2.0

TDQS

A4.4/5.0
Behavior4/5

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

The description discloses that there is no draft to review, no schedule, and that the send starts before the function returns. These are behavioral traits beyond what the annotations provide. The annotations already declare destructiveHint=true, so the description's emphasis on immediate sending complements rather than contradicts the annotation. It could add more about irreversibility or recipient count, but it already covers the key behavioral risk.

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

Conciseness5/5

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

Three sentences with zero waste. The critical behavioral warning is front-loaded, the alternative is named, and the condition for choosing this tool is stated. Every sentence earns its place.

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

Completeness4/5

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

For a destructive, immediate-send tool with no output schema, the description covers the essential context: what happens, when it happens, and which sibling to use instead. It doesn't mention that the send is irreversible or that it sends to all subscribers, but the destructiveHint annotation and the phrase 'every subscriber of the stream' already cover those. The description is complete enough for an agent to call it correctly.

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%, so the schema already documents all six parameters. The description adds context about the 'permalink' being a broadcast stream and 'name' being a display name, but it doesn't add meaning beyond what the schema provides. Baseline 3 is appropriate because the schema does the heavy lifting.

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?

The description states a specific verb ('CREATES A CAMPAIGN AND SENDS IT IMMEDIATELY') and a specific resource ('every subscriber of the stream'), and it explicitly distinguishes itself from the sibling tool create_campaign_draft. This makes the tool's purpose unmistakable and differentiates it from the many campaign-related siblings.

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?

The description explicitly says when to use this tool ('unless the mail really should go out now') and names the alternative ('Use create_campaign_draft'). This is exactly the kind of when/when-not guidance an agent needs to select between send_campaign_now and create_campaign_draft.

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