# Agent 友善度

> Agent 友善度是 GeoWeb 制定的網站檢測標準，量的是一個網站替 AI agent 準備了多少可以直接讀取的入口與說明檔。分數從 0 到 100，跟 12 個維度的 GEO 體質分開計算。

這一頁是它的完整規格：檢查哪 18 項、每一項怎樣算通過、分數怎麼算，以及每一次修訂改了什麼。

- 現行版本: 2026-11-11
- 第一版上線: 2026-04-27
- 制定與維護: GeoWeb（geoweb.tw）
- 檢查項目: 18 項（13 項計分、5 項只供參考）

## 量的是 AI agent 拿不拿得到機器讀的入口

AI agent 跟搜尋引擎的爬蟲不一樣。爬蟲是來把你的內容讀回去，agent 則是替使用者來辦事的，像是查資料、比價格、找可以預約的時段。它到了你的網站，第一件事是找機器讀得懂的說明：llms.txt 有沒有交代網站上有哪些內容，robots.txt 有沒有寫清楚哪些 AI 可以進來，能不能直接拿到一份 Markdown 版本的頁面，還有網站有沒有公開它提供哪些服務。

Agent 友善度量的就是這些入口準備了多少。它檢查的全是網站對外公開的檔案和設定，至於文章寫得好不好，那是 GEO 體質在管的事。

## 為什麼不算進 GEO 總分

GEO 體質看的是 AI 讀不讀得懂你的內容、願不願意引用你；Agent 友善度看的是機器接不接得上你的網站。兩個分數分開列，你看報告就分辨得出問題是出在內容，還是出在入口。內容寫得再好，agent 拿不到機器讀的版本，就可能改用別家的資料。

另一個原因是，這張檢查表裡有不少項目，多數品牌今天並沒有理由全部做。例如把網站包成 MCP server 是一個工程專案，前提是你真的有值得讓 AI 自動呼叫的服務；報價要看人、案子要先談過的生意，這一格留白是合理的選擇。Agent 友善度照樣會反映這一格沒做，因為它量的就是入口準備了多少；但如果把它算進 GEO 總分，選擇不做的網站就得背一個補不回來的扣分，總分也就不能反映真實的體質了。所以 Agent 友善度從第一版起就是獨立呈現，不計入 GEO 總分。

## 13 項計分檢查與權重

每一項都只讀取網站公開的網址或 DNS 記錄，再看回應符不符合條件。13 項的權重合計 100。

| 檢查項目 | 怎樣算通過 | 權重 |
|---|---|---|
| `/llms.txt` | 回傳純文字（不是 HTML 網頁），去掉頭尾空白後至少 200 字元。不到 200 字元得 40%。 | 13 |
| robots.txt 的 AI bot 規則 | robots.txt 用 `User-agent` 寫出 GPTBot、ClaudeBot、PerplexityBot、Google-Extended 其中至少 3 個，開放或封鎖都算，只寫在註解裡的不算。寫出 1 到 2 個得 50%。 | 11 |
| JSON-LD Action | 被檢查的那一頁，JSON-LD 裡有 Action 類型（例如 `SearchAction`）或 `EntryPoint`。 | 11 |
| MCP Server Card | `/.well-known/mcp/server-card.json` 或 `/.well-known/mcp.json` 任一個回傳合法 JSON。 | 10 |
| `/llms-full.txt` | 條件同 `/llms.txt`。 | 9 |
| API Catalog | `/.well-known/api-catalog` 回傳合法 JSON（RFC 9727）。檔案在、但 JSON 格式錯誤的得 20%；回傳 HTML 網頁的算沒有放。 | 8 |
| security.txt | `/.well-known/security.txt` 有 `Contact` 與 `Expires` 兩個欄位（RFC 9116）。只有其中一個得 40%；兩個都沒有，或回傳的是 HTML 網頁，得 0。 | 8 |
| HTTP Link 標頭 | 被檢查那一頁的回應帶有 `Link` 標頭，而且 rel 的值（一個 rel 可以同時寫好幾個）含有 sitemap、describedby、llms-txt、llms-full-txt、mcp-server、agent-skills 或 `http://www.w3.org/ns/json-ld#context` 其中之一（RFC 8288）。有 `Link` 標頭但沒有這些 rel 得 30%。 | 7 |
| Markdown 內容協商 | 以 `Accept: text/markdown` 請求首頁，回應的 Content-Type 是 Markdown，內容也跟 HTML 版不同。Content-Type 對了、內容卻跟 HTML 版一樣得 40%。 | 7 |
| Content-Signal | robots.txt 裡有 `Content-Signal` 指令（IETF 草案 draft-canel-robots-content-signal）。 | 5 |
| DNS-AID | 網域的 `_agents` 子網域底下有給 AI agent 探索用的 DNS 記錄（IETF 個人草案 draft-mozleywilliams-dnsop-dnsaid）。 | 5 |
| Agent Skills | `/.well-known/agent-skills/index.json` 是 JSON 物件，`skills` 是非空陣列。檔案在、但 JSON 格式錯誤的得 20%，是 JSON 但沒有 `skills` 陣列得 30%；回傳 HTML 網頁的算沒有放。 | 4 |
| OAuth 探索 | `/.well-known/oauth-authorization-server`（RFC 8414）或 `/.well-known/oauth-protected-resource`（RFC 9728）任一個回傳合法 JSON。 | 2 |

