# What's Up In: local events (remote · whatsupin.ai)

Read-only search of upcoming local events worldwide: music, comedy, AI/tech, arts, food, sports.

- Trust score: 80/100 (high trust)
- Change this week: +4
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-11-05

## Components

- remote · `whatsupin.ai`: 80/100 (this document), [markdown](https://verifymcp.io/servers/ai-whatsupin-events/whatsupin.md), [page](https://verifymcp.io/servers/ai-whatsupin-events/whatsupin)

## Channel facts

- Endpoint: `https://whatsupin.ai/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `0.3.1`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-11-05.

- **Endpoint Security**: 80/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - No authorisation is required to call this server. Nothing on it is marked destructive, but we can't show that an anonymous caller can only read: full credit needs the server to list at least one tool and every tool to be verifiably read-only. We use a best-effort check of tool names and descriptions to tell read-only tools from tools that change things, so some genuinely read-only tools may not get full credit. Names that start with a read verb (get, list, read, search and similar) and accurate readOnlyHint annotations help. Meet that to earn full credit, or require authorisation.
  - HTTPS is enforced; there's no plaintext access path.
  - The HSTS (Strict-Transport-Security) header is present.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 59/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 2821 tokens (~470/item across 6 items; 6 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 67/100
  - Stability observed for 20 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 98/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 94% of tool parameters carry a description.
  - Structured output schemas are declared (100% of tools); any adoption earns full credit.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 6 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 7 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### How do I install the What's Up In: local events MCP server?

What's Up In: local events is a hosted endpoint at https://whatsupin.ai/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http ai-whatsupin-events 'https://whatsupin.ai/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "ai-whatsupin-events": {
      "url": "https://whatsupin.ai/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "ai-whatsupin-events": {
      "type": "http",
      "url": "https://whatsupin.ai/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.ai-whatsupin-events]
url = "https://whatsupin.ai/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "ai-whatsupin-events": {
      "type": "remote",
      "url": "https://whatsupin.ai/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add ai-whatsupin-events --url 'https://whatsupin.ai/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  ai-whatsupin-events:
    url: "https://whatsupin.ai/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "ai-whatsupin-events": {
      "Transport": "http",
      "Url": "https://whatsupin.ai/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add ai-whatsupin-events -t streamable-http -u 'https://whatsupin.ai/mcp'
```

### Other

```json
{
  "mcpServers": {
    "ai-whatsupin-events": {
      "type": "http",
      "url": "https://whatsupin.ai/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-11-05 (score 80, +1)

No change was recorded against any check on this day. Stability & Change Management went from 63 to 67. That category is still filling its 30-day observation window: 19 days of observed history at the previous scan, 20 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-11-03 (score 79, +1)

No change was recorded against any check on this day. Stability & Change Management went from 57 to 60. That category is still filling its 30-day observation window: 17 days of observed history at the previous scan, 18 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-11-01 (score 78, +1)

No change was recorded against any check on this day. Stability & Change Management went from 50 to 53. That category is still filling its 30-day observation window: 15 days of observed history at the previous scan, 16 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-30 (score 77, +1)

No change was recorded against any check on this day. Stability & Change Management went from 43 to 47. That category is still filling its 30-day observation window: 13 days of observed history at the previous scan, 14 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-29 (score 76, 0)

- [security] The server rewrote its instructions, which are the text every model session reads
- [functional improvement] Schema quality: 566 → 470
- [cosmetic] “get_city” reworded the description of “city”
- [cosmetic] “get_event” reworded the description of “city”
- [cosmetic] “list_upcoming” reworded the description of “city”
- [cosmetic] “search_across_cities” reworded the description of “cities”
- [cosmetic] “search_events” reworded the description of “city”

### 2026-10-28 (score 76, +1)

No change was recorded against any check on this day. Stability & Change Management went from 37 to 40. That category is still filling its 30-day observation window: 11 days of observed history at the previous scan, 12 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-26 (score 75, +1)

No change was recorded against any check on this day. Stability & Change Management went from 30 to 33. That category is still filling its 30-day observation window: 9 days of observed history at the previous scan, 10 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-25 (score 74, +2)

- [security improvement] HSTS header: fail → pass
- [security] The server rewrote its instructions, which are the text every model session reads
- [cosmetic] “list_upcoming” added an optional parameter “changed_since”
- [cosmetic] “search_events” added an optional parameter “changed_since”
- [cosmetic] “get_city” reworded the description of “city”
- [cosmetic] “get_event” reworded the description of “city”
- [cosmetic] “list_upcoming” reworded the description of “city”
- [cosmetic] “search_across_cities” reworded the description of “cities”
- [cosmetic] “search_events” reworded the description of “city”

## MCP tools (6)

### `search_events` (~781 tokens)

Search events in one city

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 parameters:

- `category` (string): Scored category
- `changed_since` (string): 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…
- `city` (string, required): 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 Ve…
- `free` (boolean): Only free events
- `from` (string): Earliest date, YYYY-MM-DD (default: today)
- `limit` (integer): Max results (default 25)
- `match` (string): all (default): every word must match; any: at least one word or |-separated phrase does
- `near` (string): Events 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.
- `neighborhood` (string): Only 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 t…
- `query` (string): 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.
- `radius_km` (number): Distance for near (default 1.5, max 50), or how far neighborhood reaches past its boundary (default 0)
- `to` (string): Latest date, YYYY-MM-DD (default: none)
- `topic` (string): Topic, e.g. comedy, film, food_drink, sports, talks, classes, markets, outdoors
- `town` (string): Only events in this town or city within the metro, e.g. 'Oakland', 'Pasadena' (case-insensitive)

Output parameters:

- `attribution` (string)
- `briefing_url` (string|null): 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"
- `changes` (object): Only with changed_since
- `city` (string)
- `count` (number): Events that matched in total
- `coverage` (string|null): Coverage and accuracy page
- `data_generated` (string|null): When this city's data was last published
- `events` (array)
- `place` (object)
- `search` (object): How the query was read
- `shown` (number): Events returned (at most limit)
- `site` (string)

### `list_upcoming` (~522 tokens)

List upcoming events in one city

Browse the next N days of events in one What's Up In city, day by day, with no search words. `by_day` counts every match per date, and when more events match than `limit` the rows are spread evenly across the days, so each day is represented. Use it for overviews like "what's happening in <city> this week"; for search words, free-only, a town or exact from/to dates use search_events, and for one event's details get_event. Optional filters: one category or topic, and a place: `neighborhood` keeps events inside a named area (radius_km widens it past the boundary), `near` ranks events by distance from a place or "lat,lon" within radius_km. get_city lists valid neighborhood names. No sign-in; each client gets 30 calls a minute and 2,500 event rows an hour.

Input parameters:

- `category` (string)
- `changed_since` (string): 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…
- `city` (string, required): 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 Ve…
- `days` (integer): Window in days (default 7)
- `limit` (integer): Max rows (default 50)
- `near` (string): Events 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.
- `neighborhood` (string): Only 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 t…
- `radius_km` (number): Distance for near (default 1.5, max 50), or how far neighborhood reaches past its boundary (default 0)
- `topic` (string)

Output parameters:

- `attribution` (string)
- `briefing_url` (string|null): 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"
- `by_day` (object): Matches per date (YYYY-MM-DD), all of them, not just the rows shown
- `changes` (object): Only with changed_since
- `city` (string)
- `count` (number): Events that matched in total
- `coverage` (string|null): Coverage and accuracy page
- `data_generated` (string|null): When this city's data was last published
- `events` (array)
- `note` (string|null)
- `place` (object)
- `shown` (number): Events returned (at most limit)
- `site` (string)

### `get_event` (~231 tokens)

Get one event

Get the full listing for one upcoming event by the `id` that search_events or list_upcoming returned, passing the same `city` it came from: title, dates, venue, price (all-in, or "See tickets"), the original listing (`link`), every source that lists it and first_seen / last_seen / last_fetched dates. Ids stay the same while an event is listed; a past or removed event returns an error, so search again. (search_across_cities results carry `on_site` links instead.) No sign-in; each client gets 30 calls a minute and 2,500 event rows an hour.

Input parameters:

- `city` (string, required): 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 Ve…
- `id` (string, required): 12-character event id

Output parameters:

- `attribution` (string)
- `city` (string)
- `coverage` (string|null): Coverage and accuracy page
- `data_generated` (string|null): When this city's data was last published
- `event` (object)
- `site` (string)

### `search_across_cities` (~725 tokens)

Search events across all cities

Search upcoming travel-worthy events in every What's Up In city at once: where an artist, band, comedian or team is playing, which cities have a festival, conference or expo, big arena shows, games and races. Only events worth a trip are indexed (named performers, festivals, conferences/expos, arena shows, games, races), not every local listing: for everything in one city (small gigs, classes, meetups) use search_events with its city. Kind `residency` also searches a worldwide list of residencies (pop-up cities, hacker houses, founder and research residencies, fellowship cohorts; most outside our cities, e.g. Kobe or Goa; in person, hybrid or remote; fixed dates, a start only, or rolling intake), each with its application details. Give a `query`, at least one of `kinds`, or a place. Each result names its city and links to the original listing (`link`) and the event on that city's site (`on_site`); `searched` says which cities were included and how fresh each is. No sign-in; each client gets 30 calls a minute and 2,500 event rows an hour.

Input parameters:

- `cities` (array): Only these cities (names or slugs): Boston, Chicago, Los Angeles, Orange County, Sacramento, San Diego, San Francisco, Seattle, Atlanta, Cancún, Colorado Springs & Pueblo, DC, Denver, Detroit, Housto…
- `from` (string): YYYY-MM-DD, default today
- `kinds` (array): Only these kinds: act = named performers; festival = festival; major = major local festival; conference = conference / expo; big_show = arena or amphitheater show; game = sports game (any level); pro…
- `limit` (integer): Default 50
- `near` (string): "lat,lon": only events within radius_km of it, with distance_km. (search_events also takes place names.) Unmapped venues are left out (place.unplaced_events).
- `neighborhood` (string): Only events in this neighborhood or town (whole words, e.g. 'Silver Lake', 'South End', 'Pasadena'). Events whose venue isn't mapped can't be placed and are left out; place.unplaced_events counts the…
- `query` (string): An artist, band, comedian, team, festival or conference name, or words to match in titles/performers/venues, e.g. 'Khruangbin', 'Oktoberfest', 'AI summit'. Optional when `kinds`, `neighborhood` or `n…
- `radius_km` (number): Radius for near (default 10, max 200)
- `to` (string): YYYY-MM-DD, optional
- `trip_only` (boolean): Only events worth a special trip (multi-day festivals, festivals on a city's watchlist, arena/amphitheater shows, multi-day conferences, full-distance races). Default: true when there is no query, fa…

Output parameters:

- `attribution` (string)
- `count` (number)
- `events` (array)
- `from` (string|null)
- `in_cities` (number)
- `looser_matches` (number): Weaker matches left out (the query only in a title or venue)
- `place` (object)
- `query` (string|null)
- `residencies_worldwide` (object): The worldwide residencies list the `residency` kind also searches
- `searched` (array): Which cities were searched and how fresh each is
- `shown` (number)
- `to` (string|null)

### `list_cities` (~126 tokens)

List cities

List every city What's Up In covers, with its site, its own MCP endpoint, its status (live or beta) and how many travel-worthy events it indexes now. Call it to find valid `city` values for search_events, list_upcoming, get_event and get_city, or names for search_across_cities' `cities`; for one city's neighborhoods, topics and event counts use get_city. Takes no arguments; the list changes only when a city launches. No sign-in; each client gets 30 calls a minute and 2,500 event rows an hour.

Output parameters:

- `attribution` (string)
- `cities` (array)

### `get_city` (~208 tokens)

Get one city's coverage

Get what one What's Up In city covers: how many upcoming events it lists and for which dates, when its data was last published, how many sources feed it, and upcoming events per category, topic, neighborhood and town. Call it before searching a city to pick valid category, topic, neighborhood and town values, or to tell a user what that city covers; it returns counts only, no events (use search_events or list_upcoming for those, list_cities for every city at once). No sign-in; each client gets 30 calls a minute and 2,500 event rows an hour.

Input parameters:

- `city` (string, required): 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 Ve…

Output parameters:

- `attribution` (string)
- `categories` (object): Upcoming events per category (search_events `category`)
- `city` (string)
- `coverage` (string|null): Coverage and accuracy page
- `data_generated` (string|null): When this city's data was last published
- `first_date` (string|null)
- `free_events` (number)
- `last_date` (string|null)
- `mcp` (string|null)
- `metro` (string|null)
- `name` (string|null)
- `neighborhoods` (object): Upcoming events per neighborhood (the `neighborhood` argument)
- `regions` (array)
- `site` (string|null)
- `timezone` (string|null)
- `topics` (object): Upcoming events per topic (search_events `topic`)
- `towns` (object): Upcoming events per town, the busiest first (search_events `town`)
- `upcoming_events` (number)

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/ai-whatsupin-events/whatsupin#diagnostics

## Score history

- 2026-11-05: 80
- 2026-11-04: 79
- 2026-11-03: 79
- 2026-11-02: 78
- 2026-11-01: 78
- 2026-10-31: 77
- 2026-10-30: 77
- 2026-10-29: 76
- 2026-10-28: 76
- 2026-10-27: 75
- 2026-10-26: 75
- 2026-10-25: 74
- 2026-10-24: 72
- 2026-10-23: 71
- 2026-10-22: 71
- 2026-10-21: 70
- 2026-10-20: 70
- 2026-10-19: 69
- 2026-10-18: 66
- 2026-10-17: 65
- 2026-10-16: 65

## Common questions

### What is the What's Up In: local events MCP server?

What's Up In: local events is an MCP server listed in the public MCP registry as ai.whatsupin/events. Read-only search of upcoming local events worldwide: music, comedy, AI/tech, arts, food, sports. This page covers its hosted endpoint (https://whatsupin.ai/mcp).

### Is the What's Up In: local events MCP server safe to use?

What's Up In: local events scores 80 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the What's Up In: local events MCP server expose?

What's Up In: local events exposes 6 tools: search_events, list_upcoming, get_event, search_across_cities, list_cities, get_city. Their descriptions and schemas cost roughly 2,593 tokens of context every time the server is loaded.

### Does the What's Up In: local events MCP server require authentication?

No. We connected to What's Up In: local events without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

### Is the What's Up In: local events MCP server still maintained?

What's Up In: local events is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

### What did VerifyMCP test on the What's Up In: local events MCP server?

VerifyMCP ran 13 checks on What's Up In: local events, covering TLS certificate, Authorization, HTTPS, HSTS header and 9 more. Supply Chain Security and Provenance & Transparency do not apply to a hosted endpoint, so they were not tested. The score does not measure everything, and the scoring documentation lists what it leaves out.

## Links

- Remote endpoint: https://whatsupin.ai/mcp
- Website: https://whatsupin.ai/
- Changelog RSS feed: https://verifymcp.io/servers/ai-whatsupin-events/whatsupin.xml
- Changelog JSON feed: https://verifymcp.io/servers/ai-whatsupin-events/whatsupin/changelog.json
- Trust report (JSON): https://verifymcp.io/servers/ai-whatsupin-events/whatsupin.json
- HTML version of this page: https://verifymcp.io/servers/ai-whatsupin-events/whatsupin
