Ictexam Mcp

io.github.ictinnovations由 GitHub 帳號 ictinnovations 發布v0.1.1更新於 Nov 2, 2026

Read exams, gradebooks and item analysis; parse papers with AI and publish exams.

已驗證STDIO僅桌面效率與工作流資料與分析

概覽

AI 產生的概覽

將助理連接到 ICTExam 伺服器,讀取試卷、成績冊與題目分析,並可選擇性地解析與發布考試。

可以做什麼
  • 列出並檢視試卷,包含設定、計時、分享連結與題目
  • 列出班級與科目,以便找到對應的班級或科目編號
  • 讀取教師成績冊,含每場考試的彙總與學生分數
  • 取得單題分析:難度、p 值、平均分以及滿分與零分作答數量
  • 開啟寫入後:用 AI 將本機 PDF 或 DOCX 解析為結構化試卷、發布試卷,或將其退回草稿
適用情境
適合希望讓助理查詢考試狀態、檢視學生分數與題目層級統計,或在不開啟網頁應用的情況下把題目文件轉成結構化試卷的教師或管理員。
執行需求
透過 npx 或全域 npm 安裝在本機執行,需要 Node.js 18 或更新版本。需要教師或管理員帳號的 ICTEXAM_BASE_URL、ICTEXAM_EMAIL 與 ICTEXAM_PASSWORD。選用:ICTEXAM_API_PREFIX、ICTEXAM_TIMEOUT_MS、ICTEXAM_TLS_INSECURE 與 ICTEXAM_MCP_ALLOW_WRITE。需要能連線到 ICTExam 網站的網路。
安裝前請注意
帳號密碼透過 ICTEXAM_PASSWORD 提供並用於登入,伺服器會在行程執行期間保留工作階段 Cookie。除非設定 ICTEXAM_MCP_ALLOW_WRITE=true,否則寫入工具不會啟用;開啟後可用 AI 解析(會消耗伺服器 AI 額度)並發布考試(會使考試對學生可見)。ICTEXAM_TLS_INSECURE 會略過憑證驗證,僅應用於自簽章測試伺服器。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Ictexam Mcp,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

ictexam-mcp

A Model Context Protocol server for ICTExam, the AI exam authoring, delivery and auto-grading platform from ICT Innovations.

It lets an AI assistant read your exams, gradebooks and per-question item analysis, and — only when you turn writes on — parse a question paper into a structured exam with AI and publish exams to students.

Install

Run it straight from npm with npx, or install it globally:

bash
npx -y ictexam-mcp      # no installnpm install -g ictexam-mcp

Requires Node.js 18 or newer.

Configure

Set these in your MCP client's server config (or a .env):

VariableRequiredDefault
ICTEXAM_BASE_URLyesYour site, e.g. https://app.ictlms.net (no trailing /api)
ICTEXAM_EMAILyesA teacher or admin account
ICTEXAM_PASSWORDyesPassword for that account
ICTEXAM_API_PREFIXno/apiAPI mount path; set empty to hit the backend port directly
ICTEXAM_MCP_ALLOW_WRITEnofalseUnlock the write tools (see Safety)
ICTEXAM_TIMEOUT_MSno60000Per-request timeout (AI parsing can be slow)
ICTEXAM_TLS_INSECUREnofalseSkip TLS verification — self-signed test servers only

Claude Desktop example

json
{  "mcpServers": {    "ictexam": {      "command": "npx",      "args": ["-y", "ictexam-mcp"],      "env": {        "ICTEXAM_BASE_URL": "https://app.ictlms.net",        "ICTEXAM_EMAIL": "[email protected]",        "ICTEXAM_PASSWORD": "your-password"      }    }  }}

Tools

Read tools are always available:

ToolWhat it does
ictexam_list_examsList exam papers (id, title, status, class, subject)
ictexam_get_examOne paper's settings, share links and questions
ictexam_list_classesClasses (course groups)
ictexam_list_subjectsSubjects, each tied to a class
ictexam_gradebookPer-exam totals and student marks
ictexam_item_analysisPer-question difficulty, p-value and average mark

Write tools appear only when ICTEXAM_MCP_ALLOW_WRITE=true:

ToolWhat it does
ictexam_parse_question_paperUpload a local PDF/DOCX and AI-extract the questions
ictexam_publish_examPublish a paper; returns student and teacher share URLs
ictexam_unpublish_examSet a paper back to draft

Safety

The server is read-only by default. The three write tools are not registered at all unless you set ICTEXAM_MCP_ALLOW_WRITE=true, so a default install cannot change anything on the platform. Parsing a paper spends AI credit on the server, and publishing makes an exam live for students — both sit behind that switch on purpose. The client authenticates with the account's own session cookie and echoes the CSRF token on writes, exactly as the web app does; it never stores or logs your password beyond the environment you give it.

How it connects

ICTExam runs a FastAPI backend. The server signs in once with your email and password, keeps the session cookie for the life of the process, and talks to the REST API under /api (configurable). No API key to provision.

About

Built by Tahir Almas at ICT Innovations — the team behind ICTExam, ICTContact, ICTDialer, ICTFax and ICTPBX. ICTExam ships with a native Moodle activity module (LTI 1.3, grade passback and roster sync); learn more at ictlms.net.

MIT licensed. Issues and PRs welcome at github.com/ictinnovations/ictexam-mcp.

來源:README.md,提交 04e438e

工具

6

ictexam_list_exams

List exams

List exam papers (assessments) on ICTExam: id, title, status (draft/published), class and subject. Start here to find an exam's id. Optionally filter by class_id or subject_id.

輸入參數class_idsubject_id

ictexam_get_exam

Get one exam

Get a single exam paper by id: its settings, timing, share links and questions.

輸入參數assessment_id必填

ictexam_list_classes

List classes

List the classes (course groups) defined on ICTExam.

無需輸入參數。

ictexam_list_subjects

List subjects

List the subjects on ICTExam, each tied to a class.

無需輸入參數。

ictexam_gradebook

Teacher gradebook

Get the teacher gradebook: per-exam totals and student marks. Optionally filter by class_id or subject_id.

輸入參數class_idsubject_id

ictexam_item_analysis

Item analysis

Per-question item analysis for one exam: difficulty, p-value, average mark and how many responses were full vs zero credit.

輸入參數assessment_id必填

版本歷史

2
  1. v0.1.1最新Oct 26, 2026
  2. v0.1.0Sep 16, 2026

評分

已滿足適用檢查項的 90%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分
  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分