ICTExam MCP 是一个 Model Context Protocol(MCP)服务器,用于连接 ICT Innovations 的 ICTExam 平台——一个 AI 考试出题、交付与自动评分平台。
用途 该服务器让 AI 助手能够读取用户在 ICTExam 中的考试、成绩册以及逐题(per-question)项目分析数据;并且仅当用户主动开启写入功能时,才能使用 AI 将一份试卷解析为结构化考试,以及将考试发布给学生。
主要能力
- 读取工具:始终可用,包括读取考试、班级、科目、成绩册和逐题项目分析。
- 写入工具:默认不注册,仅当设置 ICTEXAM_MCP_ALLOW_WRITE=true 后出现,包括用 AI 解析试卷、发布考试等。默认安装无法更改平台上的任何内容。
- 解析试卷会消耗服务器端 AI 额度,发布考试会让学生看到考试,因此这些写入操作均被开关控制。
使用方式 可通过 npx 直接从 npm 运行,或全局安装。要求 Node.js 18 或更高版本。需要在 MCP 客户端的服务器配置(或 .env 文件)中设置认证参数(如邮箱和密码)。仓库中提供了 Claude Desktop 配置示例。
连接机制 ICTExam 运行 FastAPI 后端。该服务器使用邮箱和密码登录一次,并在进程生命周期内保持会话 cookie,与 /api 下的 REST API 通信(路径可配置)。无需预置 API key。客户端使用账号自身的会话 cookie 认证,并在写入时回显 CSRF 令牌,与 Web 应用行为一致;除用户提供的环境变量外,不会存储或记录密码。
适用场景 适用于希望通过 AI 助手查询和分析 ICTExam 平台考试数据、成绩和逐题分析的用户;在开启写入后,也适用于借助 AI 将试卷解析为结构化考试并发布给学生的教学管理场景。
限制
- 默认只读;写入功能必须显式开启,否则相关工具根本不会注册。
- 解析试卷会消耗 AI 额度;发布考试会影响学生可见性。
- 需要 Node.js 18 及以上。
- 需配置 ICTExam 账号的邮箱与密码。
其他信息 由 ICT Innovations 的 Tahir Almas 构建。ICTExam 附带原生 Moodle 活动模块(LTI 1.3、成绩回传和名册同步),更多信息见 ictlms.net。项目采用 MIT 许可,问题和 PR 欢迎提交至 github.com/ictinnovations/ictexam-mcp。