Skip to main content
Glama

Generate Email Sequence

generate_sequence

Generate a personalized cold email sequence for ONE lead.

This is SYNCHRONOUS — the request takes 3-10 minutes because MachFive researches the prospect and crafts unique emails. Do NOT retry if it seems slow; wait for the response.

You must have a campaign_id first. Call list_campaigns if you don't have one. If the request times out, use the returned list_id with get_list_status and export_list to recover results.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameNoLead's full name (improves personalization).
emailYesLead's email address (REQUIRED).
titleNoLead's job title (improves personalization).
companyNoLead's company name (improves personalization).
list_nameNoDisplay name for this list in MachFive UI.
campaign_idYesCampaign UUID from list_campaigns.
email_countNoNumber of emails in sequence, 1-5.
linkedin_urlNoLinkedIn profile URL for deeper personalization.
approved_ctasNoComma-separated CTAs, e.g. 'Direct Meeting CTA, Lead Magnet CTA'. Omit to use campaign defaults.
campaign_angleNoAdditional context/angle for personalization.
company_websiteNoCompany URL for AI research.
email_signatureNoSignature appended to each email.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

TDQS

A4.7/5.0
Behavior5/5

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

The description discloses synchronous execution taking 3-10 minutes, warns against retrying, and explains how to recover results if a timeout occurs. These are behavioral traits not visible in the annotations (which only mark readOnlyHint, openWorldHint, idempotentHint, destructiveHint). The description adds valuable context about waiting, retries, and recovery, going well beyond the structured data.

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?

The description is three tightly focused paragraphs: purpose, timing/retry, and prerequisites/recovery. Every sentence earns its place, and the most important information (one lead, synchronous, slow) is front-loaded. There is no fluff or redundancy.

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 12-parameter tool with an output schema present, the description covers the essential operational context: how to get a prerequisite campaign_id, how long to wait, what to do on timeout, and how to recover results. Return values are already handled by the output schema, so no description coverage is needed there. The tool is complex, but the description addresses all likely agent uncertainties.

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?

The input schema covers all 12 parameters with descriptions (100% coverage), so the baseline is 3. The description itself does not add parameter-level semantics beyond what the schema already states. The only relevant note about campaign_id is already in the schema ('Campaign UUID from list_campaigns'), so the description does not compensate further.

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 opens with a specific verb and resource: 'Generate a personalized cold email sequence for ONE lead.' The scope is clearly delimited to a single lead, and the emphasis on 'ONE lead' distinguishes it from the generate_batch sibling. The rest of the description reinforces this purpose by explaining the synchronous nature and recovery flow.

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?

Provides explicit prerequisite guidance: 'You must have a campaign_id first. Call list_campaigns if you don't have one.' It also gives clear recovery instructions on timeout ('use the returned list_id with get_list_status and export_list') and tells the agent not to retry when slow. This is more than enough for an agent to choose and invoke the tool correctly.

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.

TDQS

A4.7/5.0
Disambiguation5/5

Each tool has a distinct purpose: list_campaigns provides campaign IDs, generate_batch and generate_sequence handle async batch and sync single generation respectively, get_list_status polls progress, export_list retrieves completed results, and list_lists browses past batches. The descriptions clearly differentiate the overlapping generate tools with explicit usage guidance.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern with snake_case (e.g., list_campaigns, generate_batch, export_list). The verbs are clear and the nouns accurately reflect the resources/actions, making the API predictable.

Tool Count5/5

With 6 tools, the server is well-scoped for its purpose of generating and managing email sequences. Each tool serves a necessary role in the workflow, and the count is ideal—not overwhelming, not sparse.

Completeness5/5

The tool set covers the full lifecycle: discover campaigns, submit batch or single-lead generation, poll status, retrieve results, and browse past batches. There are no obvious missing operations that would prevent an agent from completing the core workflow.