JSON-LD Action 和 DNS-AID 沒做到的時候，報告上標的是「警告」而不是「不通過」：沒有宣告任何動作的頁面不算寫錯，只是少了一個入口；DNS-AID 依據的草案還沒有被 IETF 工作小組採用，沒有記錄代表還沒做，不算缺陷。

## 5 項只供參考的檢查

下面 5 項會照樣檢查、照樣列在報告裡，但權重是 0，不影響分數。

| 檢查項目 | 看什麼 |
|---|---|
| Web Bot Auth 金鑰目錄 | `/.well-known/http-message-signatures-directory` 是 JSON 物件，`keys` 是非空陣列。回傳 HTML 網頁的算沒有放。 |
| `/auth.md` | 站根有一份給 agent 看的註冊說明，內容提到註冊、授權、OAuth 或憑證。回傳 HTML 網頁的不算。 |
| A2A Agent Card | `/.well-known/agent-card.json`（或舊路徑 `/.well-known/agent.json`）有 `name`，`skills` 是非空陣列。 |
| 不存在的網址回傳 404 | 網站對一個不存在的網址回 404 或 410。如果回的是 200 這類代表「成功」的狀態碼，等於告訴機器這一頁存在（這種情況叫軟 404），算不通過；轉址到首頁、最後拿到 200 的也一樣。 |
| 基本信任頁 | 看「關於、聯絡、隱私權、服務條款」四類頁面找到幾類：首頁有連到的算，打得開 `/about`、`/contact`、`/privacy`、`/terms` 而且內容至少 200 字元的也算。網站如果對不存在的網址也回幾乎相同的內容，這四個固定網址就不算數。 |

這 5 項都是 2026 年 7 月以後才加入的。我們的做法是，新加入的檢查先只供參考，等看過夠多網站的結果、確認它分得出好壞，才決定要不要計分、給多少權重。前三項目前幾乎沒有網站採用（見下面的台灣企業網站現況），拿來計分只會讓所有網站一起被扣分；後兩項看的是網站實際怎麼回應，加入的時間最短，權重要等確認它們分得出好壞再定。另外像 `/auth.md` 牽涉到要不要讓 agent 自己註冊帳號，本來就是商業上的選擇，選擇不開放的網站不該因此被扣分。

## 分數怎麼算

每一項先得到 0 到 100 的單項分數：通過是 100，部分符合照上表的比例，其餘是 0。單項分數依權重的比例計入，例如權重 13 的項目，單項分數的 13% 算進總分；加總起來就是 Agent 友善度，取到小數第一位。13 項計分檢查全部通過，才會是 100 分。

報告上的「通過、警告、不通過」跟分數不是一一對應的：檔案在、但 JSON 格式錯誤的標「不通過」，仍得 20%；JSON-LD Action 和 DNS-AID 沒做到標「警告」，分數卻是 0。計分一律以上表的比例為準。

