Skip to main content
Glama
forgemeshlabs

Travel Assistant MCP

Server Quality Checklist

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

  • Disambiguation5/5

    Each tool has a clearly distinct purpose with explicit usage guidance. Descriptions include what to use for specific scenarios and what not to use, eliminating ambiguity.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern with underscores (e.g., build_booking_link, compare_routes), making them predictable and easy to distinguish.

    Tool Count5/5

    Five tools cover the essential travel assistance tasks: search, compare, airport info, booking link generation, and general advice. The count is well-scoped without redundancy.

    Completeness5/5

    The tool set covers the full planning workflow: validate airports, search routes, compare alternatives, get timing advice, and generate booking links. No obvious gaps for a read-only travel assistant.

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

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

    • No community issues in the last 6 months
    • 15 commits in the last 12 weeks
    • Last stable release on
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • 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.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

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

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    Annotations already declare readOnlyHint and idempotentHint; description adds commission-eligibility disclosure and confirms no side effects, providing helpful behavioral context beyond 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?

    Three concise sentences covering purpose, usage, and behavior with no redundancy.

    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?

    For a simple link-generation tool with 5 fully described parameters and no output schema, the description sufficiently explains the output and side effects; slight room for additional error handling details.

    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 coverage is 100%, so baseline is 3. The description does not add parameter-specific details beyond what is in the schema.

    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 the tool generates an external booking link for an already chosen route and distinguishes it from sibling tools like search_travel_options by specifying when not to use it.

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

    Usage Guidelines5/5

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

    Explicitly says to use after route details are known or after compare_routes/search_travel_options, and warns not to use as the first step. Also notes read-only, no authentication, no booking completion.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior5/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    Annotations already declare readOnlyHint, destructiveHint, idempotentHint. Description adds valuable context: 'Read-only, no authentication, no external booking links, and no booking side effects,' reinforcing and extending beyond annotations without contradiction.

    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?

    Description is two sentences, each serving a distinct purpose: first states functionality, second gives usage guidelines and behavioral traits. No waste, front-loaded.

    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?

    The tool has no output schema, yet description only says 'metadata' without detailing what fields are returned. While the tool is simple and annotations cover safety, the description could be more complete by specifying the structure of the response (e.g., airport name, city, country).

    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 coverage is 100% with a single parameter fully described in schema ('Three-letter IATA airport code (e.g. 'SFO'). Case-insensitive.'). Description adds no further semantic details, so baseline 3 is appropriate.

    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?

    Description clearly states 'Look up metadata for one airport by IATA code' with a specific verb and resource. It distinguishes from sibling tools by explicitly mentioning alternatives like search_travel_options and compare_routes.

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

    Usage Guidelines5/5

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

    Description provides explicit when-to-use ('to validate or explain a single airport code before route planning') and when-not-to-use with named alternatives ('use search_travel_options for an actual trip search and compare_routes for multiple origin-destination pairs').

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior5/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    Beyond annotations (readOnlyHint, destructiveHint, idempotentHint, openWorldHint), description adds 'Read-only, no authentication, no booking side effects' and mentions 'responses may include commission-eligible external booking links'. No contradictions with 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?

    Three sentences, front-loaded with main action, then usage guidelines, then behavioral notes. No wasted words.

    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?

    No output schema, but description hints at return content (external booking links). For a comparison tool, this sets reasonable expectations. Could mention return format (text/table) but acceptable.

    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 has 100% description coverage for the single parameter 'routes' with nested objects. Description does not add much beyond schema, but the phrase 'two or more' helps clarify minimum length. Baseline of 3 is appropriate.

    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?

    Description clearly states 'Compare two or more airport route pairs side by side' with specific verb and resource. It distinguishes from siblings by naming when to use search_travel_options (one dated route) and get_airport_info (single airport lookup).

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

    Usage Guidelines5/5

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

    Explicitly states when to use this tool ('choosing between alternate origins, destinations, or airports') and when to use alternatives (search_travel_options for one dated route, get_airport_info for single airport).

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior5/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    Description discloses read-only nature, no authentication, no booking link, and no booking side effects. Annotations already declare readOnlyHint, destructiveHint, and idempotentHint true, and the description adds context consistent with annotations, no contradiction.

    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?

    Description is concise—three sentences covering purpose, usage, and behavioral traits. No wasted words; front-loaded with the core action and scope.

    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?

    For a lightweight advice tool with no output schema, the description covers all necessary context: purpose, parameters, when to use, behavioral properties. Complete and sufficient for an AI agent to invoke correctly.

    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 100% (both parameters have schema descriptions), so baseline is 3. The description does not add further meaning beyond schema; it only mentions parameters are 'optional' and used to determine route internationality, which is already in schema.

    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 the tool explains travel timing and logistics, listing specific topics (booking windows, airport arrival timing, layovers, seasonal considerations). It distinguishes itself from the sibling 'search_travel_options' by specifying use for advice questions vs. route-specific search.

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

    Usage Guidelines5/5

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

    Explicitly states when to use (advice questions about booking or arrival timing) and when not to use (route-specific flight search, which is covered by 'search_travel_options'). This provides clear guidance on tool selection.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior5/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    Annotations already declare readOnlyHint, non-destructive, idempotent, and openWorld. Description adds 'no authentication, no booking side effects' and mentions response includes route metadata and commission-eligible links, going beyond annotations to clarify safety and output characteristics.

    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?

    Four sentences, no wasted words, front-loaded with purpose and usage, then parameter guidance and behavioral traits. Every sentence adds value.

    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?

    Given 5 parameters, no output schema, but rich annotations, the description covers purpose, usage, parameter hints, behavioral safety, and response hints. Complete for an AI agent to decide when and how to invoke.

    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?

    Schema coverage is 100% with well-described parameters. Description adds context that currency is used in booking link parameters and reinforces return_date optionality, providing slight added value over the schema.

    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?

    Clearly states 'Primary travel search workflow for one origin-destination airport pair' and distinguishes from siblings by naming compare_routes for multiple routes, build_booking_link for known routes, and get_airport_info for validation.

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

    Usage Guidelines5/5

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

    Explicitly tells when to use this tool ('when the user wants flight/trip options for a specific route') and when to use alternatives, plus clarifies return_date optionality for one-way trips.

    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

travel-mcp MCP server

Copy to your README.md:

Score Badge

travel-mcp 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/forgemeshlabs/travel-mcp'

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