Skip to main content
Glama

Search events in one city

search_events
Read-onlyIdempotent

Search every upcoming event in one What's Up In city by words, dates, price, topic or place: music, dance, AI/tech, arts, comedy, food, sports, classes, volunteering, street fairs. Use it whenever the question has search words, a date range ("this weekend": from/to), free-only, a town or an area; for a day-by-day overview of the next few days with no search words use list_upcoming, and for an artist, festival or conference in several cities use search_across_cities. Words in query match the title, venue, performers, organizer or tags at the start of a word, singular or plural, with common synonyms; by default all must match, with match "any" (or | / commas between them) any one does; a misspelled word is read as the closest word the events use, and search in the result says how the query was read. Dates are the city's local dates. Results come earliest first, at most limit; count says how many matched in total, so narrow the search rather than paging. Each event has its original listing (link) and an id for get_event. No sign-in; each client gets 30 calls a minute and 2,500 event rows an hour.

Input Schema

NameRequiredDescriptionDefault
toNoLatest date, YYYY-MM-DD (default: none)
cityYesWhich city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Atlanta, Austin, Cancún, Colorado Springs & Pueblo, DC, Denver, Detroit, Dubai, Honolulu, Houston, Las Vegas, London, Mexico City, Miami, New York, Paris, Philadelphia, Phoenix, Portland, Salt Lake City, San Antonio, Tokyo, Toronto. list_cities has the full list.
freeNoOnly free events
fromNoEarliest date, YYYY-MM-DD (default: today)
nearNoEvents within radius_km of a place in the city: a neighborhood, a town, a venue name, or "lat,lon". Results get distance_km, nearest first within each day.
townNoOnly events in this town or city within the metro, e.g. 'Oakland', 'Pasadena' (case-insensitive)
limitNoMax results (default 25)
matchNoall (default): every word must match; any: at least one word or |-separated phrase does
queryNoFree text, e.g. 'salsa', 'hackathon', 'street fair', an artist or venue. Alternatives: 'salsa | bachata'; a phrase: quotes. A neighborhood or town after 'in'/'near' becomes the place filter.
topicNoTopic, e.g. comedy, film, food_drink, sports, talks, classes, markets, outdoors
categoryNoScored category
radius_kmNoDistance for near (default 1.5, max 50), or how far neighborhood reaches past its boundary (default 0)
neighborhoodNoOnly events in this neighborhood or town of the city, e.g. 'Capitol Hill', 'Silver Lake', 'Cambridge'. Events whose venue isn't mapped can't be placed and are left out (place.unplaced_events counts them).
changed_sinceNoOnly events added or changed (title, date or time, venue, link, price, sold out, status) at or after this moment: YYYY-MM-DD (the city's local date) or an ISO date-time. To follow up later, pass the previous result's changes.synced_at; changes.removed then lists events taken down since.

Output Schema

NameRequiredDescriptionDefault
cityYes
siteNo
countYesEvents that matched in total
placeNo
shownYesEvents returned (at most limit)
eventsYes
searchNoHow the query was read
changesNoOnly with changed_since
coverageNoCoverage and accuracy page
attributionNo
briefing_urlNoThe dated weekly briefing for this week or next (counts plus picks per kind of event, #lane when the filters match one); null further out. Cite it for "what's on this week"
data_generatedNoWhen this city's data was last published

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / city / description
      Previous value: -"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Atlanta, Austin, Cancún, Colorado Springs & Pueblo, DC, Denver, Detroit, Dubai, Honolulu, Houston, Las Vegas, London, Mexico City, Miami, New York, Philadelphia, Phoenix, Portland, Salt Lake City, San Antonio, Tokyo, Toronto. list_cities has the full list."New value: +"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Atlanta, Austin, Cancún, Colorado Springs & Pueblo, DC, Denver, Detroit, Dubai, Honolulu, Houston, Las Vegas, London, Mexico City, Miami, New York, Paris, Philadelphia, Phoenix, Portland, Salt Lake City, San Antonio, Tokyo, Toronto. list_cities has the full list."
    • addedOutput schema / properties / events / items / properties / new_host
      Added value: +{
      +  "description": "True when the event's organizer, group or promoter first appeared in our listings within the last two weeks; a plain discovery marker, not a quality signal. Absent otherwise",
      +  "type": "boolean"
      +}
  2. Changed1 schema field changed
    • changedInput schema / properties / city / description
      Previous value: -"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Atlanta, Austin, Cancún, Colorado Springs & Pueblo, DC, Denver, Detroit, Honolulu, Houston, Las Vegas, London, Mexico City, Miami, New York, Philadelphia, Phoenix, Portland, Salt Lake City, San Antonio, Toronto. list_cities has the full list."New value: +"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Atlanta, Austin, Cancún, Colorado Springs & Pueblo, DC, Denver, Detroit, Dubai, Honolulu, Houston, Las Vegas, London, Mexico City, Miami, New York, Philadelphia, Phoenix, Portland, Salt Lake City, San Antonio, Tokyo, Toronto. list_cities has the full list."
  3. Changed1 schema field changed
    • changedInput schema / properties / city / description
      Previous value: -"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Atlanta, Cancún, Colorado Springs & Pueblo, DC, Denver, Detroit, Honolulu, Houston, Las Vegas, London, Mexico City, New York, Philadelphia, Phoenix, Portland, Salt Lake City, Toronto. list_cities has the full list."New value: +"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Atlanta, Austin, Cancún, Colorado Springs & Pueblo, DC, Denver, Detroit, Honolulu, Houston, Las Vegas, London, Mexico City, Miami, New York, Philadelphia, Phoenix, Portland, Salt Lake City, San Antonio, Toronto. list_cities has the full list."
  4. Changed1 schema field changed
    • changedInput schema / properties / city / description
      Previous value: -"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Atlanta, Cancún, Colorado Springs & Pueblo, DC, Denver, Detroit, Honolulu, Houston, Las Vegas, Mexico City, New York, Philadelphia, Phoenix, Portland, Salt Lake City. list_cities has the full list."New value: +"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Atlanta, Cancún, Colorado Springs & Pueblo, DC, Denver, Detroit, Honolulu, Houston, Las Vegas, London, Mexico City, New York, Philadelphia, Phoenix, Portland, Salt Lake City, Toronto. list_cities has the full list."
  5. Changed2 schema fields changed
    • changedInput schema / properties / city / description
      Previous value: -"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Atlanta, Cancún, Colorado Springs & Pueblo, DC, Denver, Detroit, Houston, Las Vegas, Mexico City, New York, Philadelphia, Phoenix, Portland, Salt Lake City. list_cities has the full list."New value: +"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Atlanta, Cancún, Colorado Springs & Pueblo, DC, Denver, Detroit, Honolulu, Houston, Las Vegas, Mexico City, New York, Philadelphia, Phoenix, Portland, Salt Lake City. list_cities has the full list."
    • addedOutput schema / properties / events / items / properties / venue_status
      Added value: +{
      +  "description": "Present only when location is empty, and says why (we never guess a venue): rsvp = the address is shared after RSVP/registration; tba = the venue isn't decided; hidden = the source shows the venue to its members only (Meetup stubs; /mcp leaves these out, so you won't see it here); title = the title names the place; text = the description names a place; unset = the host left it blank. Open the link for the venue",
      +  "enum": [
      +    "rsvp",
      +    "tba",
      +    "hidden",
      +    "title",
      +    "text",
      +    "unset"
      +  ],
      +  "type": "string"
      +}
  6. Changed1 schema field changed
    • changedInput schema / properties / city / description
      Previous value: -"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Albuquerque, Almaty, Anchorage, Atlanta, Baltimore, Bangkok, Beijing, Berlin, Buffalo, Cairo, Cancún, Cape Town, Cincinnati, Cleveland, Colorado Springs & Pueblo, Dallas-Fort Worth, DC, Denver, Detroit, Fresno, Guangzhou, Havana, Honolulu, Houston, Inland Empire, Kansas City, Las Vegas, London, Mexico City, Miami, Minneapolis-St. Paul, Montreal, Nashville, New Orleans, New York, Paris, Philadelphia, Phoenix, Pittsburgh, Portland, Raleigh, Richmond, Rome, Salt Lake City, San Antonio, San Juan, Savannah, Seoul, Shanghai, St. Louis, Sydney, Tokyo, Toronto, Vancouver. list_cities has the full list."New value: +"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Atlanta, Cancún, Colorado Springs & Pueblo, DC, Denver, Detroit, Houston, Las Vegas, Mexico City, New York, Philadelphia, Phoenix, Portland, Salt Lake City. list_cities has the full list."
  7. Changed6 schema fields changed
    • addedInput schema / properties / changed_since
      Added value: +{
      +  "description": "Only events added or changed (title, date or time, venue, link, price, sold out, status) at or after this moment: YYYY-MM-DD (the city's local date) or an ISO date-time. To follow up later, pass the previous result's changes.synced_at; changes.removed then lists events taken down since.",
      +  "type": "string"
      +}
    • changedInput schema / properties / city / description
      Previous value: -"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Albuquerque, Almaty, Anchorage, Atlanta, Baltimore, Bangkok, Beijing, Berlin, Buffalo, Cairo, Cancún, Cape Town, Cincinnati, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Fresno, Guangzhou, Havana, Honolulu, Houston, Inland Empire, Kansas City, Las Vegas, London, Mexico City, Miami, Minneapolis-St. Paul, Montreal, Nashville, New Orleans, New York, Paris, Philadelphia, Phoenix, Pittsburgh, Portland, Raleigh, Richmond, Rome, Salt Lake City, San Antonio, San Juan, Savannah, Seoul, Shanghai, St. Louis, Sydney, Tokyo, Toronto, Vancouver. list_cities has the full list."New value: +"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Albuquerque, Almaty, Anchorage, Atlanta, Baltimore, Bangkok, Beijing, Berlin, Buffalo, Cairo, Cancún, Cape Town, Cincinnati, Cleveland, Colorado Springs & Pueblo, Dallas-Fort Worth, DC, Denver, Detroit, Fresno, Guangzhou, Havana, Honolulu, Houston, Inland Empire, Kansas City, Las Vegas, London, Mexico City, Miami, Minneapolis-St. Paul, Montreal, Nashville, New Orleans, New York, Paris, Philadelphia, Phoenix, Pittsburgh, Portland, Raleigh, Richmond, Rome, Salt Lake City, San Antonio, San Juan, Savannah, Seoul, Shanghai, St. Louis, Sydney, Tokyo, Toronto, Vancouver. list_cities has the full list."
    • changedInput schema / properties / topic / enum
      Previous value: -[
      -  "arts",
      -  "books",
      -  "civic",
      -  "classes",
      -  "comedy",
      -  "community",
      -  "conferences",
      -  "culture",
      -  "faith",
      -  "family",
      -  "film",
      -  "food_drink",
      -  "games",
      -  "markets",
      -  "networking",
      -  "nightlife",
      -  "nonprofit",
      -  "outdoors",
      -  "science",
      -  "sports",
      -  "startup",
      -  "talks",
      -  "wellness",
      -  "wine",
      -  "business"
      -]New value: +[
      +  "arts",
      +  "books",
      +  "civic",
      +  "classes",
      +  "comedy",
      +  "community",
      +  "conferences",
      +  "culture",
      +  "faith",
      +  "family",
      +  "film",
      +  "food_drink",
      +  "games",
      +  "markets",
      +  "networking",
      +  "nightlife",
      +  "nonprofit",
      +  "outdoors",
      +  "science",
      +  "sports",
      +  "startup",
      +  "talks",
      +  "theater",
      +  "wellness",
      +  "wine",
      +  "business",
      +  "ai",
      +  "tech",
      +  "service_orgs"
      +]
    • addedOutput schema / properties / briefing_url
      Added value: +{
      +  "description": "The dated weekly briefing for this week or next (counts plus picks per kind of event, #lane when the filters match one); null further out. Cite it for \"what's on this week\"",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / changes
      Added value: +{
      +  "description": "Only with changed_since",
      +  "properties": {
      +    "note": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "removed": {
      +      "description": "Upcoming events taken down (cancelled, delisted or merged into another listing) since `since`, newest first, last two weeks at most",
      +      "items": {
      +        "properties": {
      +          "date": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "id": {
      +            "type": "string"
      +          },
      +          "removed": {
      +            "type": "string"
      +          },
      +          "title": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          }
      +        },
      +        "required": [
      +          "id",
      +          "removed"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "removed_count": {
      +      "description": "Total removals when more than are listed",
      +      "type": "number"
      +    },
      +    "since": {
      +      "type": "string"
      +    },
      +    "synced_at": {
      +      "description": "Pass this as changed_since next time to get only what changed after this answer",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "tracked_since": {
      +      "description": "When change tracking started for this city",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    }
      +  },
      +  "required": [
      +    "since",
      +    "removed"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / properties / events / items / properties / changed
      Added value: +{
      +  "description": "When we last saw the title, date or time, venue, link, price or status change (local ISO time); the first-seen day for older events",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
  8. Changed1 schema field changed
    • changedInput schema / properties / city / description
      Previous value: -"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Almaty, Anchorage, Atlanta, Baltimore, Bangkok, Cairo, Cancún, Cape Town, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Fresno, Guangzhou, Honolulu, Houston, Inland Empire, Kansas City, Las Vegas, London, Mexico City, Miami, Montreal, New York, Paris, Philadelphia, Phoenix, Pittsburgh, Portland, Raleigh, Richmond, Rome, Salt Lake City, San Antonio, Savannah, Seoul, Shanghai, St. Louis, Sydney, Tokyo, Toronto, Vancouver. list_cities has the full list."New value: +"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Albuquerque, Almaty, Anchorage, Atlanta, Baltimore, Bangkok, Beijing, Berlin, Buffalo, Cairo, Cancún, Cape Town, Cincinnati, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Fresno, Guangzhou, Havana, Honolulu, Houston, Inland Empire, Kansas City, Las Vegas, London, Mexico City, Miami, Minneapolis-St. Paul, Montreal, Nashville, New Orleans, New York, Paris, Philadelphia, Phoenix, Pittsburgh, Portland, Raleigh, Richmond, Rome, Salt Lake City, San Antonio, San Juan, Savannah, Seoul, Shanghai, St. Louis, Sydney, Tokyo, Toronto, Vancouver. list_cities has the full list."
  9. Changed1 schema field changed
    • changedInput schema / properties / city / description
      Previous value: -"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Albuquerque, Almaty, Anchorage, Atlanta, Baltimore, Bangkok, Beijing, Berlin, Buffalo, Cairo, Cancún, Cape Town, Cincinnati, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Fresno, Guangzhou, Havana, Honolulu, Houston, Inland Empire, Kansas City, Las Vegas, London, Mexico City, Miami, Minneapolis-St. Paul, Montreal, Nashville, New Orleans, New York, Paris, Philadelphia, Phoenix, Pittsburgh, Portland, Raleigh, Richmond, Rome, Salt Lake City, San Antonio, San Juan, Savannah, Seoul, Shanghai, St. Louis, Sydney, Tokyo, Toronto, Vancouver. list_cities has the full list."New value: +"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Almaty, Anchorage, Atlanta, Baltimore, Bangkok, Cairo, Cancún, Cape Town, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Fresno, Guangzhou, Honolulu, Houston, Inland Empire, Kansas City, Las Vegas, London, Mexico City, Miami, Montreal, New York, Paris, Philadelphia, Phoenix, Pittsburgh, Portland, Raleigh, Richmond, Rome, Salt Lake City, San Antonio, Savannah, Seoul, Shanghai, St. Louis, Sydney, Tokyo, Toronto, Vancouver. list_cities has the full list."
  10. Changed2 schema fields changed
    • addedOutput schema / properties / events / items / properties / event_status
      Added value: +{
      +  "description": "What a source says: postponed (no new date yet; listed on its original date), rescheduled (this is the new date), moved (to another venue; location is the new one), sold_out. Absent = scheduled as listed; cancelled events are left out",
      +  "enum": [
      +    "sold_out",
      +    "postponed",
      +    "rescheduled",
      +    "moved"
      +  ],
      +  "type": "string"
      +}
    • addedOutput schema / properties / events / items / properties / status_note
      Added value: +{
      +  "description": "The source's own wording of event_status, e.g. \"Moved to The Warfield\"",
      +  "type": "string"
      +}
  11. Changed1 schema field changed
    • changedInput schema / properties / city / description
      Previous value: -"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Almaty, Anchorage, Atlanta, Bangkok, Beijing, Berlin, Buffalo, Cairo, Cancún, Cape Town, Cincinnati, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Fresno, Guangzhou, Havana, Honolulu, Houston, Inland Empire, Kansas City, Las Vegas, London, Mexico City, Miami, Minneapolis-St. Paul, Montreal, Nashville, New Orleans, New York, Paris, Philadelphia, Phoenix, Pittsburgh, Portland, Raleigh, Richmond, Rome, Salt Lake City, San Antonio, San Juan, Savannah, Seoul, Shanghai, St. Louis, Sydney, Tokyo, Toronto, Vancouver. list_cities has the full list."New value: +"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Albuquerque, Almaty, Anchorage, Atlanta, Baltimore, Bangkok, Beijing, Berlin, Buffalo, Cairo, Cancún, Cape Town, Cincinnati, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Fresno, Guangzhou, Havana, Honolulu, Houston, Inland Empire, Kansas City, Las Vegas, London, Mexico City, Miami, Minneapolis-St. Paul, Montreal, Nashville, New Orleans, New York, Paris, Philadelphia, Phoenix, Pittsburgh, Portland, Raleigh, Richmond, Rome, Salt Lake City, San Antonio, San Juan, Savannah, Seoul, Shanghai, St. Louis, Sydney, Tokyo, Toronto, Vancouver. list_cities has the full list."
  12. Changed1 schema field changed
    • changedInput schema / properties / city / description
      Previous value: -"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Albuquerque, Almaty, Anchorage, Atlanta, Baltimore, Bangkok, Beijing, Berlin, Buffalo, Cairo, Cancún, Cape Town, Cincinnati, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Fresno, Guangzhou, Havana, Honolulu, Houston, Inland Empire, Kansas City, Las Vegas, London, Mexico City, Miami, Minneapolis-St. Paul, Montreal, Nashville, New Orleans, New York, Paris, Philadelphia, Phoenix, Pittsburgh, Portland, Raleigh, Richmond, Rome, Salt Lake City, San Antonio, San Juan, Savannah, Seoul, Shanghai, St. Louis, Sydney, Tokyo, Toronto, Vancouver. list_cities has the full list."New value: +"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Almaty, Anchorage, Atlanta, Bangkok, Beijing, Berlin, Buffalo, Cairo, Cancún, Cape Town, Cincinnati, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Fresno, Guangzhou, Havana, Honolulu, Houston, Inland Empire, Kansas City, Las Vegas, London, Mexico City, Miami, Minneapolis-St. Paul, Montreal, Nashville, New Orleans, New York, Paris, Philadelphia, Phoenix, Pittsburgh, Portland, Raleigh, Richmond, Rome, Salt Lake City, San Antonio, San Juan, Savannah, Seoul, Shanghai, St. Louis, Sydney, Tokyo, Toronto, Vancouver. list_cities has the full list."
  13. Changed3 schema fields changed
    • addedInput schema / properties / match
      Added value: +{
      +  "description": "all (default): every word must match; any: at least one word or |-separated phrase does",
      +  "enum": [
      +    "all",
      +    "any"
      +  ],
      +  "type": "string"
      +}
    • changedInput schema / properties / query / description
      Previous value: -"Free text, e.g. 'salsa', 'hackathon', 'street fair', an artist or venue"New value: +"Free text, e.g. 'salsa', 'hackathon', 'street fair', an artist or venue. Alternatives: 'salsa | bachata'; a phrase: quotes. A neighborhood or town after 'in'/'near' becomes the place filter."
    • addedOutput schema / properties / search
      Added value: +{
      +  "description": "How the query was read",
      +  "properties": {
      +    "match": {
      +      "description": "all, any or semantic: how the query's words were combined",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "order": {
      +      "description": "\"best match first\" for match semantic (otherwise results are earliest first)",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "place_from_query": {
      +      "description": "A neighborhood or town taken from the query and used as the place filter",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "read_as": {
      +      "additionalProperties": {
      +        "type": "string"
      +      },
      +      "description": "A word nothing matched, read as the closest word the events use",
      +      "type": "object"
      +    },
      +    "terms": {
      +      "description": "Each word or phrase searched, with the other forms that counted (synonyms)",
      +      "items": {
      +        "properties": {
      +          "also": {
      +            "items": {
      +              "type": "string"
      +            },
      +            "type": "array"
      +          },
      +          "term": {
      +            "type": "string"
      +          }
      +        },
      +        "required": [],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "required": [],
      +  "type": "object"
      +}
  14. Changed1 schema field changed
    • addedOutput schema / properties / events / items / properties / checked_live
      Added value: +{
      +  "description": "When we last opened the original listing and found it still matches (time, venue, not cancelled); local ISO time. Absent = not checked in the last two days",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
  15. Changed1 schema field changed
    • changedInput schema / properties / topic / enum
      Previous value: -[
      -  "arts",
      -  "books",
      -  "civic",
      -  "classes",
      -  "comedy",
      -  "community",
      -  "conferences",
      -  "culture",
      -  "faith",
      -  "family",
      -  "film",
      -  "food_drink",
      -  "games",
      -  "markets",
      -  "networking",
      -  "nightlife",
      -  "nonprofit",
      -  "outdoors",
      -  "science",
      -  "sports",
      -  "startup",
      -  "talks",
      -  "wellness",
      -  "wine"
      -]New value: +[
      +  "arts",
      +  "books",
      +  "civic",
      +  "classes",
      +  "comedy",
      +  "community",
      +  "conferences",
      +  "culture",
      +  "faith",
      +  "family",
      +  "film",
      +  "food_drink",
      +  "games",
      +  "markets",
      +  "networking",
      +  "nightlife",
      +  "nonprofit",
      +  "outdoors",
      +  "science",
      +  "sports",
      +  "startup",
      +  "talks",
      +  "wellness",
      +  "wine",
      +  "business"
      +]
  16. Changed2 schema fields changed
    • changedInput schema / properties / city / description
      Previous value: -"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Albuquerque, Almaty, Anchorage, Atlanta, Baltimore, Bangkok, Beijing, Berlin, Buffalo, Cairo, Cancún, Cape Town, Cincinnati, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Guangzhou, Havana, Honolulu, Houston, Inland Empire, Las Vegas, London, Mexico City, Miami, Minneapolis-St. Paul, Montreal, Nashville, New Orleans, New York, Paris, Philadelphia, Phoenix, Pittsburgh, Portland, Richmond, Rome, Salt Lake City, San Juan, Savannah, Seoul, Shanghai, St. Louis, Sydney, Tokyo, Toronto, Vancouver. list_cities has the full list."New value: +"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Albuquerque, Almaty, Anchorage, Atlanta, Baltimore, Bangkok, Beijing, Berlin, Buffalo, Cairo, Cancún, Cape Town, Cincinnati, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Fresno, Guangzhou, Havana, Honolulu, Houston, Inland Empire, Kansas City, Las Vegas, London, Mexico City, Miami, Minneapolis-St. Paul, Montreal, Nashville, New Orleans, New York, Paris, Philadelphia, Phoenix, Pittsburgh, Portland, Raleigh, Richmond, Rome, Salt Lake City, San Antonio, San Juan, Savannah, Seoul, Shanghai, St. Louis, Sydney, Tokyo, Toronto, Vancouver. list_cities has the full list."
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "attribution": {
      +      "type": "string"
      +    },
      +    "city": {
      +      "type": "string"
      +    },
      +    "count": {
      +      "description": "Events that matched in total",
      +      "type": "number"
      +    },
      +    "coverage": {
      +      "description": "Coverage and accuracy page",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "data_generated": {
      +      "description": "When this city's data was last published",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "events": {
      +      "items": {
      +        "properties": {
      +          "audience": {
      +            "description": "kids, teens or seniors when the event is only for them",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "biz_formats": {
      +            "items": {
      +              "type": "string"
      +            },
      +            "type": "array"
      +          },
      +          "categories": {
      +            "items": {
      +              "type": "string"
      +            },
      +            "type": "array"
      +          },
      +          "city": {
      +            "description": "Town or city within the metro",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "date": {
      +            "description": "Local start date, YYYY-MM-DD",
      +            "type": "string"
      +          },
      +          "distance_km": {
      +            "description": "With near: distance from the place",
      +            "type": "number"
      +          },
      +          "end": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "first_seen": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "free": {
      +            "type": "boolean"
      +          },
      +          "id": {
      +            "description": "Stable 12-character id; pass it to get_event",
      +            "type": "string"
      +          },
      +          "last_fetched": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "last_seen": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "link": {
      +            "description": "The original listing; keep it and credit What's Up In",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "location": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "neighborhood": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "performers": {
      +            "items": {
      +              "type": "string"
      +            },
      +            "type": "array"
      +          },
      +          "possibly_free": {
      +            "type": "boolean"
      +          },
      +          "posted_by_sources": {
      +            "type": "number"
      +          },
      +          "price": {
      +            "description": "All-in price as the source states it, \"Free\", or \"See tickets\" when the source doesn't state the all-in total",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "recurring": {
      +            "description": "weekly, biweekly or monthly when the event is one date of a series",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "region": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "rv": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "sectors": {
      +            "items": {
      +              "type": "string"
      +            },
      +            "type": "array"
      +          },
      +          "sold_out": {
      +            "type": "boolean"
      +          },
      +          "sources": {
      +            "items": {
      +              "type": "string"
      +            },
      +            "type": "array"
      +          },
      +          "start": {
      +            "description": "Local start, ISO 8601, when the source gives a time",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "title": {
      +            "type": "string"
      +          },
      +          "topics": {
      +            "items": {
      +              "type": "string"
      +            },
      +            "type": "array"
      +          }
      +        },
      +        "required": [
      +          "id",
      +          "title",
      +          "date"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "place": {
      +      "properties": {
      +        "center": {
      +          "items": {
      +            "type": "number"
      +          },
      +          "type": "array"
      +        },
      +        "kind": {
      +          "type": [
      +            "string",
      +            "null"
      +          ]
      +        },
      +        "matched": {
      +          "type": [
      +            "string",
      +            "null"
      +          ]
      +        },
      +        "note": {
      +          "type": [
      +            "string",
      +            "null"
      +          ]
      +        },
      +        "radius_km": {
      +          "type": [
      +            "number",
      +            "null"
      +          ]
      +        },
      +        "unplaced_events": {
      +          "description": "Events left out because their venue isn't mapped",
      +          "type": "number"
      +        }
      +      },
      +      "required": [],
      +      "type": "object"
      +    },
      +    "shown": {
      +      "description": "Events returned (at most limit)",
      +      "type": "number"
      +    },
      +    "site": {
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "count",
      +    "shown",
      +    "events",
      +    "city"
      +  ],
      +  "type": "object"
      +}
  17. Changed1 schema field changed
    • changedInput schema / properties / city / description
      Previous value: -"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Almaty, Anchorage, Atlanta, Baltimore, Bangkok, Beijing, Berlin, Cairo, Cancún, Cape Town, Cincinnati, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Guangzhou, Havana, Honolulu, Houston, Inland Empire, Las Vegas, London, Mexico City, Miami, Minneapolis-St. Paul, Montreal, Nashville, New Orleans, New York, Paris, Philadelphia, Phoenix, Pittsburgh, Portland, Richmond, Rome, Salt Lake City, San Juan, Savannah, Seoul, Sydney, Tokyo, Toronto, Vancouver. list_cities has the full list."New value: +"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Albuquerque, Almaty, Anchorage, Atlanta, Baltimore, Bangkok, Beijing, Berlin, Buffalo, Cairo, Cancún, Cape Town, Cincinnati, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Guangzhou, Havana, Honolulu, Houston, Inland Empire, Las Vegas, London, Mexico City, Miami, Minneapolis-St. Paul, Montreal, Nashville, New Orleans, New York, Paris, Philadelphia, Phoenix, Pittsburgh, Portland, Richmond, Rome, Salt Lake City, San Juan, Savannah, Seoul, Shanghai, St. Louis, Sydney, Tokyo, Toronto, Vancouver. list_cities has the full list."
  18. Changed1 schema field changed
    • changedInput schema / properties / city / description
      Previous value: -"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Almaty, Atlanta, Bangkok, Beijing, Berlin, Cairo, Cancún, Cape Town, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Guangzhou, Honolulu, Houston, Las Vegas, London, Mexico City, Miami, Nashville, New York, Paris, Philadelphia, Phoenix, Pittsburgh, Portland, Rome, Seoul, Sydney, Tokyo. list_cities has the full list."New value: +"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Almaty, Anchorage, Atlanta, Baltimore, Bangkok, Beijing, Berlin, Cairo, Cancún, Cape Town, Cincinnati, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Guangzhou, Havana, Honolulu, Houston, Inland Empire, Las Vegas, London, Mexico City, Miami, Minneapolis-St. Paul, Montreal, Nashville, New Orleans, New York, Paris, Philadelphia, Phoenix, Pittsburgh, Portland, Richmond, Rome, Salt Lake City, San Juan, Savannah, Seoul, Sydney, Tokyo, Toronto, Vancouver. list_cities has the full list."
  19. Changed1 schema field changed
    • changedInput schema / properties / city / description
      Previous value: -"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Atlanta, Beijing, Berlin, Cairo, Cancún, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Guangzhou, Honolulu, Houston, Las Vegas, London, Mexico City, Miami, Nashville, New York, Paris, Philadelphia, Phoenix, Pittsburgh, Portland, Rome, Sydney, Tokyo. list_cities has the full list."New value: +"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Almaty, Atlanta, Bangkok, Beijing, Berlin, Cairo, Cancún, Cape Town, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Guangzhou, Honolulu, Houston, Las Vegas, London, Mexico City, Miami, Nashville, New York, Paris, Philadelphia, Phoenix, Pittsburgh, Portland, Rome, Seoul, Sydney, Tokyo. list_cities has the full list."
  20. Changed1 schema field changed
    • changedInput schema / properties / city / description
      Previous value: -"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Atlanta, Berlin, Cancún, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Honolulu, Houston, Las Vegas, London, Mexico City, Miami, Nashville, New York, Philadelphia, Phoenix, Pittsburgh, Portland, Rome, Tokyo. list_cities has the full list."New value: +"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Atlanta, Beijing, Berlin, Cairo, Cancún, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Guangzhou, Honolulu, Houston, Las Vegas, London, Mexico City, Miami, Nashville, New York, Paris, Philadelphia, Phoenix, Pittsburgh, Portland, Rome, Sydney, Tokyo. list_cities has the full list."
  21. Changed1 schema field changed
    • changedInput schema / properties / city / description
      Previous value: -"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Atlanta, Cancún, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Honolulu, Houston, Las Vegas, London, Mexico City, Miami, Nashville, New York, Philadelphia, Phoenix, Pittsburgh, Portland, Rome, Tokyo. list_cities has the full list."New value: +"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Atlanta, Berlin, Cancún, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Honolulu, Houston, Las Vegas, London, Mexico City, Miami, Nashville, New York, Philadelphia, Phoenix, Pittsburgh, Portland, Rome, Tokyo. list_cities has the full list."
  22. Changed1 schema field changed
    • changedInput schema / properties / city / description
      Previous value: -"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Atlanta, Cancún, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Honolulu, Las Vegas, London, Mexico City, Miami, Nashville, New York, Philadelphia, Phoenix, Pittsburgh, Portland, Rome, Tokyo. list_cities has the full list."New value: +"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Atlanta, Cancún, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Honolulu, Houston, Las Vegas, London, Mexico City, Miami, Nashville, New York, Philadelphia, Phoenix, Pittsburgh, Portland, Rome, Tokyo. list_cities has the full list."
  23. Changed1 schema field changed
    • changedInput schema / properties / city / description
      Previous value: -"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Cancún, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Honolulu, Mexico City, Miami, Nashville, New York, Philadelphia, Phoenix, Pittsburgh, Portland, Tokyo. list_cities has the full list."New value: +"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Atlanta, Cancún, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Honolulu, Las Vegas, London, Mexico City, Miami, Nashville, New York, Philadelphia, Phoenix, Pittsburgh, Portland, Rome, Tokyo. list_cities has the full list."
  24. Changed1 schema field changed
    • changedInput schema / properties / city / description
      Previous value: -"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Cancún, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Honolulu, Mexico City, Miami, Nashville, New York, Philadelphia, Pittsburgh, Portland, Tokyo. list_cities has the full list."New value: +"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Cancún, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Honolulu, Mexico City, Miami, Nashville, New York, Philadelphia, Phoenix, Pittsburgh, Portland, Tokyo. list_cities has the full list."
  25. Changed1 schema field changed
    • changedInput schema / properties / city / description
      Previous value: -"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Cancún, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Honolulu, Mexico City, Nashville, New York, Philadelphia, Pittsburgh, Portland, Tokyo. list_cities has the full list."New value: +"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Cancún, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Honolulu, Mexico City, Miami, Nashville, New York, Philadelphia, Pittsburgh, Portland, Tokyo. list_cities has the full list."
  26. Changed1 schema field changed
    • changedInput schema / properties / city / description
      Previous value: -"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Cancún, Dallas-Fort Worth, DC, Denver, Detroit, Honolulu, Mexico City, Nashville, New York, Philadelphia, Phoenix, Portland, Tokyo. list_cities has the full list."New value: +"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Cancún, Cleveland, Dallas-Fort Worth, DC, Denver, Detroit, Honolulu, Mexico City, Nashville, New York, Philadelphia, Pittsburgh, Portland, Tokyo. list_cities has the full list."
  27. Changed1 schema field changed
    • changedInput schema / properties / city / description
      Previous value: -"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Dallas-Fort Worth, DC, Honolulu, New York, Philadelphia, Portland. list_cities has the full list."New value: +"Which city (name or slug): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Cancún, Dallas-Fort Worth, DC, Denver, Detroit, Honolulu, Mexico City, Nashville, New York, Philadelphia, Phoenix, Portland, Tokyo. list_cities has the full list."
  28. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already declare readOnly, idempotent, non-destructive, and closed-world, so safety is covered; the description adds operationally valuable context beyond that: no sign-in required, rate limits of 30 calls/minute and 2,500 event rows/hour, earliest-first ordering, and the key advice that `count` reports total matches so you should narrow the search rather than page. It also discloses fuzzy-matching behavior (misspellings resolved to the closest known word, echoed back in `search`), which is non-obvious and would otherwise surprise an agent.

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?

It is a single dense paragraph, but it is front-loaded with purpose and disambiguation before query syntax and rate limits, and nearly every clause carries actionable information. A few items (the full topic enumeration in prose) partially duplicate the schema enums and could be trimmed without loss.

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 14-parameter search tool with an output schema, the description covers everything an agent needs: when to use it versus siblings, how queries are interpreted, date locality, ordering and limit behavior, the count/narrow-don't-page rule, and how to follow up on individual results via `id`/get_event and `changes.synced_at`. The output schema handles return shape, so nothing essential is missing.

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?

Schema coverage is 100%, so the baseline is 3; the description goes further by explaining match semantics that the schema does not — words match title/venue/performers/organizer/tags at word start, singular or plural, with common synonyms, `match: all` as default and `any` accepting | or comma-separated alternatives, and that dates are the city's local dates. That materially changes how an agent should phrase queries and interpret `from`/`to`.

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?

"Search every upcoming event in one What's Up In city" gives a specific verb, resource, and scope, then enumerates the content domains it covers (music, dance, AI/tech, arts, comedy, food, sports...). It explicitly names what it is not (list_upcoming, search_across_cities), so an agent can route without opening a schema.

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?

It states the positive trigger conditions (search words, a date range like "this weekend" as from/to, free-only, a town or area) and names two alternatives with the exact conditions that select them: day-by-day overview without search words → list_upcoming; multi-city artist/festival/conference → search_across_cities. When-not guidance is explicit.

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