io.github.ictinnovations/ictexam-mcp

Registre officiel IA et agents

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

Installation

Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).

NPM package ictexam-mcp
Claude Code
claude mcp add ictexam-mcp -e 'ICTEXAM_BASE_URL=<ICTEXAM_BASE_URL>' -e 'ICTEXAM_EMAIL=<ICTEXAM_EMAIL>' -e 'ICTEXAM_PASSWORD=<your ictexam_password>' -e 'ICTEXAM_API_PREFIX=/api' -e 'ICTEXAM_MCP_ALLOW_WRITE=false' -e 'ICTEXAM_TIMEOUT_MS=60000' -e 'ICTEXAM_TLS_INSECURE=false' -- npx -y ictexam-mcp@0.1.1
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "ictexam-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "ictexam-mcp@0.1.1"
            ],
            "env": {
                "ICTEXAM_BASE_URL": "<ICTEXAM_BASE_URL>",
                "ICTEXAM_EMAIL": "<ICTEXAM_EMAIL>",
                "ICTEXAM_PASSWORD": "<your ictexam_password>",
                "ICTEXAM_API_PREFIX": "/api",
                "ICTEXAM_MCP_ALLOW_WRITE": "false",
                "ICTEXAM_TIMEOUT_MS": "60000",
                "ICTEXAM_TLS_INSECURE": "false"
            }
        }
    }
}

Variables d'environnement

  • ICTEXAM_BASE_URL obligatoire Base URL of your ICTExam site, e.g. https://app.ictlms.net (no trailing /api).
  • ICTEXAM_EMAIL obligatoire A teacher or admin account email.
  • ICTEXAM_PASSWORD obligatoire secret Password for the account.
  • ICTEXAM_API_PREFIX Path 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_WRITE Unlocks 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_MS Per request timeout in milliseconds. Defaults to 60000 (AI parsing can be slow).
  • ICTEXAM_TLS_INSECURE Skip TLS certificate verification. Only for a self-signed test server.

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

Sommaire
  1. ictexam-mcp
  2. Install
  3. Configure
  4. Tools
  5. Safety
  6. How it connects
  7. About

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:

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.

Questions fréquentes

Qu'est-ce que io.github.ictinnovations/ictexam-mcp ?

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

Comment installer io.github.ictinnovations/ictexam-mcp ?

Il s'exécute sur votre machine. Dans Claude Code : claude mcp add ictexam-mcp -e 'ICTEXAM_BASE_URL=<ICTEXAM_BASE_URL>' -e 'ICTEXAM_EMAIL=<ICTEXAM_EMAIL>' -e 'ICTEXAM_PASSWORD=<your ictexam_password>' -e 'ICTEXAM_API_PREFIX=/api' -e 'ICTEXAM_MCP_ALLOW_WRITE=false' -e 'ICTEXAM_TIMEOUT_MS=60000' -e 'ICTEXAM_TLS_INSECURE=false' -- npx -y ictexam-mcp@0.1.1. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.

Faut-il une clé API pour io.github.ictinnovations/ictexam-mcp ?

Oui. Il attend ICTEXAM_BASE_URL, ICTEXAM_EMAIL, ICTEXAM_PASSWORD, à renseigner dans sa configuration.

io.github.ictinnovations/ictexam-mcp est-il open source ?

Oui. Son code est sur GitHub sous licence MIT.

Qui maintient io.github.ictinnovations/ictexam-mcp ?

Il est publié par ictinnovations. AI.tn le référence sans le maintenir ni le recommander.

Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.