Skip to main content
Glama
kuotunyu

taiwan-weather-mcp

by kuotunyu

Server Quality Checklist

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

  • Disambiguation5/5

    Each tool covers a distinctly separate concern: forecasts, active weather warnings, and recent earthquakes. There is no overlap in purpose or return data, so an agent can select the right tool without ambiguity.

    Naming Consistency5/5

    All three tools follow the same get_<noun> pattern with clear, descriptive names. The naming is consistent and predictable.

    Tool Count4/5

    Three tools is at the lower end of a reasonable range, but each covers a meaningful aspect of Taiwan weather information. The count feels slightly minimal rather than bloated, which is appropriate for a focused weather server.

    Completeness4/5

    The server covers forecasts, warnings, and earthquakes, which are the most commonly requested Taiwan weather data. A minor gap is the lack of current observed weather conditions or air quality, but the existing tools cover the core domain well.

  • Average 4.7/5 across 3 of 3 tools scored.

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

    • No community issues in the last 6 months
    • 5 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.

  • 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

  • Behavior4/5

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

    The description aligns with the readOnlyHint and openWorldHint annotations by presenting a read-only query that 'includes' certain fields rather than claiming an exhaustive shape. It adds useful detail about returned content—time, magnitude, depth, epicenter, and intensity summary—and documents the limit behavior, exceeding what annotations alone convey.

    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 compact and well-structured: one sentence specifying the purpose, one sentence summarizing response contents, and a brief Args section for the parameter. Every line adds value, and the most important scoping information is front-loaded.

    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 simple read-only tool with one optional parameter and an output schema, the description covers the purpose, parameter constraints, and return value highlights. Nothing essential is missing for an agent to invoke and interpret the result correctly.

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

    Parameters5/5

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

    The schema only lists limit with a default of 5, but the description explicitly defines its meaning (number of returned records), its valid range (1–10), and its default. This fully compensates for the 0% schema description coverage and leaves no ambiguity about how to use 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?

    The description opens with a clear action and resource: '查詢最近幾筆顯著有感地震報告' (query recent notable felt earthquake reports). It is immediately distinguishable from sibling tools like get_forecast and get_weather_warnings because it is specifically about earthquakes, not weather.

    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 intended context is clear: use this when you need recent felt earthquake reports, with an adjustable limit. It does not explicitly name alternatives or say when not to use it, but the scoping language ('最近幾筆', '顯著有感') provides enough context for an agent to choose this tool appropriately.

    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 the readOnlyHint and openWorldHint annotations, the description discloses key behavior: results are aggregated by warning type with affected counties and valid times, and it specifies the exact fallback message when no warnings are active nationwide. This is concrete behavioral context that helps an agent anticipate output and edge cases.

    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 two sentences with no filler. The primary verb and resource are front-loaded in the first sentence, and the second sentence adds behavioral detail about aggregation and the no-warning case. Every sentence earns its place.

    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 zero parameters, an output schema, and read-only annotations, the description fully covers what an agent needs: what the tool does, how results are structured, and the no-warning response. No critical operational details are missing.

    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?

    The tool has zero parameters and the schema contains no properties, so the description carries no parameter documentation burden. The baseline for a zero-parameter tool is 4, and no additional parameter semantics are needed.

    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 a specific verb and resource: 查詢目前生效中的天氣特報 (query currently active weather advisories). It enumerates the warning types (颱風、豪雨、大雨、低溫、強風等), which distinguishes it from siblings like get_forecast and get_recent_earthquakes by topic and temporal state.

    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 for when to use the tool: whenever currently active weather warnings are needed, with a defined aggregate output. It does not explicitly mention alternative tools or exclusion criteria, but the scope is unambiguous enough that an agent can decide correctly without confusion.

    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 the readOnly/openWorld annotations, the description discloses useful behavior: the forecast is split into three periods, the response includes specific weather fields, and ambiguous city/county names return both locations. This is meaningful operational context not available from annotations or schema.

    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?

    Purpose is front-loaded, the return summary is compact, and the Args line adds direct parameter guidance without padding. Every sentence earns its place.

    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 single-parameter tool with an output schema and safe-read annotations, the description covers scope, input flexibility, return shape, and edge-case behavior. Nothing essential for selecting or invoking the tool is missing.

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

    Parameters5/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 fully carry parameter meaning. It does: city is defined as one of Taiwan's 22 cities/counties, accepts Chinese and English common spellings, includes concrete examples, and notes the 新竹/嘉義 dual-match case.

    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 states a specific verb (查詢) and resource (台灣某縣市未來36小時天氣預報), and lists the returned fields. This makes the tool's purpose immediately distinguishable from the warning and earthquake siblings.

    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?

    Clear intended context is given: querying a Taiwan city forecast for the next 36 hours, with input-writing conventions and the dual-match behavior for 新竹/嘉義. It does not explicitly say 'use get_weather_warnings for warnings' or similar exclusions, but the sibling boundaries are obvious from names and descriptions.

    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

taiwan-weather-mcp MCP server

Copy to your README.md:

Score Badge

taiwan-weather-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/kuotunyu/taiwan-weather-mcp'

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