ictexam-mcp

MCP serverDev tools

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

Unavailable. This server has no hosted endpoint yet, so ahel can't serve it.

Connect ahel once, and every AI you use reads what you have installed.

From the project's README

As published by ictinnovations/ictexam-mcp in README.md.

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:

npx -y ictexam-mcp      # no install
npm 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

{
  "mcpServers": {
    "ictexam": {
      "command": "npx",
      "args": ["-y", "ictexam-mcp"],
      "env": {
        "ICTEXAM_BASE_URL": "https://app.ictlms.net",
        "ICTEXAM_EMAIL": "teacher@example.com",
        "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.

Signals

GitHub stars
16
Forks
15
Last commit
Sep 2026
Weekly downloads
145
Advanced
Delivery
ictexam-mcp MCP server → your ahel gateway (mcp.ahel.ai) → every connected AI client.
Catalog kind
mcp-server
Gateway key
io-github-ictinnovations-ictexam-mcp
Source
github.com/ictinnovations/ictexam-mcp