Skip to main content
Glama

Server Quality Checklist

92%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.4.3

  • Disambiguation5/5

    Each tool serves a distinct purpose: cheapest_per_day finds the cheapest day on a specific route per month, explore_destinations lists all destinations from an origin, find_anywhere_under searches for cheap flights to anywhere, and find_flights searches one-way fares within a window. No overlap in functionality.

    Naming Consistency4/5

    All tool names use snake_case and a verb-first pattern: cheapest_per_day, explore_destinations, find_anywhere_under, find_flights. The verb forms are clear and descriptive, though 'cheapest' is an adjective rather than a verb, slightly breaking consistency.

    Tool Count5/5

    With 4 tools, the server covers essential flight discovery tasks: route-specific cheapest day, network exploration, budget search, and general search. The count is well-scoped for a flight info assistant, not too few or too many.

    Completeness4/5

    The tool set covers core discovery workflows: cheapest day, destinations, cheap anywhere, and general one-way search. Missing round-trip or multi-segment searches, but these are reasonable gaps given the focus on one-way Ryanair fares.

  • Average 4/5 across 4 of 4 tools scored.

    See the Tool Scores section below for per-tool breakdowns.

    • 1 of 1 community issues answered or closed in the last 6 months
    • 49 commits in the last 12 weeks
    • Last stable release on
    • 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.

  • This server has been verified by its author.

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?

    The description discloses that uppercase country codes silently return no fares and that dates define a departure window returning cheapest fare per route per day. However, it omits other behavioral traits such as rate limits, authentication requirements, or the effect of optional parameters like max_price. With no annotations, the description provides adequate but not comprehensive transparency.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is concise, with a clear front-loaded purpose followed by parameter details in a few sentences. No redundant information is present, and every sentence adds value.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool has 6 parameters (3 required), sibling tools, and an output schema, the description sufficiently explains the core function and key parameters. It misses only a brief explanation of max_price, which is a minor gap. The output schema exists but is not described, which is acceptable per rules.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The description explains that from_airport and to_airport are IATA codes, destination_country is lowercase ISO2, and dates are ISO format. However, it does not cover max_price at all, and the relationship between to_airport and destination_country is unclear. With 0% schema coverage, the description partly compensates but leaves gaps.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description explicitly states 'Search Ryanair one-way fares', identifying the specific airline and fare type. It clearly distinguishes from sibling tools like 'cheapest_per_day' and 'find_anywhere_under' by focusing on one-way fare searching with a departure window.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance is provided on when to use this tool versus its siblings (cheapest_per_day, explore_destinations, find_anywhere_under). There is no mention of when to choose this tool over alternatives or any when-not-to-use advice.

    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?

    No annotations exist, so the description carries full burden. It explains the core behavior (cheapest fares under a price) but does not specify return format, result count, or limitations (e.g., airline exclusions). It is adequate but not detailed.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Two short sentences: first defines the core function, second gives an illustrative use case. No filler or redundancy.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a tool with 4 required params and no schema descriptions, the description leaves out the date parameters. While an output schema exists, the description should explain all inputs. Adequate but incomplete.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters2/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is 0%; the description only indirectly explains 'from_airport' and 'max_price' while omitting 'from_date' and 'to_date' entirely. These are required, and their purpose is only hinted at by the example 'this weekend'. Missing explicit parameter definitions.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states it finds cheapest fares from a given airport to any destination under a max price, using a specific verb and resource. It distinguishes from siblings (e.g., 'find_flights' for specific flights) by emphasizing budget flexibility.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines4/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description provides a concrete example ('where can I go for under £50 this weekend') and implies the tool is for open-ended budget searches. However, it does not explicitly state when not to use or compare to siblings.

    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?

    No annotations are present, so the description must carry the full burden. It explicitly states that days with no flight or price return 'price=None', which is a key behavioral detail. It also specifies the month parameter format. However, it does not disclose potential costs, rate limits, or authentication requirements, leaving some gaps for a tool with no 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/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is three sentences long, with each sentence serving a clear purpose: stating the tool's function, clarifying the month parameter format, and explaining behavior for missing prices. There is no redundant or irrelevant information, making it highly concise and well-structured.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the presence of an output schema (not shown but indicated), the description does not need to explain return values. It covers the main use case, the month parameter format, and the behavior for missing data. It could mention potential constraints like maximum date range, but overall it is complete for a simple tool with a limited scope.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0%, so the description must compensate. It adds meaning for the month parameter by specifying the ISO format (YYYY-MM-01). For origin and destination, it only provides an example (DUB->BCN) and mentions 'one route', but does not explicitly state that they should be airport codes or expected format. This is partial compensation.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states that the tool provides the cheapest fare per day for one route across a single calendar month, using specific verbs ('cheapest fare per day') and a resource ('one route'). It distinguishes itself from sibling tools (explore_destinations, find_anywhere_under, find_flights) by focusing on a fixed-route monthly calendar view, as evidenced by the example 'what's the cheapest day in July to fly DUB->BCN'.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines4/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description provides a concrete use case example ('powers ... style prompts'), which implies the intended scenario. However, it does not explicitly mention when not to use the tool or directly compare it to sibling tools. The example is sufficient to guide usage, but lacks explicit exclusions or alternatives.

    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?

    Discloses no fare lookup, purely network exploration; with no annotations, this adequately conveys behavior for a read-only query.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Two concise sentences front-loading purpose and including return format example; no wasted words.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness5/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Output schema exists and description explains return structure; single parameter, no additional context needed.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters4/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Single parameter 'origin' is clearly implied as the starting airport via backticks; schema coverage is 0% but description adds meaning to the parameter.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    Clear verb 'explore' and specific resource 'destinations from origin'; distinguishes from sibling tools by stating 'no fare lookup, just the network'.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines4/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    Explicit examples of when to use: answering reachable countries or if a destination is served. No explicit when-not-to-use, but sibling context implies alternatives for pricing.

    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

Flyan MCP server

Copy to your README.md:

Score Badge

Flyan MCP server

Copy to your README.md:

Latest Blog Posts

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/victorlane/Flyan'

If you have feedback or need assistance with the MCP directory API, please join our Discord server