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 分