Skip to content

Spencer04Hire/ticketmaster-mcp

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ticketmaster Discovery MCP Server

A Model Context Protocol server that provides tools for discovering events, venues, and attractions through the Ticketmaster Discovery API.

Features

  • Comprehensive Search: Find events, venues, and attractions with flexible filtering
    • Keyword search across all content types
    • Date range filtering for events
    • Location-based search (city, state, country)
    • Venue-specific and attraction-specific searches
    • Event classification/category filtering
  • Multiple Output Formats:
    • Structured JSON data for programmatic use
    • Human-readable text for direct consumption
  • Rich Data: Complete information including names, dates, prices, URLs, images, locations, and classifications
  • Built with dedalus-mcp: Uses the Dedalus MCP framework for seamless integration

Installation & Setup

Prerequisites

  1. Python 3.10+ and uv package manager
  2. Ticketmaster API key:
    • Visit developer.ticketmaster.com
    • Create an account and sign in
    • Navigate to "My Apps" and create a new application
    • Copy your Consumer Key (this is your API key)

Installation

# Clone the repository
git clone https://github.com/Spencer04Hire/ticketmaster-mcp.git
cd ticketmaster-mcp

# Install dependencies with uv
uv sync

Configuration

Create a .env file in the project root:

TICKETMASTER_API_KEY=your-consumer-key-here
PORT=8080  # Optional, defaults to 8080

Running the Server

# Activate the virtual environment and run
source .venv/bin/activate
cd src
python main.py

The server will start at http://127.0.0.1:8080/mcp.

API Reference

Available Tools

search_ticketmaster

Search for events, venues, or attractions on Ticketmaster.

Required Parameters:

  • type (string): Type of search - "event", "venue", or "attraction"

Optional Parameters:

  • keyword (string): Search term or phrase
  • startDate (string): Start date in YYYY-MM-DD format (events only)
  • endDate (string): End date in YYYY-MM-DD format (events only)
  • city (string): City name for location-based search
  • stateCode (string): State code (e.g., "NY", "CA")
  • countryCode (string): Country code (e.g., "US", "CA")
  • venueId (string): Specific Ticketmaster venue ID
  • attractionId (string): Specific Ticketmaster attraction ID
  • classificationName (string): Event category (e.g., "Sports", "Music", "Theater")
  • format (string): Output format - "json" (default) or "text"

Usage Examples

Search for Events

# Search for concerts in New York
{
    "type": "event",
    "keyword": "concert",
    "city": "New York",
    "stateCode": "NY",
    "classificationName": "Music"
}

# Search for events in a date range
{
    "type": "event",
    "startDate": "2026-02-01",
    "endDate": "2026-02-28"
}

Search for Venues

# Search for stadiums
{
    "type": "venue",
    "keyword": "stadium"
}

# Search for venues in Los Angeles
{
    "type": "venue",
    "city": "Los Angeles",
    "stateCode": "CA"
}

Search for Attractions

# Search for a specific artist
{
    "type": "attraction",
    "keyword": "Taylor Swift"
}

# Search for rock attractions
{
    "type": "attraction",
    "classificationName": "Rock"
}

Development

Project Structure

ticketmaster-mcp/
├── pyproject.toml      # Project configuration and dependencies
├── README.md
├── src/
│   ├── __init__.py
│   ├── main.py         # Entry point
│   ├── server.py       # MCP server setup
│   ├── client.py       # Ticketmaster API client
│   ├── models.py       # Pydantic data models
│   ├── formatters.py   # Text output formatters
│   ├── test_client.py  # Test client for the server
│   └── tools/
│       ├── __init__.py
│       └── search.py   # search_ticketmaster tool
└── uv.lock

Running Tests

With the server running in one terminal:

# In another terminal
source .venv/bin/activate
cd src
python test_client.py

Adding Dependencies

uv add <package-name>

Rate Limits & API Considerations

The Ticketmaster Discovery API has rate limits:

  • Sandbox Tier: 5 requests/second, 5,000 calls/day
  • Deep Paging: Limited to 1,000 items

For higher quotas or commercial usage, contact the Ticketmaster developer relations team through their portal.

License

MIT License - see LICENSE file for details.

Credits

Python implementation using the dedalus-mcp framework.

About

Ticketmaster MCP server built on the Ticketmaster Discovery API

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 100.0%