Home / Developers

Ticket-alerts.live API & MCP server

Ticket-alerts.live makes its catalogue of monitored events available to AI agents and developers through a public MCP server, in-page WebMCP tools, a JSON search API and machine-readable pricing. Everything here is read-only and public, and needs no API key. Signing up for alerts still happens on the event page, where the user picks a plan and pays via Stripe (or chooses Free).

MCP server

https://ticket-alerts.live/mcp speaks the Model Context Protocol over Streamable HTTP. It's stateless and returns plain JSON responses (no SSE stream), with no authentication. Supported protocol versions: 2025-11-25, 2025-06-18, 2025-03-26, 2024-11-05.

Connect

Add it to any MCP client that supports remote servers. For Claude Code:

claude mcp add --transport http ticket-alerts https://ticket-alerts.live/mcp

Tools

ToolWhat it doesArguments
search_events Search the events and artists/festivals/teams that Ticket-alerts.live monitors for face-value resale tickets. query (required): string
limit: integer
list_upcoming_events List upcoming events Ticket-alerts.live is currently monitoring for face-value resale tickets, featured events first, then by date. category: "music" | "sport" | "festival" | "theatre" | "comedy" | "classical" | "family"
limit: integer
get_event Get full details for one tracked event: venue, city, dates, which official resale platform is monitored, a short description, the sign-up URL, and the alert plans with prices in the event's currency. slug (required): string
region: "uk" | "eu" | "us"
get_pricing Get Ticket-alerts.live plans and prices. region: "uk" | "eu" | "us"

All tools are read-only. Results come back as text and structuredContent; hosts that support MCP Apps also render them with the view below.

Resources

  • ui://ticket-alerts/results.html (text/html;profile=mcp-app): Interactive card view for event search results, event details and pricing (MCP Apps).
  • ticket-alerts://pricing (text/markdown): Plans and prices for every region, as Markdown. Same content as https://ticket-alerts.live/pricing.md.

Example request

curl -s https://ticket-alerts.live/mcp \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call",
       "params":{"name":"search_events","arguments":{"query":"Wimbledon"}}}'

WebMCP tools in the browser

Pages on ticket-alerts.live register WebMCP tools with document.modelContext, so a browser agent can act on the page without scraping it:

  • search_events and get_pricing on every page;
  • get_event_details and sign_up_for_event_alerts on event pages;
  • request_event_tracking on /track-new-event.

The sign-up and tracking tools fill in and submit the page's own form. Paid plans stop at the Stripe checkout on the page for the user to complete; the agent never enters card details.

Search API

GET /api/search.json?q=<query> matches event names, artists, festivals, teams, venues and cities (past and upcoming events). q takes 2–100 characters; shorter queries return no hits and longer ones a query_too_long error. Each response has up to 6 subject hits (artist, festival or team pages at /alerts/{slug}) and up to 12 event hits (/event/{slug}). Responses are edge-cached for 60 seconds.

GET https://ticket-alerts.live/api/search.json?q=oasis

{
  "q": "oasis",
  "hits": [
    { "type": "subject", "slug": "oasis", "name": "Oasis", "kind": "artist", "thumbnail_url": "…" },
    { "type": "event", "slug": "…", "name": "…", "venue": "…", "city": "…", "dates": "…", "thumbnail_url": "…" }
  ]
}

The full contract is in the OpenAPI spec at /openapi.json. For upcoming events only, with sign-up links and prices, use the MCP search_events and get_event tools.

Errors

Every error under /api/, including unknown paths, is a JSON RFC 9457 problem document (application/problem+json). Besides the standard fields it carries a stable code to branch on and a hint saying how to fix the request.

HTTP/1.1 400 Bad Request
Content-Type: application/problem+json

{
  "type": "https://ticket-alerts.live/developers#error-query_too_long",
  "title": "Query too long",
  "status": 400,
  "detail": "q is 140 characters; the maximum is 100.",
  "instance": "/api/search.json?q=…",
  "code": "query_too_long",
  "hint": "Shorten q to 100 characters or fewer: an artist, event, festival, team, venue or city name."
}
CodeStatusWhat to do
bad_request 400 Check the parameters against the OpenAPI spec at https://ticket-alerts.live/openapi.json.
query_too_long 400 Shorten q to 100 characters or fewer: an artist, event, festival, team, venue or city name.
not_found 404 See https://ticket-alerts.live/openapi.json for the available endpoints, e.g. GET /api/search.json?q=oasis.
method_not_allowed 405 The API is read-only: use GET (or HEAD).
internal_error 500 Retry after a few seconds. If it keeps failing, email support@ticket-alerts.live with the request URL.
search_unavailable 503 The event catalog could not be reached. Retry after the number of seconds in Retry-After.

Pricing data

Plans and prices for every region are published as Markdown at /pricing.md, as schema.org Offer JSON-LD on /pricing, and through the MCP get_pricing tool.

Terms and support

Use of these interfaces is covered by our Terms of Service. Please cache results rather than polling. Found a bug or need something else? Email support@ticket-alerts.live.