Skip to content

markswendsen-code/mcp-ticketmaster

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

2 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

@striderlabs/mcp-ticketmaster

MCP server for Ticketmaster β€” let AI agents search events, check ticket availability, select seats, and purchase tickets via browser automation.

Built by Strider Labs.

Features

  • Event Search β€” Search events by keyword, location, and date range
  • Event & Venue Details β€” Get comprehensive info about events and venues
  • Ticket Availability β€” Real-time availability checks with section details
  • Price Ranges β€” Full price tier breakdown including fees
  • Seat Selection β€” Choose specific sections or best available
  • Cart Management β€” Add tickets and view cart contents
  • Secure Purchase β€” Checkout with explicit confirmation gate
  • Order History β€” View past Ticketmaster orders
  • Session Persistence β€” Cookies saved to ~/.strider/ticketmaster/
  • Bot Detection Handling β€” Random delays, stealth patches, queue detection
  • CAPTCHA Awareness β€” Gracefully reports when manual intervention needed

Installation

npm install -g @striderlabs/mcp-ticketmaster
npx playwright install chromium

Configuration

Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "ticketmaster": {
      "command": "striderlabs-mcp-ticketmaster"
    }
  }
}

Or with npx:

{
  "mcpServers": {
    "ticketmaster": {
      "command": "npx",
      "args": ["-y", "@striderlabs/mcp-ticketmaster"]
    }
  }
}

Tools

Tool Description
ticketmaster_status Check login status and session info
ticketmaster_login Initiate login flow (returns URL for manual login)
ticketmaster_logout Clear session and cookies
ticketmaster_search_events Search events by keyword, location, date
ticketmaster_get_event Get detailed event information
ticketmaster_get_venues Find venues near a location
ticketmaster_get_venue Get venue details
ticketmaster_check_availability Check ticket availability for an event
ticketmaster_get_prices Get price ranges for an event
ticketmaster_select_seats Select seats/tickets (preview, no cart yet)
ticketmaster_add_to_cart Add tickets to cart
ticketmaster_view_cart View cart contents and totals
ticketmaster_checkout Purchase tickets (requires confirm=true)
ticketmaster_get_orders Get order history

Usage Examples

Search for events

ticketmaster_search_events(keyword="Taylor Swift", location="New York, NY")

Check availability and prices

ticketmaster_check_availability(eventId="Z698xZC2Z17aVaQe")
ticketmaster_get_prices(eventId="Z698xZC2Z17aVaQe")

Buy tickets flow

1. ticketmaster_search_events(keyword="Coldplay", location="Los Angeles")
2. ticketmaster_check_availability(eventId="<id from search>")
3. ticketmaster_get_prices(eventId="<id>")
4. ticketmaster_add_to_cart(eventId="<id>", quantity=2)
5. ticketmaster_view_cart()
6. ticketmaster_checkout(confirm=true)  // Only after explicit user confirmation!

Authentication Flow

Ticketmaster requires manual login (no automated login supported):

  1. Run ticketmaster_login β€” returns the login URL
  2. Open the URL in your browser and log in with your Ticketmaster account
  3. Run ticketmaster_status to verify the session was captured
  4. Session cookies are saved to ~/.strider/ticketmaster/ for future use

Bot Detection & Queue Handling

Ticketmaster actively detects automation. This server includes:

  • Random delays (800–2500ms) between actions to simulate human behavior
  • Stealth patches that mask webdriver fingerprints
  • Custom user agent mimicking real Chrome on macOS
  • Queue detection β€” if placed in a queue for high-demand events, waits up to 60 seconds
  • CAPTCHA detection β€” reports when CAPTCHA is encountered (manual intervention required)

Note: For high-demand events (major artists, playoffs, etc.), Ticketmaster's anti-bot systems may block automated access. If this happens, consider completing the purchase manually.

Purchase Safety

ticketmaster_checkout requires confirm=true to actually purchase tickets:

// Preview only (default):
ticketmaster_checkout()

// Actually purchase:
ticketmaster_checkout(confirm=true)  // Only with explicit user approval!

NEVER call ticketmaster_checkout(confirm=true) without getting explicit confirmation from the user first.

Configuration Directory

Sessions are stored at: ~/.strider/ticketmaster/

~/.strider/ticketmaster/
β”œβ”€β”€ cookies.json    # Browser session cookies
└── session.json    # Session metadata (email, login status)

Technical Details

  • Browser automation: Playwright (headless Chromium)
  • Stealth: Masks navigator.webdriver, spoofs plugin count, sets realistic user agent
  • Transport: MCP stdio
  • Language: TypeScript (compiled to dist/)

Limitations

  • Login must be completed manually (Ticketmaster blocks automated form submission)
  • CAPTCHA requires human intervention
  • High-demand events may be subject to queue systems
  • DOM selectors may break if Ticketmaster updates their UI
  • Delivery method and payment info must be pre-configured in your account

Troubleshooting

"Login required" β€” Run ticketmaster_login and complete login in your browser.

"CAPTCHA detected" β€” Open Ticketmaster in your browser, complete the CAPTCHA, then retry.

"Currently in queue" β€” High demand event. The server waits up to 60s. If it times out, try again.

"Could not find buy tickets button" β€” Event may be sold out or not yet on sale.

Prices show as "Unknown" β€” Ticketmaster may require login to display prices.

Development

git clone https://github.com/striderlabs/mcp-ticketmaster
cd mcp-ticketmaster
npm install
npx playwright install chromium
npm run build
npm start

License

MIT β€” Strider Labs

Releases

No releases published

Packages

 
 
 

Contributors