Taiwan MCP server: taiwan-geology (geological hazard data)
Taiwan Geology MCP has well-structured tool definitions with consistent naming (verb_noun pattern: query_, get_) and complete input schemas using Zod validation. All 5 tools have descriptions in Chinese, though they are brief (20-40 chars) and lack LLM-optimized context about when to use each tool vs. alternatives. Parameter descriptions are present but minimal. Output schemas are not documented, LLMs cannot plan downstream calls or know what fields to expect. No error handling guidance, no pagination support despite tools returning potentially large result sets (e.g., nearby faults, sensitive areas). Tools follow single-responsibility principle well. Missing: output schema documentation, error recovery guidance, parameter constraints (enums for alert_level, county validation).
查詢座標附近活動斷層(名稱、距離、類型)
取得指定座標地質圖資訊(地層/年代/岩性)
取得目前大規模崩塌警戒(紅/黃色)
查詢指定座標的土壤液化潛勢等級(高/中/低)
查詢座標附近地質敏感區(斷層/山崩/地滑)
Output schemas not documented. LLMs cannot infer what fields are returned, breaking downstream tool chaining and forcing discovery detours.
Descriptions are too brief (20-40 chars) and lack context. No explanation of WHEN to use each tool vs. alternatives, or what the LLM should expect. Baseline for A+ tools is 50-200 chars with clear intent.
No error handling guidance. Tools return errors but do not tell LLMs what to do next (retry, ask user, or fail). No recovery paths documented.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 58 | 2026-07-28+ | v2 |
No pagination or result limits documented. Tools querying spatial data (nearby faults, sensitive areas) may return large result sets without limit, risking context window exhaustion.
Parameter constraints missing. 'alert_level' accepts 'red/yellow/all' but is not declared as enum; 'county' is free-form string with no validation. Enums prevent hallucinated values.