Skip to main content
Glama

Submit an event for review

submit_event

Send Littles Weekly a family event for kids ages 0–6 in one of our cities, for example on behalf of the organizer you are helping. Free. It goes into a review queue and is never published automatically: a person checks every detail against event_url (the official event page) before listing it, and not every submission is listed. Only submit events the user organizes or is authorized to share, set authorized to true only when they have confirmed that, and use their real contact details. Returns a submission id, status "pending_review", a confirmation line and a status_url page the user can open to follow it; the organizer email also gets a short confirmation with that link. Pass the id to get_submission_status later. One call per event; do not resubmit the same event.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "event_name": "<event_name>",
      "city": "<city>",
      "venue": "<venue>",
      "start_date": "<start_date>",
      "time": "<time>",
      "age_range": "<age_range>",
      "free": "<free>",
      "registration": "<registration>",
      "description": "<description>",
      "event_url": "<event_url>",
      "organizer_name": "<organizer_name>",
      "organizer_email": "<organizer_email>",
      "authorized": "<authorized>"
    },
    "name": "submit_event"
  }
}

Input Schema

NameRequiredDescriptionDefault
cityYesCity slug from list_cities or https://littlesweekly.com/cities.json (e.g. "indianapolis", "twin-cities"). A plain name like "Kansas City" also works. Must be a city we cover.
costNoPrice details, required when free is false (e.g. "$8 per child, adults free")
freeYestrue if a family can attend without paying
testNoLeave this out. Only Littles Weekly sets it, to test the tool.
timeYesTimes, e.g. "10–11:30 AM" or "Saturdays 9 AM–noon"
agentNoOptional: which assistant is sending this, e.g. "Claude for the organizer"
venueYesVenue or place name
addressNoStreet address, if there is one
end_dateNoLast date for multi-day or recurring runs, YYYY-MM-DD. Omit for one day.
age_rangeYesAges it suits, e.g. "0–5", "toddlers 18 mo–3", "all ages"
event_urlYesOfficial event page (https://...). Required: we verify everything against it.
authorizedYesMust be true: the user confirmed they are the organizer or authorized to share this event
event_nameYesEvent name as the organizer lists it
start_dateYesFirst (or only) date, YYYY-MM-DD, today or later
descriptionYesA few plain sentences about what families will do there
registrationYesWhether families must sign up ahead
organizer_nameYesOrganizer or contact person
organizer_emailYesContact email for questions about this event (not published, not added to any list)
organizer_phoneNoContact phone (optional, not published)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.9/5.0
Behavior5/5

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

Goes well beyond annotations: discloses the human review queue, that nothing is auto-published, that every detail is verified against event_url, that listing is not guaranteed, and that an organizer email confirmation is sent. It also flags the non-idempotent behavior ('one call per event; do not resubmit'), consistent with idempotentHint=false.

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

Conciseness4/5

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

Front-loaded with purpose and constraint, and most sentences carry distinct information. It is a long single paragraph touching return values, email side effects, and follow-up routing, so a small amount could be tightened, but nothing is filler.

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 19-parameter mutation with no output schema, the description compensates by naming the returned submission id, pending_review status, confirmation line, and status_url, plus the side-effect email. Combined with full schema coverage, an agent has everything needed to call it correctly and report back to the user.

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

Parameters5/5

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

Schema coverage is already 100%, but the description still adds decision-relevant meaning: the precise condition for setting authorized=true, that contact details must be real, and that event_url is the verification anchor and therefore non-negotiable. That is value beyond the field-level 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?

States a specific verb (submit) and resource (a family event for kids 0–6 in covered cities) with the audience and geography scoped. It is clearly distinct from siblings like get_events or get_submission_status, and the review-queue framing tells an agent exactly what kind of write this is.

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?

Explicit when-to-use ('organizer you are helping', 'only submit events the user organizes or is authorized to share'), when-not ('not every submission is listed', 'do not resubmit the same event'), and the follow-up path ('pass the id to get_submission_status later'). It also sets the gating condition for the authorized flag, which is the main misuse risk.

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