EduBase
官方與EduBase互動,這是一個全面的電子學習平台,具備進階測驗、考試管理及內容組織功能。
你可以用 EduBase MCP 做什麼?
- 建立並發布問題 — 請助理撰寫新問題,並透過
edubase_prompt_create_question將其發布到您的 QuestionBase。 - 將文件轉換為問題 — 在核准計畫後,將附加的文件、檔案路徑或 URL 轉換為問題,並可選擇將其加入 Quiz 集合。
- 根據主題建立考試 — 產生與主題相關的問題,將其整理到 Quiz 集合中,並透過
edubase_prompt_create_exam建立排定的考試。 - 摘要考試結果 — 分析考試結果,並可選擇透過
edubase_prompt_summarize_exam_results將摘要儲存到考試中。 - 將班級指派給考試 — 使用
edubase_prompt_assign_class_to_exam將班級的現役成員指派給考試。 - 查看考試歷程進度 — 查看使用者在考試歷程中的進度,以及哪些人卡住了,方法是使用
edubase_prompt_exam_journey_status。
文件
EduBase MCP 伺服器
此儲存庫包含適用於 EduBase 平台的 Model Context Protocol (MCP) 伺服器實作。它可讓 MCP 用戶端(例如 Claude Desktop)和 LLM 與您的 EduBase 帳戶互動,並代表您執行工作。它支援 stdio、SSE 和 streamable HTTP 傳輸協定。

