ticketmaster-mcp
Provides tools for searching events, venues, and attractions through the Ticketmaster Discovery API, enabling discovery with flexible filtering and multiple output formats.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@ticketmaster-mcpfind music events in Austin this weekend"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Ticketmaster Discovery MCP Server
A Model Context Protocol server that provides tools for discovering events, venues, and attractions through the Ticketmaster Discovery API.
This implementation has been adapted from delorenj/mcp-server-ticketmaster with enhanced HTTP transport support.
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
Dual Transport Support: Streamable HTTP for production deployment and STDIO for local development
Installation & Setup
Prerequisites
You'll need a Ticketmaster API key:
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 Options
Option 1: Direct Installation (Recommended)
# Clone and build locally
git clone https://github.com/your-org/ticketmaster-mcp.git
cd ticketmaster-mcp
npm install
npm run buildOption 2: NPM Package Installation
Note: Package publishing to NPM pending
npm install -g @your-org/mcp-server-ticketmaster-discoveryConfiguration
For Production Deployment (Streamable HTTP)
Streamable HTTP transport is designed for cloud deployment and production use cases where the server runs as a web service.
Environment Configuration:
# Required
TICKETMASTER_API_KEY=your-consumer-key-here
# For cloud deployment
PORT=8080 # Port will be injected by cloud platform
SERVER_URL=https://your-service.example.com # Your service domain
NODE_ENV=productionStart the server:
# Cloud deployment (reads PORT from environment)
npm start
# Local testing with specific port
npm run dev:shttpClient Configuration:
{
"mcpServers": {
"ticketmaster": {
"url": "https://your-service.example.com/mcp"
}
}
}For Local Development (STDIO)
STDIO transport is designed for local development and testing. It cannot be deployed on cloud platforms as it requires direct process communication.
Environment Configuration:
TICKETMASTER_API_KEY=your-consumer-key-hereStart the server:
# Local development
npm run dev:stdioClient Configuration:
{
"mcpServers": {
"ticketmaster": {
"command": "node",
"args": ["path/to/ticketmaster-mcp/build/index.js"],
"env": {
"TICKETMASTER_API_KEY": "your-consumer-key-here"
}
}
}
}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 phrasestartDate(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 searchstateCode(string): State code (e.g., "NY", "CA")countryCode(string): Country code (e.g., "US", "CA")venueId(string): Specific Ticketmaster venue IDattractionId(string): Specific Ticketmaster attraction IDclassificationName(string): Event category (e.g., "Sports", "Music", "Theater")format(string): Output format -"json"(default) or"text"
Usage Examples
MCP Client Integration
// Search for upcoming concerts in New York
{
"tool": "search_ticketmaster",
"arguments": {
"type": "event",
"keyword": "concert",
"city": "New York",
"stateCode": "NY",
"startDate": "2025-01-01",
"classificationName": "Music",
"format": "text"
}
}HTTP API Testing
# Initialize session
SESSION_ID=$(curl -s -D - http://localhost:3001/mcp \
-H "Accept: application/json, text/event-stream" \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "initialize",
"params": {
"protocolVersion": "2025-06-18",
"capabilities": { "tools": {} },
"clientInfo": { "name": "TestClient", "version": "1.0.0" }
}
}' | grep -i mcp-session-id | cut -d' ' -f2 | tr -d '\r')
# Send initialized notification
curl http://localhost:3001/mcp \
-H "Accept: application/json, text/event-stream" \
-H "Content-Type: application/json" \
-H "Mcp-Session-Id: $SESSION_ID" \
-d '{"jsonrpc": "2.0", "method": "notifications/initialized"}'
# Search for events
curl http://localhost:3001/mcp \
-H "Accept: application/json, text/event-stream" \
-H "Content-Type: application/json" \
-H "Mcp-Session-Id: $SESSION_ID" \
-d '{
"jsonrpc": "2.0",
"id": 3,
"method": "tools/call",
"params": {
"name": "search_ticketmaster",
"arguments": {
"type": "event",
"city": "San Francisco",
"format": "text"
}
}
}'Development
Local Development
# Clone repository
git clone <repository-url>
cd ticketmaster-mcp
# Set up environment
cp .env.example .env
# Edit .env with your Ticketmaster API key
# Install dependencies
npm install
# Build TypeScript
npm run build
# Start development server
npm run dev
# Run with TypeScript watch mode
npm run watchTransport Architecture
This server supports two transport mechanisms optimized for different use cases:
Streamable HTTP Transport
Use case: Production deployment, cloud platforms, web integration
Endpoint:
/mcpFeatures: Session-based, concurrent clients, scalable, health checks
Deployment: Compatible with cloud platforms (AWS, GCP, Azure, etc.)
STDIO Transport
Use case: Local development, testing, MCP client debugging
Features: Direct process communication, simple setup, ideal for development workflows
Limitation: Cannot be deployed on cloud platforms due to process communication requirements
Testing
# Test with MCP Inspector (STDIO)
npm run inspector
# Test STDIO transport
npm run dev:stdio
# Test HTTP transport locally
npm run dev:shttp
# Then use curl commands from examples aboveRate 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.
Contributing
Contributions are welcome! This project builds upon the excellent foundation from delorenj/mcp-server-ticketmaster.
Development Guidelines
Fork the repository
Create a feature branch (
git checkout -b feature/amazing-feature)Commit your changes (
git commit -m 'Add amazing feature')Push to the branch (
git push origin feature/amazing-feature)Open a Pull Request
Please ensure:
TypeScript compilation passes (
npm run build)Code follows existing patterns
HTTP transport functionality is preserved
License
MIT License - see LICENSE file for details.
Credits
This implementation is adapted from delorenj/mcp-server-ticketmaster by Jarad DeLorenzo, with enhancements for streamable HTTP transport.
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/windsornguyen/ticketmaster-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server