opendata-campus-mcp
This server provides a compliant navigation layer for discovering, browsing, and reading public Taiwanese educational resources through three core tools:
discover_education_sources: Find official Taiwanese educational platforms (e.g., NTU OCW, 均一教育平台, 教育大市集) by keyword, education stage (小學/國中/高中/大學/技職/全階段), and subject. Returns up to 5 ranked platforms with URLs, categories, and applicable stages — prioritizing a built-in catalog of 10 verified platforms before falling back to the TWCampus directory.browse_education_source: Search for learning resources (courses, materials) on a specific platform by name or URL. Returns up to 5 results per query with title, URL, summary, and source info — without attempting login or bypassing access controls.read_education_resource: Extract key metadata from a single public resource page, including title, summary (≤500 characters), publisher, education stage, subject, and license. Does not store full content.
Compliance safeguards include rate limiting (3 requests/min per domain), a maximum of 2 pages per request, no recursive crawling or full-text storage, and structured error responses (rate_limited, policy_violated, source_unavailable, login_required) for graceful error handling.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@opendata-campus-mcpfind NTU open courses on information management"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
opendata-campus-mcp
教育資源導航 MCP — 以 TWCampus 作為目錄入口,路由至台灣官方教育平台,即時搜尋並讀取公開學習資源。
讓 LLM 不用自己亂猜網址、也不會把整個教育網站爬回來,而是經由一個合規、可稽核的導航層:先從本地目錄(必要時補 TWCampus)找到正確的官方平台 → 在平台上搜尋 → 讀取單一資源摘要。
📖 文件導覽
完整內容依主題拆分於 docs/,依需求檢索:
文件 | 內容 |
安裝步驟、在 Claude Desktop / Claude Code 中設定、測試指令 | |
| |
分層架構圖、運作原理、專案結構、SDD 規格、擴充指南 | |
內建 10 個平台目錄、來源 live 健康度實測 | |
瀏覽政策護欄、已知問題、合規聲明 | |
Playwright 後備取捨、Browserbase / 雲端無頭瀏覽服務評估 |
Related MCP server: libretexts-mcp
特色
三段式導航:
discover(找平台)→browse(搜資源)→read(讀摘要),對應 LLM 真實的查找心智流程。本地目錄優先:內建 10 個已驗證的台灣官方教育平台,先查本地、不足才補 TWCampus,最小化對 TWCampus 的請求。
教育大市集官方 API:
教育大市集使用OFFICIAL_API;未設定EDUMARKET_API_KEY時在 HTTP request 前回傳source_unavailable,不降級到已知失效的 web search;設定 key 後回傳官方 API 的結構化學制與領域欄位(見設定說明)。CIRN canonical host:CIRN 使用已驗證的
https://cirn.k12ea.gov.tw,來源目錄與搜尋 URL 保持一致;各來源的最新 smoke 狀態見來源健康度。共用 runtime assembly:MCP server、live smoke 與教育大市集 E2E 共用同一份 adapter registry,並在 server lifespan 結束時關閉由 runtime 擁有的 HTTP clients。
合規護欄寫死於 domain 層:每域 3 req/min、每次請求最多 2 頁、不排程、不遞迴、不存全文、不繞過存取控制。
乾淨分層 + DI 邊界:
contracts.py定義所有跨層 DTO / Protocol,新增平台或存取策略不需動到核心邏輯。降級不中斷:TWCampus 故障時靜默降級回本地目錄,工具永遠回傳結構化結果或明確的
error物件。SDD 驅動:附 DDD 領域模型(
spec/erm.dbml)與 5 組 BDD Gherkin feature,規格即文件。
快速開始
需求:Python 3.11+
git clone https://github.com/trionnemesis/opendataCampus-MCP.git
cd opendataCampus-MCP
python3 -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"接入 Claude Code:
claude mcp add opendata-campus -- /絕對路徑/opendataCampus-MCP/.venv/bin/opendata-campus-mcp其他 client 設定、Playwright 後備安裝、測試指令見 安裝與設定。
MCP 工具
工具 | 用途 |
| 找到相關官方教育平台 |
| 在指定平台搜尋學習資源 |
| 讀取單一資源頁面摘要 |
| 找升學考古題(CEEC 學測 / 分科測驗)的官方下載連結 |
參數細節、回傳範例與錯誤回傳見 MCP 工具 API。
合規護欄
護欄寫死於 domain/browser_policy.py,無法由請求參數放寬:
政策 | 值 |
每次請求最多頁數 | 2 頁 |
同域每分鐘請求上限 | 3 次(滑動視窗,per-domain) |
排程爬取 / 遞迴導航 / 全文儲存 / 向量索引 | 全部停用 |
無頭瀏覽器(Playwright) | 預設 停用,需明確 |
登入 / 繞過存取控制 | 永不嘗試 |
本工具僅存取公開教育資源並遵守來源服務條款;TWCampus 僅作路由目錄,所有抓取均由使用者即時查詢觸發。完整聲明與已知限制見 合規與限制。
授權
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/trionnemesis/opendataCampus-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server