LiveSpot
Find concerts, theatre, sport and festivals in Sweden. Authless, read-only MCP.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"mcp": {
"url": "https://livespot.se/mcp"
}
}
}Remote endpoints
https://livespot.se/mcpstreamable-httpWhat it can do
Tool inventory
Tools (8)
π’search_events(query, city, category, startDate, endDate, ...)
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).
Input Schema
{
"type": "object",
"properties": {
"query": {
"description": "Free-text query. Accepts natural-language input like \"metallica in stockholm next month\".",
"type": "string",
"minLength": 1
},
"city": {
"description": "City slug in ASCII (goteborg, malmo, stockholm). Swedish characters are replaced: Γ₯/Γ€βa, ΓΆβo.",
"type": "string",
"minLength": 1
},
"category": {
"description": "Category slug. Accepts Swedish or English: konsert/concert, teater/theatre, humor/comedy, etc.",
"type": "string",
"minLength": 1
},
"startDate": {
"description": "Include only events on or after this date.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"endDate": {
"description": "Include only events on or before this date.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"maxPrice": {
"description": "Upper bound on price_min, in SEK.",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"limit": {
"description": "Results per page. Defaults to 10 to keep payloads under ~100KB.",
"type": "integer",
"minimum": 1,
"maximum": 50
},
"page": {
"description": "Page number (1-indexed).",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
}
},
"required": [
"query",
"city",
"category",
"startDate",
"endDate",
"maxPrice",
"limit",
"page"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"total": {
"type": "number",
"description": "Total matches across all pages."
},
"page": {
"type": "number"
},
"totalPages": {
"type": "number"
},
"events": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "LiveSpot event id."
},
"name": {
"type": "string",
"description": "Event title."
},
"slug": {
"description": "URL slug; the last 8 chars work as a short id.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"url": {
"description": "Canonical event page on livespot.se.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"start_date": {
"description": "Start date/time, ISO 8601.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"end_date": {
"description": "End date/time, ISO 8601.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"start_time_tbd": {
"description": "True when only the day is known.",
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
]
},
"city": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"venue": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"price_min": {
"description": "Lowest ticket price, in `currency`.",
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"price_max": {
"description": "Highest ticket price, in `currency`.",
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"currency": {
"description": "ISO 4217, usually SEK.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"availability": {
"description": "Ticketing status, e.g. AVAILABLE.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"event_status": {
"description": "Lifecycle status, e.g. scheduled/cancelled.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"description_sv": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"description_en": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"categories": {
"description": "Category slugs.",
"anyOf": [
{
"type": "array",
"items": {
"type": "string"
}
},
{
"type": "null"
}
]
},
"performers": {
"anyOf": [
{
"type": "array",
"items": {
"type": "string"
}
},
{
"type": "null"
}
]
},
"image_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"source": {
"description": "Ticketing provider the listing came from.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"sport": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"home_team": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"away_team": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"name"
],
"additionalProperties": false
},
"description": "Matching events."
}
},
"required": [
"total",
"page",
"totalPages",
"events"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}π’get_event(id)
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.
Input Schema
{
"type": "object",
"properties": {
"id": {
"description": "Event id, slug, or short-id prefix as returned by search_events.",
"type": "string",
"minLength": 1
}
},
"required": [
"id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "LiveSpot event id."
},
"name": {
"type": "string",
"description": "Event title."
},
"slug": {
"description": "URL slug; the last 8 chars work as a short id.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"url": {
"description": "Canonical event page on livespot.se.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"start_date": {
"description": "Start date/time, ISO 8601.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"end_date": {
"description": "End date/time, ISO 8601.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"start_time_tbd": {
"description": "True when only the day is known.",
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
]
},
"city": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"venue": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"price_min": {
"description": "Lowest ticket price, in `currency`.",
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"price_max": {
"description": "Highest ticket price, in `currency`.",
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"currency": {
"description": "ISO 4217, usually SEK.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"availability": {
"description": "Ticketing status, e.g. AVAILABLE.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"event_status": {
"description": "Lifecycle status, e.g. scheduled/cancelled.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"description_sv": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"description_en": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"categories": {
"description": "Category slugs.",
"anyOf": [
{
"type": "array",
"items": {
"type": "string"
}
},
{
"type": "null"
}
]
},
"performers": {
"anyOf": [
{
"type": "array",
"items": {
"type": "string"
}
},
{
"type": "null"
}
]
},
"image_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"source": {
"description": "Ticketing provider the listing came from.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"sport": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"home_team": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"away_team": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"name"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}π’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.
Input Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"cities": {
"type": "array",
"items": {
"type": "object",
"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"
}
},
"required": [
"name",
"slug"
],
"additionalProperties": false
}
}
},
"required": [
"cities"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}π’list_categories
Return the canonical LiveSpot category catalog with both Swedish and English slugs. Pass either slug to other tools as `category`.
Input Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"categories": {
"type": "array",
"items": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "Swedish slug."
},
"slugEn": {
"type": "string",
"description": "English slug."
},
"labelSv": {
"type": "string"
},
"labelEn": {
"type": "string"
}
},
"required": [
"slug",
"slugEn",
"labelSv",
"labelEn"
],
"additionalProperties": false
}
}
},
"required": [
"categories"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}π’browse_city(city, category, limit)
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.
Input Schema
{
"type": "object",
"properties": {
"city": {
"description": "City slug in ASCII (e.g. goteborg, malmo).",
"type": "string",
"minLength": 1
},
"category": {
"description": "Category slug to filter by.",
"type": "string",
"minLength": 1
},
"limit": {
"description": "Max events to return. Default 10.",
"type": "integer",
"minimum": 1,
"maximum": 50
}
},
"required": [
"city",
"category",
"limit"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"total": {
"type": "number",
"description": "Total upcoming events matching the city/category."
},
"events": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "LiveSpot event id."
},
"name": {
"type": "string",
"description": "Event title."
},
"slug": {
"description": "URL slug; the last 8 chars work as a short id.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"url": {
"description": "Canonical event page on livespot.se.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"start_date": {
"description": "Start date/time, ISO 8601.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"end_date": {
"description": "End date/time, ISO 8601.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"start_time_tbd": {
"description": "True when only the day is known.",
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
]
},
"city": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"venue": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"price_min": {
"description": "Lowest ticket price, in `currency`.",
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"price_max": {
"description": "Highest ticket price, in `currency`.",
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"currency": {
"description": "ISO 4217, usually SEK.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"availability": {
"description": "Ticketing status, e.g. AVAILABLE.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"event_status": {
"description": "Lifecycle status, e.g. scheduled/cancelled.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"description_sv": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"description_en": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"categories": {
"description": "Category slugs.",
"anyOf": [
{
"type": "array",
"items": {
"type": "string"
}
},
{
"type": "null"
}
]
},
"performers": {
"anyOf": [
{
"type": "array",
"items": {
"type": "string"
}
},
{
"type": "null"
}
]
},
"image_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"source": {
"description": "Ticketing provider the listing came from.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"sport": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"home_team": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"away_team": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"name"
],
"additionalProperties": false
},
"description": "Matching events."
}
},
"required": [
"total",
"events"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}π’get_related_events(id, limit)
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.
Input Schema
{
"type": "object",
"properties": {
"id": {
"description": "Event id or slug.",
"type": "string",
"minLength": 1
},
"limit": {
"description": "Max related events. Default 6.",
"type": "integer",
"minimum": 1,
"maximum": 12
}
},
"required": [
"id",
"limit"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"events": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "LiveSpot event id."
},
"name": {
"type": "string",
"description": "Event title."
},
"slug": {
"description": "URL slug; the last 8 chars work as a short id.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"url": {
"description": "Canonical event page on livespot.se.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"start_date": {
"description": "Start date/time, ISO 8601.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"end_date": {
"description": "End date/time, ISO 8601.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"start_time_tbd": {
"description": "True when only the day is known.",
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
]
},
"city": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"venue": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"price_min": {
"description": "Lowest ticket price, in `currency`.",
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"price_max": {
"description": "Highest ticket price, in `currency`.",
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"currency": {
"description": "ISO 4217, usually SEK.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"availability": {
"description": "Ticketing status, e.g. AVAILABLE.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"event_status": {
"description": "Lifecycle status, e.g. scheduled/cancelled.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"description_sv": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"description_en": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"categories": {
"description": "Category slugs.",
"anyOf": [
{
"type": "array",
"items": {
"type": "string"
}
},
{
"type": "null"
}
]
},
"performers": {
"anyOf": [
{
"type": "array",
"items": {
"type": "string"
}
},
{
"type": "null"
}
]
},
"image_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"source": {
"description": "Ticketing provider the listing came from.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"sport": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"home_team": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"away_team": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"name"
],
"additionalProperties": false
},
"description": "Matching events."
}
},
"required": [
"events"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}π’search(query)
Search LiveSpot events. Returns { results: [{ id, title, url }, ...] } per the OpenAI Deep Research spec. Event content originates from third-party ticket providers.
Input Schema
{
"type": "object",
"properties": {
"query": {
"description": "Search query.",
"type": "string",
"minLength": 1
}
},
"required": [
"query"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"id",
"title",
"url"
],
"additionalProperties": false
}
}
},
"required": [
"results"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}π’fetch(id)
Fetch a single LiveSpot event document. Returns { id, title, text, url, metadata } per the OpenAI Deep Research spec.
Input Schema
{
"type": "object",
"properties": {
"id": {
"description": "Resource id (event id or slug) returned by search.",
"type": "string",
"minLength": 1
}
},
"required": [
"id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"text": {
"type": "string"
},
"url": {
"type": "string"
},
"metadata": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
},
{
"type": "null"
}
]
}
}
},
"required": [
"id",
"title",
"text",
"url",
"metadata"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}Recommended Prompts
search_eventssearch_eventsget_eventget_eventlist_citiesCommunity
Evidence