什麼是 EduBase?
EduBase 是一個創新、模組化的線上教育平台,讓學習更有趣、更簡單且更具互動性,適用於教育機構或企業。
為什麼選擇 EduBase?
EduBase 以獨特的功能組合,革新數位學習:
- 進階測驗系統,具備參數化功能,可讓同一題目產生無限變化,並提供即時作弊偵測、精美的 LaTeX 排版、進階 STEM 支援和自動評分
- 統一學習環境,在單一直覺式系統中集中管理所有教育內容——影片、考試、文件和 SCORM 模組
- 企業級安全性,具備 SSO 整合、精細的存取控制、全面稽核和 GDPR 合規等功能
- 整合功能,可透過 LTI、完整 API 和自訂整合選項連結您現有的系統
- AI 輔助工具,例如 EduBase Assistant,可立即將您現有的內容轉換為互動式測驗和評量,或將教材從一種語言翻譯成另一種語言
從高等教育機構到企業培訓部門,EduBase 都能因應您的特定需求擴展,同時在所有裝置上維持直覺的使用者體驗。
示範影片
使用 Claude 協作建立和上傳題目、安排考試,以及分析使用者結果:
取得 API 憑證
登入後,請在 Dashboard 中搜尋 Integrations 選單,按一下「add integration」,並選擇「EduBase API」類型。
如果您看不到此選項,請輸入 MCPGITHUB 啟用碼,或隨時透過 info@edubase.net 聯絡我們以申請存取權。
工具
每個已記錄的 API 端點都可作為工具使用,名稱為 edubase_<method>_<endpoint>。例如,GET /user:me 端點的工具名稱為 edubase_get_user_me。標籤、權限和轉移端點對每種內容類型的運作方式都相同,因此每種方法共用單一工具,並使用 type 引數(例如,POST /exam:tag、POST /quiz:tag 等的 edubase_post_content_tag)。如需詳細資訊,請參閱我們的開發人員文件。
工具集
工具會分組為工具集,讓您只公開所需的工具。使用較少工具會佔用較少模型上下文,也讓模型更容易選擇正確的工具。每個工具集預設皆為啟用。
| 工具集 | 用途 |
|---|---|
files | 暫存檔案上傳(永遠啟用) |
questions | 題目 |
quizzes | 測驗集、其中的題目、設定和評分預設值 |
exams | 考試、其設定、使用者、證書、品牌設定和學習路徑 |
results | 測驗和考試結果、證書下載 |
users | 使用者、其名稱、群組和登入連結 |
classes | 班級和班級成員 |
organizations | 組織、成員、部門、職務、能力和 Webhook |
integrations | 整合及其金鑰 |
tags | 標籤和內容的標籤附件 |
permissions | 使用者對內容的權限和所有權轉移 |
metrics | 自訂指標 |
在 EDUBASE_TOOLSETS 中使用逗號分隔的清單選取工具集(例如 questions,quizzes,exams)。將 EDUBASE_READONLY=true 設為只公開讀取資料的工具(get 工具,以及只產生下載連結的工具,例如 edubase_post_question_export)。
將 EDUBASE_DYNAMIC_TOOLSETS=true 設為按需啟用工具集:工作階段一開始只會載入必要工具,模型則透過 edubase_enable_toolsets 工具啟用所需的工具集(列於 edubase_list_toolsets)。這可讓會預先載入所有工具的用戶端維持較小的初始工具清單,但需要用戶端在收到變更通知時重新整理工具清單。
使用 HTTP 傳輸時,用戶端可透過 EduBase-Mcp-Toolsets、EduBase-Mcp-ReadOnly 和 EduBase-Mcp-Dynamic 標頭,或 toolsets、read_only 和 dynamic_toolsets 查詢參數,進一步縮小其工作階段的設定範圍(例如 https://domain.edubase.net/mcp?toolsets=exams&read_only=true)。工作階段無法啟用伺服器設定中停用的工具集或寫入工具。
提示
提示是可從 MCP 用戶端啟動的現成工作流程(例如從 + 或 / 選單啟動)。支援補全功能的用戶端會在您輸入時,為引數提供建議值:題目類型,以及您自己的考試、測驗集和班級。
| 提示 | 功能 | 引數 |
|---|---|---|
建立題目 (edubase_prompt_create_question) | 撰寫新題目並發布至您的 QuestionBase | type、subject、選填 difficulty 和 language |
從文件建立題目 (edubase_prompt_questions_from_document) | 將附加的文件(或檔案路徑或 URL)轉換為題目,待您核准計畫後,可選擇將題目加入測驗集 | document、選填 questions(數量)、types、quiz 和 language |
建立考試 (edubase_prompt_create_exam) | 產生與某個主題相關的題目,將題目收集到新的測驗集,並據此建立考試 | topic、questions(數量)、選填 types(逗號分隔)、language 和 schedule |
建立含學習路徑的考試 (edubase_prompt_create_exam_journey) | 建立如上所述的考試,接著以此建立並發布一個簡短的考試學習路徑,重複使用您帳戶中相關的考試,並在需要時建立練習測驗集和後續考試 | 與建立考試相同 |
複製考試 (edubase_prompt_copy_exam) | 使用相同的測驗集和設定,在新的時間範圍內建立考試 | exam、schedule、選填 title |
將班級指派給考試 (edubase_prompt_assign_class_to_exam) | 將班級中的有效成員指派給考試 | exam、class |
摘要考試結果 (edubase_prompt_summarize_exam_results) | 分析考試結果,並可選擇將摘要儲存至考試 | exam、選填 focus 和 save(ask、yes 或 no) |
檢查考試學習路徑 (edubase_prompt_exam_journey_status) | 顯示使用者在考試學習路徑中的進度,以及哪些人卡住了 | exam |
只有在啟用相關工具集時才會提供提示;在唯讀模式下,只會提供最後兩個提示。
如果考試的題目類型留空,支援引導輸入功能的用戶端會以核取方塊詢問您。這些用戶端也會在執行無法復原的變更前,要求您確認(刪除考試、測驗集、題目、使用者、組織和整合、轉移所有權、開始新一輪考試,以及輪替整合金鑰)。將 EDUBASE_ELICITATION=false 設為關閉這些詢問。
資源
參考文件可作為資源使用;對於無法讀取資源的模型,也可透過 edubase_mcp_reference 工具取得:edubase://reference/questions(題目欄位和類型)和 edubase://reference/exam-journeys(可攜式考試學習路徑格式)。這些文件涵蓋 EduBase 技能所說明的內容,供未載入技能的用戶端參考。考試和測驗集也可附加為資源(edubase://exam/{exam} 和 edubase://quiz/{quiz}),並列出及建議您的內容。使用 EDUBASE_CONTENT_RESOURCES=false 關閉這些資源;若只針對單一工作階段,則使用 EduBase-Mcp-Content-Resources: false 標頭、content_resources=false 查詢參數或 edubaseContentResources Smithery 設定。
建立或變更考試、測驗集和學習路徑的工具會連結至 EduBase 中的相關頁面。
設定
MCP 伺服器可使用環境變數進行設定。可用的變數如下:
| 變數 | 說明 | 必填 | 預設值 |
|---|---|---|---|
EDUBASE_API_URL | EduBase API 的基礎 URL,最可能是 https://subdomain.edubase.net/api。 | 是 | https://www.edubase.net/api |
EDUBASE_API_APP | 您在 EduBase 上整合應用程式的 App ID,也就是 EduBase API 上的 app。請在 EduBase 的整合詳細資料視窗中尋找。 | 使用 HTTP 傳輸並啟用驗證時非必填,否則必填 | - |
EDUBASE_API_KEY | 您在 EduBase 上整合應用程式的 Secret key,也就是 EduBase API 上的 secret。請在 EduBase 的整合詳細資料視窗中,與 App ID 一起尋找。 | 使用 HTTP 傳輸並啟用驗證時非必填,否則必填 | - |
EDUBASE_SSE_MODE | 以 SSE 傳輸模式啟動 MCP 伺服器的 HTTP 模式。值必須是 true。 | 否 | false |
EDUBASE_STREAMABLE_HTTP_MODE | 以可串流 HTTP 傳輸模式啟動 MCP 伺服器的 HTTP 模式。值必須是 true。 | 否 | false |
EDUBASE_TOOLSETS | 以逗號分隔的已啟用工具集清單,或 all。 | 否 | all |
EDUBASE_READONLY | 僅公開讀取資料的工具。值必須是 true。 | 否 | false |
EDUBASE_OUTPUT_SCHEMAS | 工具的輸出結構描述與結構化工具結果:off 會列出沒有輸出結構描述的工具,並僅以 JSON 文字傳回結果;on 會包含完整的輸出結構描述;fields 會包含不含欄位說明的輸出結構描述(保留結構化結果,同時節省結構描述的大部分 token)。 | 否 | fields |
EDUBASE_CONFIG_PROVIDERS | 以逗號分隔的主機服務提供者清單;使用 HTTP 傳輸時,這些提供者可在請求中提供工作階段設定。目前僅支援 smithery(以 base64 編碼的 config 查詢參數)。 | 否 | - |
EDUBASE_CONTENT_RESOURCES | 將帳戶的考試和 Quiz 集合列為資源。設為 false 可關閉此功能,例如在沒有憑證時檢查伺服器。參考文件仍會提供。 | 否 | true |
EDUBASE_DYNAMIC_TOOLSETS | 啟動工作階段時僅提供檔案上傳工具,並讓模型視需要啟用工具集。值必須是 true。 | 否 | false |
EDUBASE_ELICITATION | 如果用戶端支援引導功能,透過用戶端詢問使用者是否確認無法復原的變更,並選擇提示的問題類型。設為 false 可關閉此功能。 | 否 | true |
EDUBASE_HTTP_PORT | 使用 SSE 或可串流 HTTP 傳輸模式時,HTTP 伺服器會在此連接埠接聽。 | 否 | 3000 |
EDUBASE_OAUTH | 啟用 OAuth 2.1 受保護資源行為:未經驗證的請求會遭拒,並回傳指向 /.well-known/oauth-protected-resource/mcp 的 401 + WWW-Authenticate;Bearer token 會轉送至 EduBase API。 | 否 | false |
EDUBASE_OAUTH_AUTHORIZATION_SERVER | 作為 OAuth IdP 的 EduBase 部署公開基礎 URL。用於在受保護資源中繼資料文件中公告授權伺服器。 | 否 | 衍生自 EDUBASE_API_URL |
EDUBASE_OAUTH_RESOURCE_URL | 此 MCP 伺服器(OAuth 資源指示器)的公開基礎 URL。用於 WWW-Authenticate 標頭和資源中繼資料。 | 否 | 衍生自 EDUBASE_API_URL |
EDUBASE_ALLOW_PRIVATE_NETWORK | 使用 HTTP 傳輸時,edubase_filebin 工具會封鎖對私人、迴路、鏈路本機和保留位址的外連請求(SSRF 防護),並拒絕本機檔案路徑。設為 true 可允許這些請求,例如在受信任的私人網路上自行託管部署。此設定在 stdio 模式下無效,因為本機使用者是唯一的呼叫者。 | 否 | false |
EDUBASE_FILEBIN_ALLOWED_HOSTS | 可選的逗號分隔允許清單,列出可作為 edubase_filebin 上傳目標的主機名稱(完全相符的主機或任何子網域,例如 edubase.net)。留空時允許任何公開主機(仍受上述位址篩選限制)。 | 否 | - |
作為遠端 MCP 伺服器使用
您可以將 EduBase MCP 伺服器作為遠端 MCP 伺服器供 MCP 用戶端使用。若要這麼做,您需要在用戶端可存取的位置託管 MCP 伺服器,然後設定用戶端連線至該伺服器。請以 SSE 或可串流 HTTP 傳輸模式啟動伺服器;透過網際網路遠端存取伺服器時,務必使用 HTTPS!
遠端伺服器的驗證
您可以透過兩種模式使用伺服器:
- 不使用用戶端驗證:在此模式下,伺服器不會要求用戶端提供任何驗證。這適用於測試或開發,或封閉網路環境,但不建議用於正式環境。若要使用此模式,您也必須使用
EDUBASE_API_APP和EDUBASE_API_KEY設定伺服器! - 使用 Bearer token 驗證:在此模式下,伺服器會要求每個請求都附帶 Bearer token。這是正式環境中建議的伺服器使用方式。您可以在 EduBase 帳戶中建立整合應用程式,並以
{app}:{secret}格式提供 App ID 和 Secret key,再將其以 base64 編碼為 token,即可取得 Bearer token。伺服器接著會使用此 token 驗證用戶端,並授權其存取 API 端點。 - 使用 OAuth 2.1(EduBase 作為 IdP):當
EDUBASE_OAUTH=true時,相容的用戶端(Claude Desktop、Claude.ai connectors、Cursor、ChatGPT connectors 等)會透過/.well-known/oauth-protected-resource探索 EduBase 授權伺服器、動態註冊自身(RFC 7591)、引導使用者完成 EduBase 同意畫面,並使用授權碼(搭配 PKCE S256)交換不透明的存取 token。MCP 伺服器會將該 token 原樣轉送至 EduBase API,由 API 將其解析為首次同意時自動佈建的 MCP 整合。無須複製 App ID/Secret——使用者只要在用戶端點選「Connect EduBase」即可。
搭配 Claude Desktop 使用
如需逐步操作說明,請參閱我們的部落格文章:將 EduBase 連線至 Claude:完整 MCP 整合指南。
使用提供的 EduBase MCP 伺服器
如果提供的 EduBase MCP 伺服器可用,您可以不需任何設定,直接在用戶端將其新增為遠端伺服器,並使用 URL https://domain.edubase.net/mcp(請替換為實際網域);若用戶端支援 OAuth 驗證,則可使用此方式,否則請在 Authorization 標頭中提供適當的 Bearer token(Authorization: Bearer ${BASE64_ENCODED_TOKEN})。
建議 www.edubase.net 使用者採用此方式,因為伺服器由我們維護和更新,您不必擔心託管或設定。連線用戶端時,只要確認使用正確的 URL 和驗證方式即可。
手動安裝
將以下內容新增至您的 claude_desktop_config.json:
使用 Node.js
執行 MCP 伺服器前,請確認已安裝 Node.js。您可以從 nodejs.org 下載,或使用像是 brew 這類套件管理工具。
{
"mcpServers": {
"edubase": {
"command": "npx",
"args": [
"-y",
"@edubase/mcp"
],
"env": {
"EDUBASE_API_URL": "https://domain.edubase.net/api",
"EDUBASE_API_APP": "your_integration_app_id",
"EDUBASE_API_KEY": "your_integration_secret_key"
}
}
}
}
或者,下載 EduBase MCP 伺服器版本,或複製儲存庫並執行 npm run build 來建置伺服器。請記得將 /path/to/dist 調整為實際目錄,並設定環境變數!
{
"mcpServers": {
"edubase": {
"command": "node",
"args": [
"/path/to/dist/index.js"
],
"env": {
"EDUBASE_API_URL": "https://domain.edubase.net/api",
"EDUBASE_API_APP": "your_integration_app_id",
"EDUBASE_API_KEY": "your_integration_secret_key"
}
}
}
}
使用 Docker
執行 MCP 伺服器前,請確認已安裝並啟動 Docker。您可以從 docker.com 下載,或使用套件管理工具。請記得設定環境變數!Docker Hub 上提供適用於 linux/amd64 和 linux/arm64 的映像,名稱為 edubase/mcp;GitHub Packages 上的映像名稱則為 ghcr.io/edubase/mcp。
{
"mcpServers": {
"edubase": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"EDUBASE_API_URL",
"-e",
"EDUBASE_API_APP",
"-e",
"EDUBASE_API_KEY",
"edubase/mcp"
],
"env": {
"EDUBASE_API_URL": "https://domain.edubase.net/api",
"EDUBASE_API_APP": "your_integration_app_id",
"EDUBASE_API_KEY": "your_integration_secret_key"
}
}
}
}
透過遠端 MCP 伺服器安裝
您可以將提供的 EduBase MCP 伺服器(如果可用)作為遠端伺服器使用。我們建議將您的 EDUBASE_API_APP 和 EDUBASE_API_KEY 以 Base64 編碼,並將其作為 Bearer token 放在 Authorization 標頭中(Authorization: Bearer ${BASE64_ENCODED_TOKEN})。
{
"mcpServers": {
"edubase": {
"command": "npx",
"args": [
"mcp-remote",
"https://domain.edubase.net/mcp",
"--header",
"Authorization: Bearer ${EDUBASE_API_APP}:${EDUBASE_API_KEY}"
]
}
}
}
透過 Smithery 安裝
若要透過 Smithery 自動為 Claude Desktop 安裝 EduBase MCP 伺服器:
npx -y @smithery/cli install @EduBase/MCP --client claude
開發
執行 npm test 以建置伺服器並檢查工具清單:工具清單和伺服器指示的大小預算、工具說明、工具集、唯讀和動態工具集模式,以及 HTTP 傳輸的設定處理。新增工具超出預算時,請縮短其結構描述,或審慎提高 test/server.test.mjs 中的預算,因為每個用戶端在每個工作階段都會支付工具清單的成本。
src/references 中的參考文件是根據 EduBase 開發者文件產生的。問題欄位或考試流程格式變更時,請使用 node scripts/sync-references.mjs <path to the developer documentation repository> 重新產生。
合併標記為 major、minor 或 patch 的提取要求,會將下一個版本提交至 main 並啟動 Publish 工作流程。此工作流程會將套件發布至 npm 和 MCP Registry,將容器映像發布至 Docker Hub 和 GitHub Packages,並在所有發布成功後標記該提交及建立 GitHub 發行版本。若沒有這些標籤,就不會發布任何內容。若在提取要求中手動指定版本,則會照原樣發布。提交、標籤和發行版本由專用的發行應用程式建立,其憑證位於 release 環境中。Publish 工作流程會先執行測試,在推送前檢查建置好的映像,並使用 OIDC 登入 Docker Hub,透過 DOCKERHUB_OIDC_CONNECTIONID 和 DOCKERHUB_OIDC_USERNAME 變數進行驗證。它會使用工作中的 GITHUB_TOKEN 推送至 GitHub Packages,因為 GitHub 不接受 GitHub App token。手動執行時可指定版本,以重試或重新建置發行版本:npm 和 MCP Registry 上已存在的內容會略過,而 latest 只會移至最新發行版本。
文件同步點:工具、提示和參考文件上次同步於 2026-11-06,依據的是同步至 EduBase 發行版本
8.6.6的開發者文件(8.6.6的文件提取要求),並以提交a29c6af51的 EduBase 內容進行核對。 若要更新伺服器,請在開發者文件儲存庫中,從8.6.6的文件提取要求所對應的提交執行git log --oneline <commit>..HEAD和git diff <commit>..HEAD -- docs/api/endpoints,更新src/tools中受影響的工具(以及其提示和工具集指南),重新產生參考文件,並將此標記更新為新的 HEAD 提交。兩者不一致時,以 EduBase 儲存庫為準。
聯絡方式
網站:www.edubase.net
開發者文件:developer.edubase.net
電子郵件:info@edubase.net