Skip to main content
Glama

Sarbacane MCP by usefulapi

Create an email campaign (draft)

sarbacane_create_email_campaign

WRITE: create a new email campaign as a DRAFT. It is never sent by these tools: add content (sarbacane_set_campaign_content or sarbacane_import_campaign_template) and a contact list (sarbacane_set_campaign_list), then send it from Sarbacane. POST /v1/campaigns/email.

Input Schema

NameRequiredDescriptionDefault
nameYesCampaign name (internal).
subjectYesEmail subject.
preheaderNoPreheader text.
alias_fromYesSender name.
email_fromYesSender email address (must be a sender allowed on the account).
alias_reply_toYesReply-to name.
email_reply_toYesReply-to email address.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare write/non-destructive/open-world, but the description adds substantive context beyond them: the object is created as an unsent draft, nothing in this toolset will dispatch it, and the underlying endpoint is POST /v1/campaigns/email. It stops short of covering duplicate-creation risk on retry or what happens if a referenced sender is not allowed on the account.

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 short sentences, no filler, with the WRITE marker and draft status front-loaded before the workflow chain. Every clause carries information an agent needs.

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 7-parameter mutation with annotations but no output schema, the description covers the create-and-populate workflow well. The one gap is that the return value is never characterized, yet the follow-up tools presumably need the new campaign's identifier — an agent is left to infer that it receives an ID back.

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 every field (name, subject, preheader, from/reply aliases and addresses) is documented inline in the schema. The description adds no parameter-level detail such as sender verification requirements or default handling of the optional preheader, so the baseline 3 applies.

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+mode: "WRITE: create a new email campaign as a DRAFT." This clearly separates it from siblings that mutate an existing campaign (sarbacane_set_campaign_content, sarbacane_set_campaign_list) and from read tools like sarbacane_get_campaign.

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 states the lifecycle constraint ("It is never sent by these tools") and names the exact follow-up tools needed to make the draft usable, plus the escape hatch (send it from Sarbacane). An agent knows both when to call this and what to do next.

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.