tickadoo
OfficialServer Quality Checklist
Latest release: v1.1.0
- Disambiguation5/5
Each tool has a clearly distinct purpose with no overlap: find_nearby_experiences uses geographic location, get_experience_details retrieves details for a specific experience, list_cities enumerates available destinations, and search_experiences searches within a specific city. The descriptions explicitly differentiate their use cases, eliminating any ambiguity.
Naming Consistency5/5All tool names follow a consistent verb_noun pattern (e.g., find_nearby_experiences, get_experience_details, list_cities, search_experiences) with clear, descriptive verbs and nouns. There are no deviations in style or convention, making the set highly predictable and readable.
Tool Count5/5With 4 tools, the set is well-scoped for a ticketing/experience discovery server, covering key functionalities like location-based finding, detailed lookups, city listing, and city-specific searches. Each tool earns its place without redundancy or excessive complexity.
Completeness4/5The tool surface covers core discovery and information retrieval workflows effectively, including location-based and city-specific searches, detailed views, and destination listing. A minor gap exists in booking or transaction capabilities, but agents can work around this for recommendation and exploration tasks.
Average 4.1/5 across 4 of 4 tools scored.
See the Tool Scores section below for per-tool breakdowns.
- 0 of 1 community issues answered or closed in the last 6 months
- 22 commits in the last 12 weeks
- No stable releases found
- No critical vulnerability alerts
- No high-severity vulnerability alerts
- No code scanning findings
- CI is passing
This repository is licensed under MIT License.
This repository includes a README.md file.
No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.
Tip: use the "Try in Browser" feature on the server page to seed initial usage.
This repository includes a glama.json configuration file.
If you are the author, simply .
If the server belongs to an organization, first add
glama.jsonto the root of your repository:{ "$schema": "https://glama.ai/mcp/schemas/server.json", "maintainers": [ "your-github-username" ] }Then . Browse examples.
Add related servers to improve discoverability.
How to sync the server with GitHub?
Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.
To manually sync the server, click the "Sync Server" button in the MCP server admin interface.
How is the quality score calculated?
The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).
Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.
Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).
Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.
Tool Scores
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, covering safety and scope. The description adds minimal behavioral context beyond this, such as the purpose of 'discover available destinations,' but doesn't detail aspects like rate limits, authentication needs, or pagination behavior. It doesn't contradict annotations, so it meets the baseline for having annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded: two sentences that directly state the tool's purpose and usage without unnecessary details. Every sentence earns its place by providing essential information, making it efficient and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (a read-only list operation), rich annotations (covering safety and scope), and 100% schema coverage, the description is mostly complete. It lacks an output schema, but the description doesn't need to explain return values. However, it could be more complete by mentioning potential limitations or result formats, slightly reducing the score.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, meaning all parameters are well-documented in the schema itself. The description doesn't add any parameter-specific information beyond what's in the schema (e.g., it doesn't explain the 'query' parameter's filtering behavior in more detail). With high schema coverage, the baseline score is 3, as the description doesn't compensate but also doesn't need to.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'List all cities where tickadoo® has bookable experiences.' It specifies the verb ('List') and resource ('cities'), and distinguishes it from siblings by focusing on destinations rather than experiences. However, it doesn't explicitly differentiate from potential sibling tools like 'search_cities' if they existed, so it's not a perfect 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides implied usage context: 'Use to help users discover available destinations.' This suggests it's for discovery purposes, but it doesn't explicitly state when to use this tool versus alternatives like 'search_experiences' or 'find_nearby_experiences' from the sibling list. No exclusions or clear alternatives are mentioned, leaving some ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the agent knows this is a safe, non-destructive query operation. The description adds context about location-based searching but doesn't disclose additional behavioral traits like rate limits, authentication needs, or result format. With annotations covering the core safety profile, a 3 is appropriate as the description provides some useful context without rich behavioral details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core purpose and followed by usage guidance. Every sentence earns its place by providing essential information without redundancy or fluff, making it highly efficient and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (location-based search), rich annotations (read-only, open-world), and full schema coverage, the description is mostly complete. It lacks details on output format (no output schema provided) and doesn't mention pagination or result limits, but the purpose and usage are well-covered, making it adequate for agent selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with all parameters (latitude, longitude, radius_km, language) documented in the schema. The description doesn't add meaning beyond the schema, such as explaining coordinate systems or language code specifics. Baseline 3 is correct when the schema fully describes parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Find shows, events and experiences near a geographic location on tickadoo®.' It specifies the verb ('Find'), resource ('shows, events and experiences'), and context ('near a geographic location'), distinguishing it from sibling tools like get_experience_details (detail view) and list_cities (city listing).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage guidance: 'Use when a user shares their location or asks for things to do near them.' This clearly indicates when to invoke this tool versus alternatives, helping the agent select it based on user context rather than other tools like search_experiences (which might not be location-based).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the agent knows this is a safe, read-only search operation with open-world semantics. The description adds useful context about the types of content searched (shows, theatre, events, tours, experiences) and the tickadoo® platform, but doesn't provide additional behavioral details like rate limits, authentication needs, or pagination behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is perfectly concise and front-loaded: the first sentence states the core functionality, and the second sentence provides clear usage guidelines. Every sentence earns its place with no wasted words or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that this is a search tool with good annotations (read-only, open-world) and 100% schema coverage, the description provides adequate context about what's being searched and when to use it. However, without an output schema, the description doesn't explain what the search returns (e.g., result format, pagination), leaving a minor gap in completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters ('city' and 'language') fully documented in the schema. The description doesn't add any parameter-specific semantics beyond what's already in the schema (e.g., it doesn't explain city validation rules or language code formats). With complete schema coverage, the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Search for shows, theatre, events, tours and experiences') and resource ('in a specific city on tickadoo®'), distinguishing it from siblings like 'find_nearby_experiences' (which implies proximity-based search) and 'get_experience_details' (which retrieves specific item details). The verb 'search' is precise and the resource scope is well-defined.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly provides when-to-use guidance: 'Use when a user asks what to do in a city, wants event/show recommendations, or is looking for tickets.' This gives clear context for invocation and distinguishes it from alternatives like 'list_cities' (which lists available cities rather than searching within one).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate read-only, non-destructive, and open-world behavior, which the description does not contradict. It adds context by specifying input preferences and the scope of data fetched (availability, venue details, images), enhancing understanding beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core purpose and usage guidelines in two concise sentences, with no wasted words. Every sentence contributes directly to tool understanding and selection.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (5 parameters, no output schema) and rich annotations, the description is mostly complete. It covers purpose, usage, and input semantics well, but could benefit from mentioning potential outputs or limitations, though annotations help mitigate this gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the schema fully documents all parameters. The description adds value by clarifying input preferences (slug as preferred, provider/provider_id as legacy fallbacks) but does not provide additional semantic details beyond what the schema already covers.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Get detailed availability, venue details, and images') and the resource ('a specific tickadoo® experience'), distinguishing it from sibling tools like find_nearby_experiences, list_cities, and search_experiences by focusing on details for a single experience rather than searching or listing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides explicit guidance on when to use this tool by specifying preferred inputs ('tickadoo slug or booking URL path') and fallback options ('provider and provider_id are legacy fallback inputs'), helping the agent choose this over alternatives for retrieving detailed information on a known experience.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
GitHub Badge
Glama performs regular codebase and documentation scans to:
- Confirm that the MCP server is working as expected.
- Confirm that there are no obvious security issues.
- Evaluate tool definition quality.
Our badge communicates server capabilities, safety, and installation instructions.
Card Badge
Copy to your README.md:
Score Badge
Copy to your README.md:
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/tickadoo/tickadoo-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server