報告畫面上的分數會四捨五入成整數，再依整數標等級：80 分以上是「完整」，50 到 79 分是「部分」，49 分以下是「不足」。

## 我們怎麼檢查、哪些事不做

- 只送一般的 GET 讀取請求。一次檢查會對你的網站送出 20 多個請求，另外透過 Cloudflare 的公共 DNS 查詢服務查 7 筆 DNS 記錄。
- 說明檔與路徑的每個請求最多等 8 秒、轉址最多跟 3 次，失敗了不重試；被檢查的那一頁本身最多等 30 秒、轉址最多跟 5 次。
- 不會呼叫你的 API、MCP 工具或任何服務。說明檔裡宣告了哪些端點，我們只檢查檔案格式，不會連過去。
- 不登入、不送表單。各種說明檔一律只讀原始回應；只有被檢查的那一頁，如果看起來是 JavaScript 框架做的網頁、原始 HTML 裡的文字又很少，或對一般請求回 401、403，我們才會用瀏覽器把它畫出來再讀。
- 同一個網站 5 分鐘內重新檢查，會沿用上一次抓到的 llms.txt、robots.txt 這類檔案。剛改完檔案的話，隔 5 分鐘再測才看得到新結果。
- 檢查的時候網站剛好連不上，相關的項目會被當成沒有取得，跟真的沒放看起來一樣。結果跟你預期的不同，可以隔一段時間再測一次。

## 跟 Cloudflare Agent Readiness 的關係

