用 MCP 接上這座知識圖譜
這個站的知識圖譜開了一個唯讀 MCP server,任何支援 streamable HTTP 的 MCP 客戶端都能直接連,不用申請金鑰。它只回公開層內容:你的 agent 能搜概念、調閱單一概念頁、拉整張圖譜、問有依據的問題。
端點與協定
POST https://api.paulkuo.tw/mcp只接受 POST 的 JSON-RPC 2.0 請求(其他方法回 405),stateless streamable HTTP、不支援批次請求、不需要認證。瀏覽器端網頁受 Origin 白名單限制,請從 agent 或伺服器端呼叫。
掛載方式
Claude Code 一行指令:
claude mcp add --transport http paulkuo-wiki https://api.paulkuo.tw/mcp或先用 curl 試打一發:
curl -s https://api.paulkuo.tw/mcp \
-H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"wiki_search","arguments":{"query":"AI"}}}'其他支援 streamable HTTP 的 MCP 客戶端,填入上方端點即可。
四個工具
| 工具 | 做什麼 | 範圍與限制 |
|---|---|---|
wiki_search | 關鍵字搜尋公開概念頁(比對標題、標籤、摘要),回傳相符頁面與摘錄。 | 只索引公開 concept 頁,不含 sources 原文與文章全文。 |
wiki_get_concept | 用 slug 調出單一公開概念頁全文(frontmatter 加本文);slug 可從 wiki_search 結果或 wiki_ask 回答的 [[slug]] 引用取得。 | 只接受小寫字母、數字與連字號組成的 slug;非公開或不存在的 slug 回 404 式錯誤。 |
wiki_graph | 拉整張公開知識圖譜:節點(id/標題/類型/支柱)與無向邊。 | 無參數,一次回整張圖,回應較大。 |
wiki_ask | 有依據的問答:檢索公開 wiki 內容後作答,引用以 [[slug]] 標記。 | 問題上限 500 字;檢索不到依據就會拒答,不硬編。這是唯一消耗 AI 推論成本的工具,每日有總額度。 |
可見性紅線
四個工具都只讀公開層。內部筆記、未公開素材與去識別化後仍屬私領域的內容,不在這個 server 的世界裡。
限流
/mcp 端點約每分鐘 30 次請求;工具呼叫約每分鐘 10 次;wiki_ask 另有每分鐘 5 次與每 IP 每日 30 次的額度,全站每日預算用完回 503。每分鐘限流是盡力而為的記憶體計數;每日額度與全站預算以計數器存放、24 小時後自動刪除。數字可能調整。
提問紀錄
wiki_ask 的提問文字會寫入站方日誌,用於觀察問題類型、改進檢索,90 天後自動刪除。寫入前會依常見格式遮蔽 email、台灣手機與市話號碼、台灣身分證字號格式與 9 位以上的連續數字;其他寫法或其他個資不保證會被遮蔽,請勿在提問中輸入。提問紀錄本身不含 IP 與瀏覽器資訊;每日提問額度另以 IP 計數,24 小時後自動刪除。
回答語言
wiki 內容與 wiki_ask 的回答以繁體中文為主。wiki_search 比對的是繁中語料的標題與標籤,中文關鍵字命中率最高;英文詞只在原文本身含那個詞(如 AI、MCP)時才會命中,跨語言的問題交給 wiki_ask。
/ask 別名
同一個問答能力也有 NLWeb 風格的 HTTP 別名(GET/POST https://api.paulkuo.tw/ask),適合不想走 MCP 的簡單整合;「NLWeb 風格」說的是介面形狀,不是合規宣稱。
跟頁面內建 WebMCP 的差別
網站頁面另外內建 client-side 的 WebMCP 工具(/.well-known/mcp.json),那是瀏覽器裡的另一套東西;本頁說的是伺服器端的 MCP endpoint,兩者互不相干。