City Atlas 城市圖譜
Measured conclusion: Deep-tested. L2 outcome: tools_ok.
Greater Hsinchu, Taiwan open data on a 125 m grid: crashes, buses, schools, flood. Read-only.
| Author | tw.cityatlas |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Deep-tested |
| L1 liveness | alive |
| L1 latency | 2006 ms |
| Last measured | 2026-10-24 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"City Atlas 城市圖譜": {
"url": "https://mcp.cityatlas.tw/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (10)
search_catalogread-only用關鍵字找城市圖譜的資料:11 大類 82 項資料,細到 161 條指標(141 條格網:事故、公車、人行道、淹水、樹…;20 條里 / 鄉鎮 / 縣市:里人口、長者與兒童、里所得…),加上 47 屆選舉與公投(投票率、得票率);公開版少 Google 街景判讀的 2 項 4 條,實際查得到 80 項、157 條:回代號、名稱、單位、年份、出處機關、是不是推估、涵蓋幾區。Search the indicator catalog by keyword (82 datasets in 11 categories, 161 indicators: 141 grid + 20 neighbourhood/district/county, plus 47 elections; this public server omits 4 Street-View-derived indicators, so 157 are searchable).
Parameters:
query(required) — string — 關鍵字,例:「事故 行人」「公車」「淹水」;空白分開的字要全部對上limit— integer — 最多幾條,預設 12
Hints: read-only yes · destructive no · idempotent yes · open-world no
describe_metricread-only一條資料的完整出處(機關、資料集、網址、取得日、檔案、對帳)、涵蓋哪些鄉鎮、統計、以及「可能在講別的事」的但書。Full provenance and caveats of one indicator.
Parameters:
metric(required) — string — 資料代號或名稱,例:crash_ped4 或「行人事故」
Hints: read-only yes · destructive no · idempotent yes · open-world no
rankread-only某條資料在里或鄉鎮排前幾名(跟網站 07 同一套算法:先加總再除、人少的地方往平均拉)。可換算每千居民 / 每公里道路 / 路 + 人 + 店(只有事故)/ 任何能當分母的代號;可只看某個鄉鎮、可加篩條件。只回前 N 名。里層資料(長者占比、里所得、選舉投票率…)一個里一個數,不能換算、單位只能是里(人數可加到鄉鎮)。沒編里的範圍不進排名。Rank neighbourhoods or districts by an indicator, optionally normalised.
Parameters:
metric(required) — string — 資料代號或名稱,例:crash_ped4 或「行人事故」per— string — 換算:不除(預設)/ 每千居民 / 每公里道路 / 路 + 人 + 店 / 分母的資料代號top— integer — 前幾名,預設 10town— string — 只看一個鄉鎮,例:竹北、東區unit— string — 單位:里(預設,neighbourhood)或 鄉鎮(district)shrink— boolean — 有換算時,人少的地方往平均拉;預設 true(同網站),false = 看原始的率filters— array — 篩條件:里 / 鄉鎮的值要符合,例:[{metric:'residents',op:'>',value:100}]descending— boolean — 由高到低,預設 true
Hints: read-only yes · destructive no · idempotent yes · open-world no
lookup_placeread-only給地址(例:竹北市光明六路 10 號)、里名(例:竹北市東平里)或鄉鎮名 → 那裡各項數字,以及在大新竹排第幾;查里名時另附里人口、所得、65 歲以上與 14 歲以下。地址只定位到 125 公尺的格(用我們自己的門牌檔比對,不送外部服務、不記錄)。Numbers for an address, neighbourhood or district.
Parameters:
place(required) — string — 地址、里名或鄉鎮名metrics— array — 要看哪幾條(代號或名稱);不給就看常用的 10 條
Hints: read-only yes · destructive no · idempotent yes · open-world no
need_rankingread-only哪裡最多人被公車耽誤(被耽誤的人·分鐘、工作地、學校、公設的百分位加權);權重可帶,不帶用預設 60/20/10/10。Where the most people lose time on public transport compared with driving.
Parameters:
top— integer — 前幾名,預設 10town— string — 只看一個鄉鎮,例:竹北、東區unit— string — 單位:里(預設,neighbourhood)或 鄉鎮(district)weights— object — 權重;不帶 = 60 / 20 / 10 / 10
Hints: read-only yes · destructive no · idempotent yes · open-world no
overlay_metricsread-only兩條資料疊起來看:A(可換算)與 B 各切三等分成九宮格,回各格有幾個里 / 鄉鎮,並列出「兩樣都高」的。例:事故(每千居民)高、人行道少的里。Which places are high on two indicators at once.
Parameters:
metric_a(required) — string — 資料 A(代號或名稱)metric_b(required) — string — 資料 B(代號或名稱)per— string — A 的換算:不除(預設)/ 每千居民 / 每公里道路 / 路 + 人 + 店top— integer — 前幾名,預設 10town— string — 只看一個鄉鎮,例:竹北、東區unit— string — 單位:里(預設,neighbourhood)或 鄉鎮(district)shrink— boolean — 有換算時,人少的地方往平均拉;預設 true(同網站),false = 看原始的率
Hints: read-only yes · destructive no · idempotent yes · open-world no
compare_groupsread-only有 B 的格 vs 沒有 B 的格,A 差多少 —— 在居民 × 道路長度切成的 25 層裡各比一次(避免被市中心拉著走)。只描述,不做因果。Compare cells with vs without B, within strata of residents and road length.
Parameters:
metric_a(required) — string — 要比的東西 A(件數 / 長度這類能加總的),例:行人事故has_b(required) — string — 分組的依據 B:格裡有沒有,例:人行道、公車站per— string — A 的換算:不除(預設)/ 每千居民 / 每公里道路
Hints: read-only yes · destructive no · idempotent yes · open-world no
filter_cellsread-only找出同時符合最多四個條件的 125 公尺格,回符合幾格、住了多少人,並照里 / 鄉鎮加總。例:離公車站超過 500 公尺、又住超過 100 人。Find grid cells that meet up to four conditions.
Parameters:
conditions(required) — array — 每一格都要同時符合,例:[{metric:'stop_dist_m',op:'>',value:500}]top— integer — 前幾名,預設 10town— string — 只看一個鄉鎮,例:竹北、東區unit— string — 單位:里(預設,neighbourhood)或 鄉鎮(district)
Hints: read-only yes · destructive no · idempotent yes · open-world no
compare_changeread-only兩個年份比,哪些里增加最多、減少最多(跟網站 07「看變化」同一套):里人口(97–114 年底,戶籍;97–106 只有新竹縣市、竹南、頭份,新設里設立前是估計、不拿來比)、事故場數(111–114)、里所得中位數(111→112)、投票率(總統 / 立委不分區政黨票 / 立委區域 / 縣市長,年份照選舉目錄)。門檻自己填(增加幾人 / 件 / 萬元 / 個百分點以上才算增加很多);里界調整過、兩屆不是同一塊地的里不比、列出原因。只描述差多少,不做因果。Which neighbourhoods grew or shrank most between two years (population, crashes, income, turnout).
Parameters:
topic(required) — string — 題目:population 里人口 / crash 事故 / income 里所得中位數 / turnout_president 總統投票率 / turnout_party_list 不分區政黨票投票率 / turnout_legislator 立委(區域)投票率 / turnout_mayor 縣市長投票率to— string — 結束年份;不給 = 預設最後一年top— integer — 前幾名,預設 10from— string — 起始年份,例:97 或 107(人口)、111(事故)、2020(投票率,選舉年);不給 = 預設(投票率是最近兩屆)unit— string — 單位:里(預設)或 鄉鎮;只有事故兩種都可以,其他只比里threshold— number — 門檻:增加(或減少)幾人 / 件 / 萬元 / 個百分點以上才算「很多」;不給或給 0 = 預設(人口 500、事故里 5 鄉鎮 20、所得 5、投票率 3)
Hints: read-only yes · destructive no · idempotent yes · open-world no
show_mapread-only把一條資料(或「需要度」)畫成里 / 鄉鎮的五級地圖,在對話裡直接顯示,可拖曳縮放、滑過看數字;換算同「排名」。畫不出來的 AI 會拿到一個能點開的網址(請轉給使用者)。Draw an indicator as an interactive choropleth map of neighbourhoods; chats that cannot render it get a link that opens the map in a browser (pass it on to the user).
Parameters:
metric(required) — string — 資料代號、名稱,或「需要度」per— string — 換算:不除(預設)/ 每千居民 / 每公里道路 / 路 + 人 + 店 / 分母的資料代號town— string — 地圖先對準這個鄉鎮(其他鄉鎮照樣畫)unit— string — 單位:里(預設,neighbourhood)或 鄉鎮(district)shrink— boolean — 有換算時,人少的地方往平均拉;預設 true(同網站),false = 看原始的率
Hints: read-only yes · destructive no · idempotent yes · open-world no
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.