2026 年 4 月 17 日，Cloudflare 推出 Agent Readiness 分數，同時推出檢測站 [isitagentready.com](https://isitagentready.com/)（繁體中文版公告譯為「智慧體就緒程度」）。Agent Readiness 跟 Agent 友善度量的都是網站替 AI agent 準備的入口。以 2026 年 11 月檢測站實際檢查的項目來看，robots.txt、Link 標頭、Markdown 內容協商、Content-Signal、Web Bot Auth、Agent Skills、API Catalog、OAuth 探索、MCP Server Card、A2A Agent Card、`/auth.md` 與 DNS-AID 兩邊都會檢查，其中後三項不在 Cloudflare 當初的公告裡。

我們的 18 項裡，另外 6 項不在 Cloudflare 公開的檢查項目中：llms.txt、llms-full.txt、security.txt、JSON-LD Action 這四項是我們自己加的；不存在的網址回傳 404、基本信任頁這兩項看網站實際怎麼回應的檢查，則參考了 Vercel 以 Ora 的評分引擎做的 [is-agentic.com](https://is-agentic.com/)。反過來，有三類我們目前不查：WebMCP（要在瀏覽器裡實際執行網站的程式，才查得到它提供哪些工具）、付款與電商類的協定（規格還在變動），以及 Cloudflare 後來加入的 ARD manifest、Personal Agent Protocol 等新項目。sitemap.xml 則放在 12 維的「AI 爬蟲可達性與索引」裡檢查。

兩邊的分數不能直接換算。我們用權重加總，新加入的項目也會先只供參考，所以同一個網站在兩邊拿到的分數會不一樣。

## 台灣企業網站現況（2026 年 11 月）

2026 年 11 月 11 日，我們用這份標準的 2026-11-11 版，重新檢查了 geoweb.tw 過去檢查過的 1,107 個台灣網站（.tw 網域）首頁。這批網站涵蓋 50 多種產業，最多的是室內設計、律師事務所、補習班、醫美診所與建材營造；它不是隨機抽樣，所以只能說明這群企業網站的情況，不能代表台灣所有的網站。名單已排除 geoweb.tw 自己的網站，以及我們已知的客戶網站。下面的數字只計入首頁讀得到、檢查也沒有被對方擋下的 1,010 個網站；另外有 80 個網站擋下了一般的檢查請求，17 個首頁打不開。

1,010 個網站的分數分布如下：

| 分數 | 網站數 | 比例 |
|---|---|---|
| 未滿 20 分 | 908 | 89.9% |
| 20 到未滿 40 分 | 88 | 8.7% |
| 40 到未滿 60 分 | 12 | 1.2% |
| 60 到未滿 80 分 | 1 | 0.1% |
| 80 分以上 | 1 | 0.1% |

平均 5.8 分，中位數 0 分；0 分的網站有 656 個（65.0%）。各項檢查通過的網站數如下：

| 檢查項目 | 通過的網站 | 比例 |
|---|---|---|
| `/llms.txt` | 118 | 11.7% |
| robots.txt 的 AI bot 規則 | 78 | 7.7% |
| JSON-LD Action | 198 | 19.6% |
| MCP Server Card | 4 | 0.4% |
| `/llms-full.txt` | 22 | 2.2% |
| API Catalog | 5 | 0.5% |
| security.txt | 8 | 0.8% |
| HTTP Link 標頭 | 6 | 0.6% |
| Markdown 內容協商 | 12 | 1.2% |
| Content-Signal | 47 | 4.7% |
| DNS-AID | 10 | 1.0% |
| Agent Skills | 4 | 0.4% |
| OAuth 探索 | 37 | 3.7% |
| Web Bot Auth 金鑰目錄（只供參考） | 0 | 0.0% |
| `/auth.md`（只供參考） | 1 | 0.1% |
| A2A Agent Card（只供參考） | 0 | 0.0% |
| 不存在的網址回傳 404（只供參考） | 734 | 72.7% |
| 基本信任頁（只供參考） | 101 | 10.0% |

65% 的網站是 0 分，也就是說大多數網站還沒有替 AI agent 準備任何入口；約九成的網站低於 20 分。通過率最高的計分項是 JSON-LD Action（19.6%），常見的站內搜尋宣告（SearchAction）就算數；llms.txt 只有 11.7% 的網站有放，在 robots.txt 寫明 AI bot 規則的也只有 7.7%。MCP Server Card、API Catalog 這類要真的有服務可以串接才會做的項目，都不到 1%。

## 引用本標準

在文章、報告或簡報裡引用這個標準時，請註明版本日期，因為檢查項目會隨著各項規格演進而修訂：

GeoWeb（2026）。〈Agent 友善度〉，2026-11-11 版。https://geoweb.tw/scoring/agent-friendliness

## 修訂紀錄

- 2026-11-11: 公開標準本文，並修正幾處比本文寬鬆的判定：回傳 HTML 網頁的 llms.txt、llms-full.txt、security.txt、API Catalog、Agent Skills 與 Web Bot Auth 金鑰目錄都算沒有放；security.txt 兩個欄位都沒有得 0；robots.txt 只算寫在 `User-agent` 行裡的 AI bot；Link 標頭改為逐值比對 rel，JSON-LD context 更正為 `http://www.w3.org/ns/json-ld#context`；對不存在的網址也回同一份內容的網站，固定網址不再算找到信任頁。MCP Server Card 的不通過說明更正為兩條路徑。
- 2026-08-25: 新增兩項行為面檢查：不存在的網址回傳 404、基本信任頁，都只供參考。
- 2026-07-30: 新增 Web Bot Auth 金鑰目錄、`/auth.md`、A2A Agent Card 三項，都只供參考。MCP Server Card 不再檢查 `/.well-known/agent.json`，那是 A2A 的舊路徑。
- 2026-06-10: 新增 DNS-AID，計分項目增為 13 項，權重調整為現行版本。
- 2026-05-28: 新增 HTTP Link 標頭、Markdown 內容協商、Content-Signal、Agent Skills、OAuth 探索五項，計分項目增為 12 項。
- 2026-05: `/.well-known/ai-plugin.json` 停止計分（ChatGPT 外掛已停用），它的權重分給 `/llms.txt`、`/llms-full.txt` 與 JSON-LD Action。
- 2026-04-27: 第一版上線：8 項檢查，獨立呈現，不計入 GEO 總分。

---

- 原始頁面: https://geoweb.tw/scoring/agent-friendliness
- 評分依據: https://geoweb.tw/scoring
