Skip to main content
Glama

Search upcoming crafting events on this site

list_events
Read-only

Search upcoming crafting events on this site. Published, upcoming events with their next date in the window. Filters: q (full text with typo tolerance), craft/type/tag (comma lists of taxonomy slugs; a top-level craft also matches its child crafts, so needlework includes cross-stitch), state, when (weekend|next7|next30|next90|month:YYYY-MM) or from+to, near (a US place as 'City, ST', e.g. 'Columbus, OH', or 'all') or lat+lng, radius (25|50|100|250|any, default 100 with a location), free=1, online=1 (only online events; other values are ignored), inperson=1 (only in-person events, including multi-location; other values are ignored; online=1 and inperson=1 together cancel out to no format filter, rather than matching nothing), sort (date|distance|relevance; default best match for q, else soonest first; distance needs a location, and without one falls back to that default), tz (IANA, for date presets). Invalid filter values are ignored, except a near that matches no US place, which is a 400 validation_failed. With no state, near or lat+lng, a trailing US place in q, like 'quilt show Arizona' or 'Phoenix, AZ', sets the location: a state name or capitalized code becomes state and 'City, ST' becomes near (radius 50 unless given; a city that matches no place is retried on its last 2 words, then its last word, then falls back to its state), and the place is removed from the text query. Location is never inferred from the caller's IP. featured holds up to 3 featured events matching the same search; they are excluded from items on every page. featured=0 turns that off: no featured lookup, featured is empty and items leaves nothing out (for a client that shows its own results without a featured row).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
qNo
toNo
tzNo
latNo
lngNo
tagNo
freeNo
fromNo
nearNo
sortNo
typeNo
whenNo
craftNo
limitNo
stateNo
cursorNo
onlineNo
radiusNo
featuredNo0 skips the featured row: `featured` comes back empty and nothing is left out of `items`. Any other value is ignored.
inpersonNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior5/5

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

Annotations only cover the read-only safety profile, yet the description adds substantial behavior an agent could not otherwise know: invalid filter values are ignored except a no-match near returning 400 validation_failed, location is never inferred from IP, featured events are excluded from items on every page, and featured=0 disables that lookup. This is far beyond what the annotations or schema convey.

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?

Purpose is front-loaded in the first sentence, and given 20 parameters the density is largely justified with little filler. Structure is weak, though: the filter and location behavior are packed into one run-on paragraph rather than separated, which hurts scanability.

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 20-parameter, zero-required search tool with no output schema, the description is nearly complete, even explaining the featured/items return shape. It omits cursor-based pagination semantics and the limit default, which matter for an agent walking result pages.

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 description coverage is only 5%, so the description must carry the load, and it does: it documents q full-text with typo tolerance, taxonomy slug lists with parent/child matching, when enum values, near/lat+lng/radius defaults, free/online/inperson semantics, sort defaults and fallbacks, tz, and trailing-place parsing in q. Only limit and cursor pagination are left unexplained, a minor gap against near-total coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Search upcoming crafting events on this site') and further scopes it to 'Published, upcoming events with their next date in the window'. This distinguishes it from a plain calendar dump, but it never names or contrasts with siblings like list_online_events or similar_events, so the agent must infer the boundary.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description is rich in how to use each filter (e.g. online=1/inperson=1 cancellation, radius defaults, q location parsing), which effectively guides invocation. However it gives no explicit when-to-use-this-vs-alternative guidance relative to the many sibling list/count tools, leaving tool selection to inference.

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