# City Atlas 城市圖譜 (remote · mcp.cityatlas.tw)

Greater Hsinchu, Taiwan open data on a 125 m grid: crashes, buses, schools, flood. Read-only.

- Trust score: 72/100 (medium)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-10-18

## Components

- remote · `mcp.cityatlas.tw`: 72/100 (this document), [markdown](https://verifymcp.io/servers/tw-cityatlas-cityatlas/mcp.md), [page](https://verifymcp.io/servers/tw-cityatlas-cityatlas/mcp)

## Channel facts

- Endpoint: `https://mcp.cityatlas.tw/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `0.3.1`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-10-18.

- **Endpoint Security**: 74/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one.
  - HTTPS is enforced; there's no plaintext access path.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 72/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (good).
  - Context-footprint check failed: tool/resource definitions use about 2594 tokens (~235/item across 11 items; 10 tools + 1 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 13/100
  - Stability observed for 4 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 10 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 12 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a current MCP spec version (2026-07-28).
  - Supports UI / widget rendering.

## Install

### How do I install the City Atlas 城市圖譜 MCP server?

City Atlas 城市圖譜 is a hosted endpoint at https://mcp.cityatlas.tw/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http tw-cityatlas-cityatlas 'https://mcp.cityatlas.tw/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "tw-cityatlas-cityatlas": {
      "url": "https://mcp.cityatlas.tw/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "tw-cityatlas-cityatlas": {
      "type": "http",
      "url": "https://mcp.cityatlas.tw/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.tw-cityatlas-cityatlas]
url = "https://mcp.cityatlas.tw/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "tw-cityatlas-cityatlas": {
      "type": "remote",
      "url": "https://mcp.cityatlas.tw/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add tw-cityatlas-cityatlas --url 'https://mcp.cityatlas.tw/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  tw-cityatlas-cityatlas:
    url: "https://mcp.cityatlas.tw/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "tw-cityatlas-cityatlas": {
      "Transport": "http",
      "Url": "https://mcp.cityatlas.tw/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add tw-cityatlas-cityatlas -t streamable-http -u 'https://mcp.cityatlas.tw/mcp'
```

### Other

```json
{
  "mcpServers": {
    "tw-cityatlas-cityatlas": {
      "type": "http",
      "url": "https://mcp.cityatlas.tw/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-10-16 (score 72, +1)

No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-15 (score 71, 0)

- [functional improvement] Stability: unverified → 0.03

### 2026-10-14 (score 71)

First indexed and scored.

## MCP tools (10)

### `search_catalog` (~274 tokens)

查資料目錄

用關鍵字找城市圖譜的資料:11 大類 80 項資料,細到 159 條指標(139 條格網:事故、公車、人行道、淹水、樹…;20 條里 / 鄉鎮 / 縣市:里人口、長者與兒童、里所得…),加上 47 屆選舉與公投(投票率、得票率);公開版少 Google 街景判讀的 2 項 4 條,實際查得到 78 項、155 條:回代號、名稱、單位、年份、出處機關、是不是推估、涵蓋幾區。Search the indicator catalog by keyword (80 datasets in 11 categories, 159 indicators: 139 grid + 20 neighbourhood/district/county, plus 47 elections; this public server omits 4 Street-View-derived indicators, so 155 are searchable).

Input parameters:

- `limit` (integer): 最多幾條,預設 12
- `query` (string, required): 關鍵字,例:「事故 行人」「公車」「淹水」;空白分開的字要全部對上

### `describe_metric` (~95 tokens)

看資料說明

一條資料的完整出處(機關、資料集、網址、取得日、檔案、對帳)、涵蓋哪些鄉鎮、統計、以及「可能在講別的事」的但書。Full provenance and caveats of one indicator.

Input parameters:

- `metric` (string, required): 資料代號或名稱,例:crash_ped4 或「行人事故」

### `rank` (~390 tokens)

排名

某條資料在里或鄉鎮排前幾名(跟網站 07 同一套算法:先加總再除、人少的地方往平均拉)。可換算每千居民 / 每公里道路 / 路 + 人 + 店(只有事故)/ 任何能當分母的代號;可只看某個鄉鎮、可加篩條件。只回前 N 名。里層資料(長者占比、里所得、選舉投票率…)一個里一個數,不能換算、單位只能是里(人數可加到鄉鎮)。沒編里的範圍不進排名。Rank neighbourhoods or districts by an indicator, optionally normalised.

Input parameters:

- `descending` (boolean): 由高到低,預設 true
- `filters` (array): 篩條件:里 / 鄉鎮的值要符合,例:[{metric:'residents',op:'>',value:100}]
- `metric` (string, required): 資料代號或名稱,例:crash_ped4 或「行人事故」
- `per` (string): 換算:不除(預設)/ 每千居民 / 每公里道路 / 路 + 人 + 店 / 分母的資料代號
- `shrink` (boolean): 有換算時,人少的地方往平均拉;預設 true(同網站),false = 看原始的率
- `top` (integer): 前幾名,預設 10
- `town` (string): 只看一個鄉鎮,例:竹北、東區
- `unit` (string): 單位:里(預設,neighbourhood)或 鄉鎮(district)

### `lookup_place` (~171 tokens)

查某個地方

給地址(例:竹北市光明六路 10 號)、里名(例:竹北市東平里)或鄉鎮名 → 那裡各項數字,以及在大新竹排第幾;查里名時另附里人口、所得、65 歲以上與 14 歲以下。地址只定位到 125 公尺的格(用我們自己的門牌檔比對,不送外部服務、不記錄)。Numbers for an address, neighbourhood or district.

Input parameters:

- `metrics` (array): 要看哪幾條(代號或名稱);不給就看常用的 10 條
- `place` (string, required): 地址、里名或鄉鎮名

### `need_ranking` (~168 tokens)

需要度

哪裡最多人被公車耽誤(被耽誤的人·分鐘、工作地、學校、公設的百分位加權);權重可帶,不帶用預設 60/20/10/10。Where the most people lose time on public transport compared with driving.

Input parameters:

- `top` (integer): 前幾名,預設 10
- `town` (string): 只看一個鄉鎮,例:竹北、東區
- `unit` (string): 單位:里(預設,neighbourhood)或 鄉鎮(district)
- `weights` (object): 權重;不帶 = 60 / 20 / 10 / 10

### `overlay_metrics` (~254 tokens)

兩樣疊

兩條資料疊起來看:A(可換算)與 B 各切三等分成九宮格,回各格有幾個里 / 鄉鎮,並列出「兩樣都高」的。例:事故(每千居民)高、人行道少的里。Which places are high on two indicators at once.

Input parameters:

- `metric_a` (string, required): 資料 A(代號或名稱)
- `metric_b` (string, required): 資料 B(代號或名稱)
- `per` (string): A 的換算:不除(預設)/ 每千居民 / 每公里道路 / 路 + 人 + 店
- `shrink` (boolean): 有換算時,人少的地方往平均拉;預設 true(同網站),false = 看原始的率
- `top` (integer): 前幾名,預設 10
- `town` (string): 只看一個鄉鎮,例:竹北、東區
- `unit` (string): 單位:里(預設,neighbourhood)或 鄉鎮(district)

### `compare_groups` (~162 tokens)

分組比

有 B 的格 vs 沒有 B 的格,A 差多少 —— 在居民 × 道路長度切成的 25 層裡各比一次(避免被市中心拉著走)。只描述,不做因果。Compare cells with vs without B, within strata of residents and road length.

Input parameters:

- `has_b` (string, required): 分組的依據 B:格裡有沒有,例:人行道、公車站
- `metric_a` (string, required): 要比的東西 A(件數 / 長度這類能加總的),例:行人事故
- `per` (string): A 的換算:不除(預設)/ 每千居民 / 每公里道路

### `filter_cells` (~176 tokens)

篩條件

找出同時符合最多四個條件的 125 公尺格,回符合幾格、住了多少人,並照里 / 鄉鎮加總。例:離公車站超過 500 公尺、又住超過 100 人。Find grid cells that meet up to four conditions.

Input parameters:

- `conditions` (array, required): 每一格都要同時符合,例:[{metric:'stop_dist_m',op:'>',value:500}]
- `top` (integer): 前幾名,預設 10
- `town` (string): 只看一個鄉鎮,例:竹北、東區
- `unit` (string): 單位:里(預設,neighbourhood)或 鄉鎮(district)

### `compare_change` (~454 tokens)

看變化

兩個年份比,哪些里增加最多、減少最多(跟網站 07「看變化」同一套):里人口(107–114 年底,戶籍)、事故場數(111–114)、里所得中位數(111→112)、投票率(總統 / 立委不分區政黨票 / 立委區域 / 縣市長,年份照選舉目錄)。門檻自己填(增加幾人 / 件 / 萬元 / 個百分點以上才算增加很多);里界調整過、兩屆不是同一塊地的里不比、列出原因。只描述差多少,不做因果。Which neighbourhoods grew or shrank most between two years (population, crashes, income, turnout).

Input parameters:

- `from` (string): 起始年份,例:107(人口)、111(事故)、2020(投票率,選舉年);不給 = 預設(投票率是最近兩屆)
- `threshold` (number): 門檻:增加(或減少)幾人 / 件 / 萬元 / 個百分點以上才算「很多」;不給或給 0 = 預設(人口 500、事故里 5 鄉鎮 20、所得 5、投票率 3)
- `to` (string): 結束年份;不給 = 預設最後一年
- `top` (integer): 前幾名,預設 10
- `topic` (string, required): 題目:population 里人口 / crash 事故 / income 里所得中位數 / turnout_president 總統投票率 / turnout_party_list 不分區政黨票投票率 / turnout_legislator 立委(區域)投票率 / turnout_mayor 縣市長投票率
- `unit` (string): 單位:里(預設)或 鄉鎮;只有事故兩種都可以,其他只比里

### `show_map` (~269 tokens)

畫地圖

把一條資料(或「需要度」)畫成里 / 鄉鎮的五級地圖,在對話裡直接顯示,可拖曳縮放、滑過看數字;換算同「排名」。畫不出來的 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).

Input parameters:

- `metric` (string, required): 資料代號、名稱,或「需要度」
- `per` (string): 換算:不除(預設)/ 每千居民 / 每公里道路 / 路 + 人 + 店 / 分母的資料代號
- `shrink` (boolean): 有換算時,人少的地方往平均拉;預設 true(同網站),false = 看原始的率
- `town` (string): 地圖先對準這個鄉鎮(其他鄉鎮照樣畫)
- `unit` (string): 單位:里(預設,neighbourhood)或 鄉鎮(district)

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/tw-cityatlas-cityatlas/mcp#diagnostics

## Score history

- 2026-10-18: 72
- 2026-10-17: 72
- 2026-10-16: 72
- 2026-10-15: 71
- 2026-10-14: 71

## Common questions

### What is the City Atlas 城市圖譜 MCP server?

City Atlas 城市圖譜 is an MCP server listed in the public MCP registry as tw.cityatlas/cityatlas. Greater Hsinchu, Taiwan open data on a 125 m grid: crashes, buses, schools, flood. Read-only. This page covers its hosted endpoint (https://mcp.cityatlas.tw/mcp).

### Is the City Atlas 城市圖譜 MCP server safe to use?

City Atlas 城市圖譜 scores 72 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the City Atlas 城市圖譜 MCP server expose?

City Atlas 城市圖譜 exposes 10 tools: search_catalog, describe_metric, rank, lookup_place, need_ranking, and 5 more. Their descriptions and schemas cost roughly 2,413 tokens of context every time the server is loaded.

### Does the City Atlas 城市圖譜 MCP server require authentication?

No. We connected to City Atlas 城市圖譜 without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

### Is the City Atlas 城市圖譜 MCP server still maintained?

City Atlas 城市圖譜 is still listed as active in the MCP registry. We last reached this channel on 18 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://mcp.cityatlas.tw/mcp
- Website: https://mcp.cityatlas.tw/
- Changelog RSS feed: https://verifymcp.io/servers/tw-cityatlas-cityatlas/mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/tw-cityatlas-cityatlas/mcp.json
- HTML version of this page: https://verifymcp.io/servers/tw-cityatlas-cityatlas/mcp
