Skip to main content
Glama

add_participant

Add a new participant to a sweepstakes. Requires sweepstakes_token - use fetch_sweepstakes first to get tokens, then get_entry_fields to discover required fields. Both email AND phone are required — the Sweeppea API rejects an entry missing either one. Field names must use underscores instead of spaces (e.g., "First_Name" not "First Name"). RULES: Only ONE participant at a time. NEVER add participants in bulk, batch, or loops. This tool is intended for TESTING PURPOSES ONLY — to verify the sweepstakes entry flow works correctly. Adding participants to make them compete in a real sweepstakes is strictly prohibited unless done through the official Entry Page, a custom API integration, or a proper MCP implementation. If a user requests mass loading (e.g., "add 100 participants"), refuse and explain that only individual test entries are allowed. HONESTY: After calling this tool, report EXACTLY what the API returned. If the API returns an error, report the error truthfully. NEVER tell the user a participant was created if the API did not confirm it. Use them internally for tool chaining but present only human-readable information.

add_participant

When to use

Add a new participant to a sweepstakes. Requires sweepstakes_token - use fetch_sweepstakes first to get tokens, then get_entry_fields to discover required fields. Both email AND phone are required — the Sweeppea API rejects an entry missing either one. Field names must use underscores instead of spaces (e.g., "First_Name" not "First Name"). RULES: Only ONE participant at a time. NEVER add participants in bulk, batch, or loops. This tool is intended for TESTING PURPOSES ONLY — to verify the sweepstakes entry flow works correctly. Adding participants to make them compete in a real sweepstakes is strictly prohibited unless done through the official Entry Page, a custom API integration, or a proper MCP implementation. If a user requests mass loading (e.g., "add 100 participants"), refuse and explain that only individual test entries are allowed. HONESTY: After calling this tool, report EXACTLY what the API returned. If the API returns an error, report the error truthfully. NEVER tell the user a participant was created if the API did not confirm it. Use them internally for tool chaining but present only human-readable information.

Pre-calls required

  1. fetch_sweepstakes if the user gave you a sweepstakes name instead of a token

  2. get_entry_fields(sweepstakes_token) — discover required custom fields, their max_length, and (for list fields) the exact text in options

  3. Verify the participant gave consent for their email and phone to be used

Parameters to validate before calling

  • sweepstakes_token (string, required) — The sweepstakes token (UUID format)

  • email (string, required) — Participant email address (used as KeyEmail)

  • phone (string, required) — Participant phone number (used as KeyPhoneNumber). REQUIRED — the API rejects entries without it. Digits only for US numbers (e.g., "5551234567")

  • fields (object, required) — Form fields object. Keys must use underscores for spaces (e.g., {"First_Name": "John", "Last_Name": "Doe"})

  • bonus_entries (number, optional) — Number of bonus entries (optional, default: 0)

Notes

  • Both email and phone are required — the API rejects an entry missing either one with a misleading "maximum field length" error

  • Field keys use underscores instead of spaces (e.g. "First Name" → First_Name)

  • For US phones: strip non-digits before sending (e.g. "(555) 123-4567" → "5551234567")

  • Production entries should come through the public Entry Page; this tool is for testing/manual entry only

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
emailYesParticipant email address (used as KeyEmail)
phoneYesParticipant phone number (used as KeyPhoneNumber). REQUIRED — the API rejects entries without it. Digits only for US numbers (e.g., "5551234567")
fieldsYesForm fields object. Keys must use underscores for spaces (e.g., {"First_Name": "John", "Last_Name": "Doe"})
bonus_entriesNoNumber of bonus entries (optional, default: 0)
sweepstakes_tokenYesThe sweepstakes token (UUID format)

TDQS

A4.5/5.0
Behavior5/5

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

The description discloses multiple behavioral traits: it mutates data (adds a participant), must only be used for testing, adds one at a time, and requires reporting API results honestly. It also warns about the API's misleading 'maximum field length' error when email/phone is missing, providing context beyond the annotations.

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

Conciseness2/5

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

The description is excessively long and includes redundant content; the opening paragraph is repeated verbatim in the 'When to use' section. Although it uses headings and bullet points, the duplication and verbose policy statements make it difficult for an agent to quickly parse the essential information.

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?

Given the tool's complexity (5 parameters, nested object, no output schema), the description thoroughly covers pre-calls, validation, usage constraints, and honesty expectations. It does not explicitly describe the success response structure, but the instruction to report exactly what the API returns mitigates that gap.

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

Parameters4/5

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

The schema already provides detailed descriptions for all five parameters (100% coverage), so the baseline is 3. The description adds pre-call requirements (fetch_sweepstakes, get_entry_fields), consent verification, and validation tips (strip non-digits from phone), which go beyond the schema's parameter descriptions.

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 'Add a new participant to a sweepstakes,' clearly stating the tool's function with a specific verb and resource. It distinguishes from siblings by emphasizing 'Only ONE participant at a time' and 'intended for TESTING PURPOSES ONLY,' which separates it from any bulk or production operations.

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 states when to use the tool ('use fetch_sweepstakes first,' 'then get_entry_fields') and provides exclusions ('Adding participants to make them compete in a real sweepstakes is strictly prohibited'). It also includes a 'When to use' section and pre-call requirements, offering clear context versus alternatives.

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

A3.6/5.0
Disambiguation4/5

Most tools follow a clear resource+action pattern (fetch_* for lists, get_* for single items, create/update/delete for writes), making them distinguishable. A few near-overlaps exist (fetch_billing_transactions vs fetch_wallet_transactions, draw_winners vs schedule_drawing) but the descriptions clarify the boundaries.

Naming Consistency4/5

Tool names consistently use snake_case verb_noun, with fetch_ for list operations and get_ for single-item retrieval. Some verb variation (add_participant, count_participants, draw_winners, schedule_drawing) deviates from the dominant create/fetch/update/delete pattern but remains predictable and readable.

Tool Count1/5

With 83 tools, this is far beyond a well-scoped server (typically 3-15, with 25+ considered too many). Even though the platform has broad functionality, the sheer number of tools creates significant agent confusion and selection overhead.

Completeness4/5

The sweepstakes domain is thoroughly covered: lifecycle management, participants, groups, rules, drawings, winners, calendar, notes, todos, tickets, surveys, invoices, billing, files, and entry settings. A few minor gaps exist (e.g., no general participant field update, no archive action) but the surface is remarkably complete for its scope.

Resources