mcpField
I
ictexam-mcp

ictexam-mcp

本地服务
ictlms.net科研与教育173 天前更新

关于 ictexam-mcp

ictexam-mcp 是连接 ICTExam 考试平台的 MCP 服务,面向教师和管理员,让 AI 助手读取考试、成绩册和题目分析。默认只读;启用写入后,还可解析试卷并发布考试。

主要功能

  1. 01列出考试、班级与科目
  2. 02查看考试设置和题目
  3. 03读取成绩册与学生分数
  4. 04查看逐题难度和平均分
  5. 05可选解析并发布考试

适用场景

  1. 01检查考试状态及题目设置
  2. 02查看班级考试成绩
  3. 03分析题目难度与得分
  4. 04将 PDF 或 DOCX 试卷解析并发布

MCP 相关

该 MCP 服务通过账号会话连接 ICTExam REST API,并向 MCP 客户端提供考试和成绩读取工具。写入工具默认不注册,只有设置 ICTEXAM_MCP_ALLOW_WRITE=true 后才启用。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"ictinnovations-ictexam": {
"command": "npx",
"args": [
"-y",
"ictexam-mcp"
],
"env": {
"ICTEXAM_BASE_URL": "<ICTEXAM_BASE_URL>",
"ICTEXAM_EMAIL": "<ICTEXAM_EMAIL>",
"ICTEXAM_PASSWORD": "<ICTEXAM_PASSWORD>",
"ICTEXAM_API_PREFIX": "<ICTEXAM_API_PREFIX>",
"ICTEXAM_MCP_ALLOW_WRITE": "<ICTEXAM_MCP_ALLOW_WRITE>",
"ICTEXAM_TIMEOUT_MS": "<ICTEXAM_TIMEOUT_MS>",
"ICTEXAM_TLS_INSECURE": "<ICTEXAM_TLS_INSECURE>"
}
}
}
}
启动命令npx -y ictexam-mcp
需要配置的环境变量
ICTEXAM_BASE_URLBase URL of your ICTExam site, e.g. https://app.ictlms.net (no trailing /api).
ICTEXAM_EMAILA teacher or admin account email.
ICTEXAM_PASSWORD密钥Password for the account.
ICTEXAM_API_PREFIXPath the API is mounted under. Defaults to /api (behind the usual reverse proxy). Set empty to talk to the backend port directly.
ICTEXAM_MCP_ALLOW_WRITEUnlocks the write tools: parse a paper with AI (spends server AI credit), publish and unpublish exams. When false these tools are not registered at all. Leave off unless you mean it.
ICTEXAM_TIMEOUT_MSPer request timeout in milliseconds. Defaults to 60000 (AI parsing can be slow).
ICTEXAM_TLS_INSECURESkip TLS certificate verification. Only for a self-signed test server.

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmictexam-mcp0.1.1

工具

6

收录的工具列表 · 更新于 2 天前

参数类型必填说明
class_idinteger否可选的 class id 筛选条件。
subject_idinteger否可选的科目 ID 筛选条件。

详细介绍

ictexam-mcp

一个用于 ICTExam 的 Model Context Protocol 服务。ICTExam 是由 ICT Innovations 推出的 AI 考试创建、发布和自动评分平台。

它可以让 AI 助手读取你的考试、成绩册和逐题项目分析;只有在启用写入功能后,才能使用 AI 将试卷解析为结构化考试,并向学生发布考试。

安装

使用 npx 直接从 npm 运行,或全局安装:

npx -y ictexam-mcp      # no install
npm install -g ictexam-mcp

需要 Node.js 18 或更高版本。

配置

在 MCP 客户端的服务配置中(或 .env 文件中)设置以下变量:

变量必需默认值
ICTEXAM_BASE_URL是你的网站,例如 https://app.ictlms.net(末尾不要带 /api)
ICTEXAM_EMAIL是教师或管理员账号
ICTEXAM_PASSWORD是该账号的密码
ICTEXAM_API_PREFIX否/apiAPI 挂载路径;设为空即可直接访问后端端口
ICTEXAM_MCP_ALLOW_WRITE否false解锁写入工具(参见安全性)
ICTEXAM_TIMEOUT_MS否60000单次请求超时时间(AI 解析可能较慢)
ICTEXAM_TLS_INSECURE否false跳过 TLS 验证——仅适用于使用自签名证书的测试服务
Claude Desktop 示例
{
  "mcpServers": {
    "ictexam": {
      "command": "npx",
      "args": ["-y", "ictexam-mcp"],
      "env": {
        "ICTEXAM_BASE_URL": "https://app.ictlms.net",
        "ICTEXAM_EMAIL": "[email protected]",
        "ICTEXAM_PASSWORD": "your-password"
      }
    }
  }
}

工具

读取工具始终可用:

工具功能
ictexam_list_exams列出试卷(ID、标题、状态、班级、科目)
ictexam_get_exam获取单份试卷的设置、分享链接和题目
ictexam_list_classes列出班级(课程小组)
ictexam_list_subjects列出科目,每个科目都关联一个班级
ictexam_gradebook获取每场考试的总分和学生成绩
ictexam_item_analysis获取逐题难度、p 值和平均分

仅当 ICTEXAM_MCP_ALLOW_WRITE=true 时,才会显示写入工具:

工具功能
ictexam_parse_question_paper上传本地 PDF/DOCX 文件,并使用 AI 提取题目
ictexam_publish_exam发布试卷;返回学生和教师分享 URL
ictexam_unpublish_exam将试卷状态改回草稿

安全性

该服务默认只读。除非设置 ICTEXAM_MCP_ALLOW_WRITE=true,否则根本不会注册这三个写入工具,因此默认安装不会更改平台上的任何内容。解析试卷会消耗服务端的 AI 额度,而发布试卷则会让学生能够参与考试——这两项操作都被刻意置于该开关的保护之下。客户端使用账号自身的会话 Cookie 进行身份验证,并在写入时附带 CSRF 令牌,方式与 Web 应用完全相同;除你提供的环境外,它不会存储或记录你的密码。

连接方式

ICTExam 使用 FastAPI 后端。服务使用你的电子邮件和密码登录一次,在进程运行期间保留会话 Cookie,并通过 REST API(默认位于 /api,可配置)进行通信。无需申请 API 密钥。

关于

由 Tahir Almas 在 ICT Innovations 开发——该团队还开发了 ICTExam、ICTContact、ICTDialer、ICTFax 和 ICTPBX。ICTExam 附带原生 Moodle 活动模块(LTI 1.3、成绩回传和名单同步);了解详情,请访问 ictlms.net。

采用 MIT 许可证。欢迎通过 github.com/ictinnovations/ictexam-mcp 提交问题和 PR。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。