# SeatGeek MCP

> SeatGeek MCP Server lets your AI agent query real-time data from SeatGeek's database. Find event details, performer bios, and venue information for concerts, sports, and theater shows directly from any client.

## Overview
- **Category:** event-management
- **Price:** Free
- **Tags:** ticketing, concerts, live-events, venues, performers

## Description

This server connects your AI client directly to SeatGeek's live event database, giving you real-time access to everything from concert details to stadium capacity. You run this MCP Server so your agent can pull fresh data on concerts, sports games, and theater shows—no guesswork involved.

**Searching for Shows**
You gotta find an event? Use **`list_events`** to search the database across dates, specific keywords, or cities. If you nail down a unique ID after that initial list, **`get_event`** pulls back all the full metadata for that single show. To narrow your focus before searching, run **`list_taxonomies`**. This tool gives you a complete rundown of every event category—like 'Broadway' or 'Rock Concert'—so you can filter your search results right away.

**Tracking Performers and Artists**
Need to know who’s playing? You start with **`list_performers`**; this searches the whole pool for artists, bands, or athletes matching your terms. Once you have a specific performer's ID, **`get_performer`** pulls up their entire profile, including full bios and detailed history. It's everything you need on that act.

**Mapping Venues and Locations**
Where’s the action happening? You can run **`list_venues`** to get a list of potential locations across different areas. If you pick one venue by its ID, **`get_venue`** gives you specific details like the exact address and the total capacity. This keeps your whole operation grounded in real location data.

Your agent uses these tools together: You can search for multiple shows using **`list_events`**, filter that list using categories found via **`list_taxonomies`**, then check a venue's size with **`get_venue`** after finding its ID through **`list_venues`**. If you know the artist, **`list_performers`** gives you the search results, and **`get_performer`** completes the dossier. This server lets your client handle every single data lookup required for live entertainment planning.

## Tools

### list_events
Searches the database to list multiple events based on criteria like date, keyword, or city.

### get_event
Retrieves all metadata for one specific event using its unique ID.

### get_performer
Gets the full profile and details for a single performer or artist by their ID.

### get_venue
Retrieves specific information, like capacity and address, for one venue using its ID.

### list_performers
Searches and returns a list of performers (bands, athletes) that match your search terms.

### list_taxonomies
Lists all available event categories or types (e.g., 'Sports' or 'Concert') used by SeatGeek.

### list_venues
Searches and lists multiple venues across different locations in the database.

## Prompt Examples

**Prompt:** 
```
Search for upcoming rock concerts in Los Angeles using SeatGeek.
```

**Response:** 
```
I've found several rock concerts in Los Angeles. Notable events include 'The Rolling Stones' at SoFi Stadium and 'Arctic Monkeys' at The Forum. Would you like details for a specific one?
```

**Prompt:** 
```
Get the details for the venue with ID 150.
```

**Response:** 
```
Fetching venue details... Venue ID 150 is 'Madison Square Garden' located in New York. It has a capacity of approximately 20,000 and hosts various sports and music events.
```

**Prompt:** 
```
List all event taxonomies available on SeatGeek.
```

**Response:** 
```
I've retrieved the taxonomies. Categories include 'sports', 'concert', 'theater', 'ncaa_basketball', 'broadway_tickets_national', and many more. Which category are you interested in?
```

## Capabilities

### Search for upcoming events
Run `list_events` to get a list of shows matching criteria like date, city, or genre.

### Get specific event metadata
Use `get_event` with a unique ID to retrieve all full details for one particular show.

### Build performer dossiers
`list_performers` lets you search for artists, and `get_performer` pulls up the complete profile for any specific act.

### Map out event locations
You can use `list_venues` to find available venues, then run `get_venue` to see its capacity and details.

### Filter by event type
`list_taxonomies` returns a list of every category (like 'Broadway' or 'Sports') so you can narrow down your search.

## Use Cases

### Mapping a City's Event Density
A reporter needs to know all major events in Austin next month. Instead of browsing hundreds of listings, they tell their agent to run `list_events` with 'Austin' and the target date range. The agent returns a clean list of every potential event type (concert, sports) so the report can be written quickly.

