Skip to main content
Glama
loosephoto
by loosephoto

Server Quality Checklist

58%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v1.0.0

  • Disambiguation4/5

    Most tools have clearly distinct purposes, such as route search, fare search, timetable lookup, and station info. Slight overlap exists between search_route and get_weather since both provide weather-related AI advice, but they serve different primary intents. The ferry listing vs. route search tools are also clearly separated.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern using snake_case, with verbs like search, get, and list. This creates a predictable and uniform naming convention across the entire set.

    Tool Count5/5

    With 10 tools, the server is well-scoped for a comprehensive Tokyo transit system, covering route planning, fares, timetables, ferries, buses, operators, and weather. Each tool serves a distinct functional area without unnecessary redundancy.

    Completeness4/5

    The tool set covers core transit needs well: route search, fares, timetables, station info, operators, ferries, and buses. Minor gaps include lack of real-time disruption alerts as a dedicated tool, though search_route partially detects suspensions. Missing line-specific station lists are handled via get_operator_routes.

  • Average 3.5/5 across 10 of 10 tools scored. Lowest: 2.6/5.

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

    • No community issues in the last 6 months
    • 195 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • Add a LICENSE file by following GitHub's guide. Once GitHub recognizes the license, the system will automatically detect it within a few hours.

    If the license does not appear after some time, you can manually trigger a new scan using the MCP server admin interface.

    MCP servers without a LICENSE cannot be installed.

  • 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.

  • Add a glama.json file to provide metadata about your server.

  • 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.

  • 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

  • Behavior2/5

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

    No annotations are provided, so the description carries full responsibility for disclosing behavior. It implies a read-only operation via '取得' but does not mention any traits such as required auth, limitations, error handling, or whether results are paginated. For a read tool, this is minimal disclosure.

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

    Conciseness3/5

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

    The description is a single sentence that is concise but under-specified. It states the core purpose and data source, but the minimal structure means it doesn't provide extra value beyond a tautology of the tool name plus a source reference.

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

    Completeness2/5

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

    With no annotations, no output schema, and a vague description, the tool is incomplete for reliable use. It doesn't explain what basic info is returned, how to interpret results, or any constraints, making it insufficient for an agent to invoke confidently.

    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 description coverage is 50% (station_name has a description, operator has none), and the description adds no parameter information at all. It does not help clarify what 'operator' means or how station_name should be formatted, so it fails to compensate for the schema gaps.

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

    Purpose4/5

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

    The description clearly states the tool acquires basic station information from the ODPT API, using a specific verb '取得' (acquire) and a clear resource '駅の基本情報' (basic station info). It is distinct from sibling tools which deal with routes, weather, and ferries, though it doesn't specify exactly what 'basic info' includes.

    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?

    The description provides no guidance on when to use this tool versus alternatives like search_route or get_timetable. It only states what the tool does, not when it should be preferred or any exclusions.

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

  • Behavior2/5

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

    With no annotations, the description carries the full burden of behavioral disclosure. It only says 'display all operators' and does not mention output format, pagination, data scope, or any limitations. There is no indication of whether it is a read-only operation or if any authentication is needed.

    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 a single, well-front-loaded sentence that conveys the core purpose and available filter types. There is no redundant or irrelevant information.

    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 list tool with no output schema and no annotations, the description gives the essential purpose and filter types, but it omits the language parameter and details about the returned data structure. It is minimally sufficient but has clear gaps for a complete understanding.

    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 type_filter by listing the ferries/train types, but it does not explain the language parameter at all. The enum values in the schema are partially clarified by the Japanese descriptions.

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

    Purpose4/5

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

    The description clearly states it lists transit operators (交通事業者一覧) and specifies the types (rail, AGT, monorail, tram, ferry) with a type filter. It is a specific verb+resource pair, but it does not explicitly differentiate from sibling tools like list_ferry_ports or get_operator_routes.

    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 alternatives. The description mentions a type filter but does not state scenarios or exclusions, such as when to prefer search_route or get_operator_routes.

    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?

    With no annotations, the description carries the full burden of behavioral disclosure. It reveals the data source (気象庁API), the output includes weather/temperature and heatstroke cautions, which adds transparency. However, it leaves the 'multilingual AI advice' behavior vague and does not disclose potential issues like rate limits or errors.

    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 a single, concise sentence that front-loads the main purpose and adds relevant details about the source and special warning. There is no wasted verbiage or unnecessary repetition.

    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 simple read tool with one optional parameter and no output schema, the description covers the core purpose, source, and one notable feature. However, it does not explain what happens when area_name is omitted, nor does it elaborate on the multilingual advice, leaving some context incomplete.

    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 only parameter, area_name, is fully documented in the schema with a description and examples, so schema coverage is 100%. The description adds no additional parameter semantics beyond implying that weather is fetched for a given location, so a baseline score of 3 is appropriate.

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

    Purpose4/5

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

    The description clearly states the tool retrieves weather and temperature data from the JMA API and includes multilingual AI advice with heatstroke warnings. It is specific about the verb (取得) and resource (weather), and while it doesn't explicitly reference sibling tools, the transit-focused siblings are clearly distinct from weather retrieval.

    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?

    The description provides no guidance on when to use this tool versus alternatives. It does not mention when to avoid it, any prerequisites, or how it differs from sibling transit tools in terms of use cases.

    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?

    With no annotations, the description carries the full burden of behavioral disclosure. It adds useful context by naming the data source (ODPT) and scope (Toei Bus routes/stops), which goes beyond a mere function statement. However, it does not disclose what the tool returns, whether it can be called without parameters, or any limitations, leaving gaps in behavioral transparency for a search tool.

    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 a single sentence with no redundant information. It is concise, front-loaded with the core purpose, and includes a helpful emoji that adds visual clarity without padding. Every word earns its place.

    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 simple tool with one optional parameter and no output schema, the description gives the data source and scope but leaves out important details such as the return format and whether it can be invoked without a bus_stop_name. The absence of an output schema and annotations makes this a noticeable gap, though the description is not misleading.

    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 schema fully documents the only parameter, busstop_name, including its partial-match behavior. The description adds no additional parameter semantics. Since schema coverage is 100%, the baseline score of 3 applies, and the description does not need to do extra work.

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

    Purpose4/5

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

    The description clearly states that the tool searches Toei Bus routes and bus stop information from ODPT data (都営バスの路線・バス停情報をODPTデータから検索します). It uses a specific verb (検索/search) and resource (bus routes/stops), distinguishing it from sibling tools like search_ferry or search_route. However, it does not explicitly contrast with search_route or get_operator_routes, so it is not fully differentiating.

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

    Usage Guidelines3/5

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

    There is no explicit guidance on when to use this tool versus alternatives such as search_route or get_operator_routes. The usage is implied by the name 'search_bus' and the description's bus-specific scope, but no conditions or exclusions are provided. This meets the 'implied usage' level, not a higher level with clear context.

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

  • Behavior2/5

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

    No annotations are provided, so the description must fully disclose behavioral traits. It only states that the tool searches routes and timetables, but does not describe output format, whether it returns real-time or schedule data, pagination, or any limitations. This is insufficient for a tool with no annotation support.

    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 a single sentence that is concise and front-loaded with the core action and scope. Every word contributes to the purpose, with no unnecessary information.

    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 simple two-parameter search tool with no output schema, the description adequately conveys the basic purpose. However, it does not clarify differences from overlapping tools like get_timetable or describe what the search returns, leaving some contextual gaps.

    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 input schema already provides descriptions for both parameters (from_port: 出発港, to_port: 到着港) with 100% coverage. The description's reference to '港間' adds no new semantic meaning beyond what the schema already states, so it meets the baseline without enhancing parameter understanding.

    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's purpose: searching ferry/water bus routes and timetables between ports. It uses a specific verb (検索) and a well-defined resource (routes and timetables), and the mention of '港間' (between ports) distinguishes it from generic route search tools like search_route and search_bus.

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

    Usage Guidelines3/5

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

    The description implies the tool should be used when searching for ferry or water bus routes between ports, but it does not explicitly state when to use it over alternatives such as get_timetable or search_route. No exclusions or alternative references are provided, so usage guidance is only implied, not explicit.

    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?

    With no annotations, the description carries the transparency burden. It discloses data source (ODPT), scope (Tokyo Metro/Toei), and a behavioral trait (returns fare directly without external Yahoo dependency). However, it omits details like output format, error handling, or exact station name requirements, leaving some behavioral aspects undisclosed.

    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 a single, front-loaded sentence with an emoji for visual cue. It efficiently conveys purpose, data source, scope, and a key implementation detail without redundancy. Every phrase earns its place.

    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 is simple (2 params, no output schema), and the description covers the core function and constraints. However, since no output schema exists, it would benefit from describing the return format or potential error behavior. The mention that it 'returns the fare directly' hints at output but lacks detail, making completeness adequate but not thorough.

    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 each parameter described ('出発駅' for from, '到着駅' for to). The description's phrase '2駅間' adds minimal semantic value beyond the schema, confirming the two-station relationship. Baseline 3 applies since the schema carries the parameter documentation burden.

    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 identifies the tool as a fare search ('運賃検索') between two stations, specifying the resource (fare) and scope (ODPT data, Tokyo Metro/Toei). It distinguishes itself from siblings like search_route by emphasizing direct server-side fare calculation without Yahoo dependency, making its unique purpose explicit.

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

    Usage Guidelines3/5

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

    The description provides clear context: use for looking up fares between two stations, with support for Tokyo Metro/Toei. However, it does not explicitly contrast with alternatives like search_route or get_station_info, and the mention of 'Yahoo dependency' is a benefit rather than a usage boundary. Guidance is implied rather than explicit.

    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?

    With no annotations, the description carries the full burden. It states that the tool displays all routes and stations, implying a read-only operation, and gives example operator keys. But it does not disclose response format, error behavior, or any side effects, which is a moderate gap for a listing tool.

    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 a single, well-structured sentence with a leading label (事業者別路線一覧), a clear action, and concrete examples. Every word serves a purpose, making it highly efficient.

    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?

    Without an output schema, the description must explain what is returned. It states 'all routes and stations' but does not specify the response structure, pagination, or how the language parameter affects output. It is adequate for basic understanding but misses critical details for a fully informed invocation.

    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 50% with only operator_name having a minimal description ('事業者キー') and language having an enum. The description adds value by listing example operator key values, but it does not explain the language parameter's meaning or default, and does not fully compensate for the schema's sparse documentation.

    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 displays all routes and stations for a specified operator, with a specific verb (表示) and resource (routes and stations). It includes concrete examples of operator keys, distinguishing it from siblings like list_transit_operators and search_route.

    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 clear context: use this tool to list routes and stations by operator key, with examples of valid operator keys. However, it does not explicitly mention when not to use it or name alternative tools, though the sibling context makes such exclusions implicit.

    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?

    With no annotations, the description carries full burden. It adds useful context by disclosing the data source (ODPT) and that it doesn't depend on Yahoo, but it doesn't explain behavior such as error handling, response format, or whether it covers real-time vs. scheduled times. This partial transparency is average.

    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 one tight sentence with an informative emoji, front-loading the purpose and then the data source. Every phrase adds value (source, independence, directness) without padding, making it highly efficient.

    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 is simple with 2 parameters, but there is no output schema, so the description should clarify return values. It mentions '時刻を提供' (provides times), which hints at the output, but lacks specifics on the structure (e.g., departure/arrival lists) or edge cases. This is sufficient but not complete.

    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%, so the baseline is 3. The description repeats '指定駅' (station_name) but doesn't add extra meaning about the railway parameter or provide examples. It adds no insight beyond the schema, so the score stays at baseline.

    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 searches for timetables of a specified station using ODPT data, with a specific verb (search) and resource (timetable) that distinguishes it from siblings like get_station_info or search_route. The mention of '指定駅' and 'ODPTデータ' provides precise scope.

    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 gives clear context: use this tool when you need a station's timetable directly from ODPT data, as opposed to relying on Yahoo. It doesn't explicitly name alternatives or exclusions, but the purpose is unambiguous enough to guide selection among sibling tools.

    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?

    With no annotations, the description carries the full burden. It implies a read-only listing ('display') but does not mention whether the language parameter affects output, pagination, or any operational constraints.

    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 a single, front-loaded sentence that conveys the essential information without any fluff.

    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?

    The core purpose is clearly covered for a low-complexity list tool, but the optional language parameter is omitted and no output structure is described. Still, completeness is reasonable given the simple nature of the tool.

    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?

    The single 'language' parameter has 0% schema description coverage and the tool description does not mention it. The parameter name and enum are self-explanatory, but the description fails to compensate for the lack of schema details.

    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 lists all ferry/water bus ports for two specific operators (Tokai Kisen and Tokyo Cruise). This distinguishes it from siblings like search_ferry and list_transit_operators.

    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?

    Provides clear context that this is for listing ports of specific operators, which implies when to use it. However, it does not explicitly mention alternatives or exclusions.

    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?

    With no annotations, the description carries the full burden and discloses multiple behavioral traits: automatic language identification (Japanese/English/Chinese), detection of weather/high temperature/service suspensions, and returning AI advice. This goes beyond a generic search tool, though it does not specify the output format or confirm read-only behavior explicitly.

    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 and front-loaded, starting with the core purpose '乗り換えルート検索' followed by a clear explanation and then additional feature notes. It uses a single sentence-like structure with no redundant text, making it easy to parse.

    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 only two simple string parameters and no output schema, the description provides a solid high-level overview including output behavior (AI advice) and extra detection features. It does not detail the exact response structure or error handling, but for this complexity it is sufficiently complete.

    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 input schema already describes both parameters (from and to) as station names with 100% coverage. The description merely restates the departure/arrival station concept without adding further parameter-level detail, so it does not add value beyond 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 explicitly states the tool searches for transfer routes from a departure station to an arrival station, which clearly identifies the action and resource. This distinguishes it from sibling tools like search_bus and search_ferry by focusing on rail/station-based route finding.

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

    Usage Guidelines3/5

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

    The description implies the tool is used for station-to-station route searches but does not explicitly state when to use it versus alternatives such as search_bus, search_ferry, or get_timetable. There is no mention of exclusions or specific scenarios, leaving usage context to be inferred.

    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

tokyo-transit-mcp MCP server

Copy to your README.md:

Score Badge

tokyo-transit-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/loosephoto/tokyo-transit-mcp'

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