ticketmaster-mcp

ticketmaster-mcp

Provides tools for discovering events, venues, and attractions through the Ticketmaster Discovery API.

Category
访问服务器

README

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:

  1. Visit developer.ticketmaster.com
  2. Create an account and sign in
  3. Navigate to "My Apps" and create a new application
  4. 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 build

Option 2: NPM Package Installation

Note: Package publishing to NPM pending

npm install -g @your-org/mcp-server-ticketmaster-discovery

Configuration

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=production

Start the server:

# Cloud deployment (reads PORT from environment)
npm start

# Local testing with specific port
npm run dev:shttp

Client 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-here

Start the server:

# Local development
npm run dev:stdio

Client 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 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

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 watch

Transport Architecture

This server supports two transport mechanisms optimized for different use cases:

Streamable HTTP Transport

  • Use case: Production deployment, cloud platforms, web integration
  • Endpoint: /mcp
  • Features: 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 above

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.

Contributing

Contributions are welcome! This project builds upon the excellent foundation from delorenj/mcp-server-ticketmaster.

Development Guidelines

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. 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.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选