Edinburgh Festivals MCP Server
Click on "Deploy 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., "@Edinburgh Festivals MCP Server search for comedy shows at the Gilded Balloon 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.
edfringe-mcp
An MCP server to query the Edinburgh Festivals API for information about events and venues for all the Edinburgh festivals, inluding historical data.
Note that access to Fringe event data for 2025 is only supported on request. Running this MCP remotely would need approval by Edinburgh Fringe.
Tools
search_edinburgh_festivals: Search for events based on location, genre, date, or text.search_edinburgh_festival_venues: Search for venues based on festival type, postcode or other criteria.
Some prompts are also available to frame queries with correct context.
Related MCP server: eventin-mcp-server
Example queries
what's on at the Gilded Balloon tonight? -> Which of these are comedy?
What disabled access is there at the Assembly rooms?
When did Gordon Brown last speak at the Book festival?
If you have a Google Maps key added, routing and navigation is supported too or, install a Google Maps MCP)
How long does it take to walk between the Gilded Balloon and the Pleasance?
Requirements
Python 3.12+
Setup
Clone or download this project.
Create a.envfile in the project root containing:api_secret=your_secret api_key=your_keyIf you have a Google Maps API key you can add
GOOGLE_MAPS_API_KEY=your API keyand that will enable timing and route calculations between venues.
Install dependencies:
uv syncAdd the following MCP configuration to your
mcp.jsonconfig file in your LLM client app:"edinburghFestival": { "command": "uv", "args": [ "--directory", "/full/path/to/edfringe-mcp", "run", "main.py" ] }
Development
Running tests:
uv sync --all-groups
uv run pytestLicense
This project is licensed under the MIT License. See LICENSE for details.
Available Tools
3 toolsedinburgh_festival_eventsC
Searches this year's Edinburgh festival events. :param datetime_from: An optional ISO8601-like timestamp. e.g. '2025-08-12 00:00:00' :param datetime_to: An optional ISO8601-like timestamp. e.g. '2025-08-12 00:00:00' :param festival: possible values are fringe, demofringe, jazz, book, international, tattoo, art, hogmanay, science, imaginate, film, mela, storytelling. :param genre: The genre of the show. This will vary by festival type but may include comedy, theatre etc :param venue_name: The genre of the show. This will vary by festival type but may include comedy, theatre etc :param search_text: description of the show to search for. :param artist: Name of an artist or performer to search for. :param title: the title of the show to search for. :param year: The year of the festival. Defaults to "*", which means all years. :param datetime_from: The start date and time for the search range. :param number_of_results: The maximum number of results to retrieve, up to 100 at a time. :param page: The page number for pagination, starting from 0. :return:
Inputs: datetime_from, datetime_to, festival, genre, +7 more. Returns: result
edinburgh_festival_venue_routesC
Calculate route between venues
Inputs: origin (required), destination (required). Returns: object
edinburgh_festival_venuesC
Search Edinburgh festival venues
Inputs: festival, postcode, name, year, +2 more. Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 3 tools
The three tools have clearly distinct purposes: one searches for events, one searches for venues, and one calculates routes between venues. There is no overlap in functionality, making it easy for an agent to select the right tool for each task.
All tool names follow a consistent snake_case pattern with the prefix 'edinburgh_festival_' followed by a descriptive noun phrase (events, venue_routes, venues). This uniformity makes the tool set predictable and easy to understand.
With only three tools, the server feels somewhat thin for a festivals domain that might benefit from additional operations like booking tickets, getting event details, or managing schedules. However, the tools cover core search and navigation needs, keeping it borderline but functional.
The tools provide good search capabilities for events and venues, plus route calculation, but there are notable gaps. For example, there is no tool to retrieve detailed information about a specific event or venue, update data, or handle user interactions like favorites or reviews, which limits comprehensive festival management.
Related MCP Connectors
Eventify MCP server — manage events, attendees, sessions, speakers, sponsors, and analytics.
An MCP server that provides congressional transcripts
Hosted MCP server for live public-data APIs and Skills for AI agents.
An MCP server that provides tools to discover and retrieve podcast episodes transcripts.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceAn MCP Server that enables interaction with Ticketmaster's Discovery API for accessing event, venue, and artist information through natural language commands.-
- FlicenseBqualityDmaintenanceMCP server for interacting with the Eventin booking system, enabling natural language management of bookings, events, and venues.2-
- AlicenseAqualityDmaintenanceMCP server to list and get events from Evento's public API using an API key.21ISC
- FlicenseAqualityDmaintenanceA FastMCP server that exposes hospitality data — accommodations, events, and gastronomy — through a unified MCP interface, supporting multiple worlds for real or fictional data.5-