### Validating a Partnership Venue
An event planner is vetting a new venue for a large concert. They first run `list_venues` to ensure the location exists, then immediately use `get_venue` on its ID to check the exact capacity and address details before committing.

### Tracking Performer Marketability
A market analyst wants to compare two bands. They run `list_performers` for both, then use `get_performer` on each ID to pull detailed bios and history data side-by-side, allowing for a direct comparison report.

### Building a Genre Filter
You want all theater shows but don't know the category slug. You first run `list_taxonomies` to see available categories like 'Broadway'. Then you use that slug with `list_events` to pull only relevant data.

## Benefits

- **Precision Data Retrieval:** Don't guess. Use `get_event` with a specific ID to pull every single piece of metadata needed for an event—dates, times, location details—in one go.
- **Comprehensive Filtering:** Need to know what kind of show it is? Run `list_taxonomies` first. This lets your agent filter results so you only see 'Broadway' shows when you were looking for theater, ignoring the sports listings.
- **Efficient Location Mapping:** Forget opening multiple tabs. Use `list_venues` to find a list of locations, then use `get_venue` to confirm capacity and address details on demand. It keeps your agent focused.
- **Quick Performer Check:** Instead of searching Google for an artist's bio, run `list_performers`. You get the structured data immediately so you can incorporate it into a report or script.
- **Scalable Event Search:** When you need to check multiple dates or cities, let your agent handle it. `list_events` runs bulk searches across criteria that would take you hours of manual clicking.

## How It Works

The bottom line is you get machine-readable event data without manually clicking through website menus.

1. First, subscribe to the SeatGeek MCP Server and provide your unique Client ID.
2. Next, ask your AI agent a request (e.g., 'List all concerts in Miami next month').
3. The agent identifies that it needs `list_events` or `list_venues`, runs the tool call, and returns structured data.

## Frequently Asked Questions

**How do I search for events using list_events?**
You call `list_events` and provide criteria like the city name or date range in your prompt. The agent runs the tool, giving you a structured list of potential shows.

**What is the difference between list_performers and get_performer?**
`list_performers` searches for performers based on criteria (like name or genre) and gives you many options. `get_performer` requires a specific performer ID to pull up one single, complete profile.

**Can I find out what kind of events are available with list_taxonomies?**
Yes. Running `list_taxonomies` returns every event category (e.g., 'Sports', 'Concert', 'Theater'). You then use that specific name to refine your searches with other tools.

**Is get_venue better than list_venues?**
It depends on what you know. If you have the venue ID, use `get_venue`. But if you only know the city or name, run `list_venues` first to find the correct ID.

**What credentials are needed to successfully run the `list_events` tool?**
You must supply a valid SeatGeek Client ID. This key authenticates your connection and allows the server to execute requests like `list_events` against their live data.

**If I use `get_event` with an invalid event ID, how will the server respond?**
The system returns a structured JSON error object. This message specifies the exact failure, such as 'Event not found' or 'Invalid scope,' letting you debug the lookup immediately.

**Are there rate limits when calling `list_performers`?**
Yes, standard API rate limits apply to all listing tools. Exceeding these limits results in a 429 error code, so you'll need to implement backoff logic.

**When I use `get_event`, does it provide detailed performer bios or do I need to call `get_performer`?**
`get_event` provides the core event metadata. For in-depth information, like full biographies or performance history, you must run `get_performer` using the specific ID listed.

**How can I find events happening in a specific city?**
You can use the `list_events` tool and provide the city name in the `venue_city` parameter. For example, searching for 'New York' will return all upcoming events in that location.

**Can I get detailed information about a specific music band or athlete?**
Yes! Use the `list_performers` tool to search for them by name, and then use `get_performer` with their specific ID to retrieve full metadata and bios.

**How do I see what types of event categories SeatGeek supports?**
Simply run the `list_taxonomies` tool. It will return a comprehensive list of all event categories (like sports, concerts, or theater) used by the platform.