MCP-Server

LiveSpot

se.livespot/mcp
Medien & Inhalte Reisen & Hospitality Öffentlich und erreichbar MCP 2025-11-25

Was dieses MCP kann

Searches and presents upcoming concerts, theatre, sports, festivals, and other events across Swedish cities with venue, date, and pricing details.

browse_city
Browse a city
List upcoming events in a city, optionally narrowed by category. Equivalent to search_events with just {city, category}. Returns markdown bullets where each title links to livespot.se — preserve those links when summarizing. City slugs are ASCII (goteborg, malmo); Swedish characters are normalized automatically.
Nur Lesen Externer Zugriff
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['city', 'category', 'limit'], 'properties': {'city': {'type': 'string', 'minLength': 1, 'description': 'City slug in ASCII (e.g. goteborg, malmo).'}, 'limit': {'type': 'integer', 'maximum': 50, 'minimum': 1, 'description': 'Max events to return. Default 10.'}, 'category': {'type': 'string', 'minLength': 1, 'description': 'Category slug to filter by.'}}}
Ausgabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['total', 'events'], 'properties': {'total': {'type': 'number', 'description': 'Total upcoming events matching the city/category.'}, 'events': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name'], 'properties': {'id': {'type': 'string', 'description': 'LiveSpot event id.'}, 'url': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'Canonical event page on livespot.se.'}, 'city': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'name': {'type': 'string', 'description': 'Event title.'}, 'slug': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'URL slug; the last 8 chars work as a short id.'}, 'sport': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'venue': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'source': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'Ticketing provider the listing came from.'}, 'currency': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'ISO 4217, usually SEK.'}, 'end_date': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'End date/time, ISO 8601.'}, 'away_team': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'home_team': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'image_url': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'price_max': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Highest ticket price, in `currency`.'}, 'price_min': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Lowest ticket price, in `currency`.'}, 'categories': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'description': 'Category slugs.'}, 'performers': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}]}, 'start_date': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'Start date/time, ISO 8601.'}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'availability': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'Ticketing status, e.g. AVAILABLE.'}, 'event_status': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'Lifecycle status, e.g. scheduled/cancelled.'}, 'description_en': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'description_sv': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'start_time_tbd': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'description': 'True when only the day is known.'}}, 'additionalProperties': False}, 'description': 'Matching events.'}}, 'additionalProperties': False}
fetch
Fetch (Deep Research)
Fetch a single LiveSpot event document. Returns { id, title, text, url, metadata } per the OpenAI Deep Research spec.
Nur Lesen Externer Zugriff
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'string', 'minLength': 1, 'description': 'Resource id (event id or slug) returned by search.'}}}
Ausgabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id', 'title', 'text', 'url', 'metadata'], 'properties': {'id': {'type': 'string'}, 'url': {'type': 'string'}, 'text': {'type': 'string'}, 'title': {'type': 'string'}, 'metadata': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'null'}]}}}, 'additionalProperties': False}
get_event
Get event details
Fetch the full detail for a single event. Accepts a full event id, a full slug, or the 8-character short id at the end of a slug (e.g. "f13a31ab"), as returned by search_events, browse_city, and search. Returns a markdown block with a linked title heading plus description, venue, city, date, and price. Preserve the title link when citing the event so users can click through.
Nur Lesen Externer Zugriff
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'string', 'minLength': 1, 'description': 'Event id, slug, or short-id prefix as returned by search_events.'}}}
Ausgabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id', 'name'], 'properties': {'id': {'type': 'string', 'description': 'LiveSpot event id.'}, 'url': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'Canonical event page on livespot.se.'}, 'city': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'name': {'type': 'string', 'description': 'Event title.'}, 'slug': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'URL slug; the last 8 chars work as a short id.'}, 'sport': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'venue': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'source': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'Ticketing provider the listing came from.'}, 'currency': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'ISO 4217, usually SEK.'}, 'end_date': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'End date/time, ISO 8601.'}, 'away_team': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'home_team': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'image_url': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'price_max': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Highest ticket price, in `currency`.'}, 'price_min': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Lowest ticket price, in `currency`.'}, 'categories': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'description': 'Category slugs.'}, 'performers': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}]}, 'start_date': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'Start date/time, ISO 8601.'}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'availability': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'Ticketing status, e.g. AVAILABLE.'}, 'event_status': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'Lifecycle status, e.g. scheduled/cancelled.'}, 'description_en': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'description_sv': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'start_time_tbd': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'description': 'True when only the day is known.'}}, 'additionalProperties': False}
get_related_events
Get related events
Find events related to a given event (same city, nearby date, overlapping category). Returns markdown bullets where each title links to livespot.se — preserve those links when summarizing.
Nur Lesen Externer Zugriff
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id', 'limit'], 'properties': {'id': {'type': 'string', 'minLength': 1, 'description': 'Event id or slug.'}, 'limit': {'type': 'integer', 'maximum': 12, 'minimum': 1, 'description': 'Max related events. Default 6.'}}}
Ausgabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['events'], 'properties': {'events': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name'], 'properties': {'id': {'type': 'string', 'description': 'LiveSpot event id.'}, 'url': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'Canonical event page on livespot.se.'}, 'city': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'name': {'type': 'string', 'description': 'Event title.'}, 'slug': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'URL slug; the last 8 chars work as a short id.'}, 'sport': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'venue': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'source': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'Ticketing provider the listing came from.'}, 'currency': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'ISO 4217, usually SEK.'}, 'end_date': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'End date/time, ISO 8601.'}, 'away_team': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'home_team': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'image_url': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'price_max': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Highest ticket price, in `currency`.'}, 'price_min': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Lowest ticket price, in `currency`.'}, 'categories': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'description': 'Category slugs.'}, 'performers': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}]}, 'start_date': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'Start date/time, ISO 8601.'}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'availability': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'Ticketing status, e.g. AVAILABLE.'}, 'event_status': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'Lifecycle status, e.g. scheduled/cancelled.'}, 'description_en': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'description_sv': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'start_time_tbd': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'description': 'True when only the day is known.'}}, 'additionalProperties': False}, 'description': 'Matching events.'}}, 'additionalProperties': False}
list_categories
List categories
Return the canonical LiveSpot category catalog with both Swedish and English slugs. Pass either slug to other tools as `category`.
Nur Lesen Externer Zugriff
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Ausgabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['categories'], 'properties': {'categories': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'slugEn', 'labelSv', 'labelEn'], 'properties': {'slug': {'type': 'string', 'description': 'Swedish slug.'}, 'slugEn': {'type': 'string', 'description': 'English slug.'}, 'labelEn': {'type': 'string'}, 'labelSv': {'type': 'string'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
list_cities
List cities
Return all LiveSpot cities with their slug, region, and upcoming-event count. Use the slug (ASCII) as the `city` argument to other tools.
Nur Lesen Externer Zugriff
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Ausgabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['cities'], 'properties': {'cities': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'slug'], 'properties': {'name': {'type': 'string'}, 'slug': {'type': 'string', 'description': 'ASCII slug to pass as `city` to other tools.'}, 'region': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'event_count': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
search
Search (Deep Research)
Search LiveSpot events. Returns { results: [{ id, title, url }, ...] } per the OpenAI Deep Research spec. Event content originates from third-party ticket providers.
Nur Lesen Externer Zugriff
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['query'], 'properties': {'query': {'type': 'string', 'minLength': 1, 'description': 'Search query.'}}}
Ausgabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['results'], 'properties': {'results': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'title', 'url'], 'properties': {'id': {'type': 'string'}, 'url': {'type': 'string'}, 'title': {'type': 'string'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
search_events
Search events
Search LiveSpot for upcoming events across Sweden. Use this when the user asks what's on, what events are happening, what to do, or anything about concerts, sport, theatre, or shows in a Swedish city. Supports free-text, city, category, date range, and max price. Returns a paginated markdown list of events where each title links to livespot.se. Preserve the markdown links when summarizing so users can click through. City slugs are ASCII (goteborg, malmo); Swedish characters are normalized automatically (å/ä→a, ö→o).
Nur Lesen Externer Zugriff
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['query', 'city', 'category', 'startDate', 'endDate', 'maxPrice', 'limit', 'page'], 'properties': {'city': {'type': 'string', 'minLength': 1, 'description': 'City slug in ASCII (goteborg, malmo, stockholm). Swedish characters are replaced: å/ä→a, ö→o.'}, 'page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Page number (1-indexed).'}, 'limit': {'type': 'integer', 'maximum': 50, 'minimum': 1, 'description': 'Results per page. Defaults to 10 to keep payloads under ~100KB.'}, 'query': {'type': 'string', 'minLength': 1, 'description': 'Free-text query. Accepts natural-language input like "metallica in stockholm next month".'}, 'endDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'Include only events on or before this date.'}, 'category': {'type': 'string', 'minLength': 1, 'description': 'Category slug. Accepts Swedish or English: konsert/concert, teater/theatre, humor/comedy, etc.'}, 'maxPrice': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Upper bound on price_min, in SEK.'}, 'startDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'Include only events on or after this date.'}}}
Ausgabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['total', 'page', 'totalPages', 'events'], 'properties': {'page': {'type': 'number'}, 'total': {'type': 'number', 'description': 'Total matches across all pages.'}, 'events': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name'], 'properties': {'id': {'type': 'string', 'description': 'LiveSpot event id.'}, 'url': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'Canonical event page on livespot.se.'}, 'city': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'name': {'type': 'string', 'description': 'Event title.'}, 'slug': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'URL slug; the last 8 chars work as a short id.'}, 'sport': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'venue': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'source': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'Ticketing provider the listing came from.'}, 'currency': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'ISO 4217, usually SEK.'}, 'end_date': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'End date/time, ISO 8601.'}, 'away_team': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'home_team': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'image_url': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'price_max': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Highest ticket price, in `currency`.'}, 'price_min': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Lowest ticket price, in `currency`.'}, 'categories': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'description': 'Category slugs.'}, 'performers': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}]}, 'start_date': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'Start date/time, ISO 8601.'}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'availability': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'Ticketing status, e.g. AVAILABLE.'}, 'event_status': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'Lifecycle status, e.g. scheduled/cancelled.'}, 'description_en': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'description_sv': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'start_time_tbd': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'description': 'True when only the day is known.'}}, 'additionalProperties': False}, 'description': 'Matching events.'}, 'totalPages': {'type': 'number'}}, 'additionalProperties': False}
Geändert
fetch
21. September 2026 02:57
Geändert
search
21. September 2026 02:57
Geändert
get_related_events
21. September 2026 02:57
Geändert
browse_city
21. September 2026 02:57
Geändert
list_categories
21. September 2026 02:57
Geändert
list_cities
21. September 2026 02:57
Geändert
get_event
21. September 2026 02:57
Geändert
search_events
21. September 2026 02:57
Hinzugefügt
fetch
17. September 2026 12:54
Hinzugefügt
search
17. September 2026 12:54
Hinzugefügt
get_related_events
17. September 2026 12:54
Hinzugefügt
browse_city
17. September 2026 12:54
Hinzugefügt
list_categories
17. September 2026 12:54
Hinzugefügt
list_cities
17. September 2026 12:54
Hinzugefügt
get_event
17. September 2026 12:54
Hinzugefügt
search_events
17. September 2026 12:54