Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
ILIAS_LANGNoLanguage setting. The session UI language follows your ILIAS profile.en
ILIAS_USERYesYour ILIAS username, for example firstname.lastname. This is required.
ILIAS_TIMEOUTNoRequest timeout in seconds.30.0
ILIAS_BASE_URLNoBase URL of the ILIAS instance.https://ilias.uni-konstanz.de
ILIAS_CACHE_DIRNoCache directory for saved state and extracted file text. Default is ~/Library/Caches/ilias-mcp on macOS.~/Library/Caches/ilias-mcp
ILIAS_CLIENT_IDNoILIAS client ID.ILIASKONSTANZ
ILIAS_MIN_REQUESTSNoMinimum interval in seconds between requests. Minimum allowed value is 0.5.1.0
ILIAS_DOWNLOAD_ROOTNoDownload folder used by ilias_download_file.~/Documents/ILIAS
ILIAS_KEYCHAIN_SERVICENomacOS Keychain service name used to store credentials.ilias-mcp
ILIAS_MAX_REQUESTS_PER_CALLNoMaximum number of requests per tool call; ilias_scan uses 120.60

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

Read-only access to the user's own ILIAS courses (University of Konstanz). Nothing here can submit, post, join, leave, delete or mark anything as read: the client only sends GET requests and refuses state-changing links.

Typical flow: ilias_check_all (every course of the current semester in one call; returns only what changed since the last committed check) -> ilias_read_file for new PDFs -> ilias_commit_scan(check_id) once the findings are recorded. ilias_scan does the same for a single course. ilias_read_file remembers which pages of which file version were read and returns 'already_read' for unchanged files unless pages are asked for. Targets accept a URL, 'crs/123' style references or a bare ref_id. Requests are rate-limited (one per second), so a full check takes about a minute; ilias_check_all keeps working in the background and is simply called again until it returns its result.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
ilias_statusB

Configuration, login state, request counter and the read-only policy. No network.

ilias_list_coursesB

The user's courses and groups from the ILIAS dashboard, with ref_ids and semester sections.

ilias_list_itemsB

Objects in a course/folder/group/session: type, title, ref_id, file version/date/size.

depth > 0 also lists sub-folders, groups and sessions (max 3). Files carry 'already_read' when this version was read before.

ilias_page_textB

Readable text of any ILIAS page (course page notes, info screens, a news item).

Use when a structured tool misses something. Paginate with offset/next_offset.

ilias_list_assignmentsB

Assignments of an exercise object ('Show all' view): deadlines, start, submission status, files.

ilias_read_fileA

Text of a course file (PDF, PPTX, DOCX, text, ZIP) by ref_id or download URL.

Without pages, returns only pages not read before; an unchanged, fully read file returns status 'already_read'. pages='2-4,7' re-opens specific pages. query='deadline|due|submit' returns keyword snippets instead of full text (not counted as read). force=true returns everything again.

ilias_list_forum_topicsB

Thread list of a forum (titles, authors, counts, last activity). Threads are never opened.

ilias_list_newsB

News items from the dashboard news page, or from a given course page.

ilias_scanA

Crawl one course and report new / changed / removed items, assignments and forum threads compared with the last committed scan. Returns a scan_id; call ilias_commit_scan after the findings have been recorded so the next scan compares against this one.

ilias_check_allA

Check every course of the current semester in one go and return only what changed since the last committed check: new/changed/removed files, assignments, forum threads and course-page text, plus deadlines in the next 14 days and new dashboard news.

The semester is the newest dashboard section unless section is given; exclude takes ref_ids ('2101331' or 'crs/2101331') of courses to skip. The check runs in the background: if the answer is status 'running', call this tool again to keep waiting (it does not start a second check). Afterwards call ilias_commit_scan(check_id).

ilias_commit_scanA

Make a scan, or a whole ilias_check_all check (pass its check_id), the new baseline. Local bookkeeping only; nothing is sent to ILIAS.

ilias_download_fileB

Save a course file to a folder inside the configured download root (ILIAS_DOWNLOAD_ROOT, default ~/Documents/ILIAS). Never overwrites a different file.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.6/5.0

Scored across 12 tools

Disambiguation4/5

Most tools target clearly distinct resources: courses, items, assignments, files, forum threads, news, downloads. Two pairs need careful reading: ilias_scan (one course) vs ilias_check_all (all courses), and ilias_read_file (file content) vs ilias_page_text (fallback for arbitrary pages); the descriptions do clarify both, but an agent must read them to choose correctly. ilias_list_items vs ilias_list_assignments also slightly overlap since assignments are objects inside a course.

Naming Consistency4/5

Strong, predictable ilias_ prefix plus snake_case verb_noun pattern (list_courses, list_items, read_file, commit_scan, download_file). Two deviations break the pattern: ilias_status and ilias_page_text are noun-only with no verb, while ilias_scan/ilias_check_all drop the list/read verb family. Still highly readable overall.

Tool Count5/5

12 tools is well within the ideal 3-15 range and each earns its place: discovery (courses, items, news, assignments, forum topics), content access (read_file, page_text, download_file), and change tracking (scan, check_all, commit_scan). No obvious filler tools.

Completeness4/5

Coverage is broad for a read-only ILIAS client: navigation, content extraction, diffing, and download with a coherent scan->commit baseline lifecycle. Minor gaps remain—no grade/result listing beyond submission status, no cross-course search, and forum threads are deliberately listed but never opened, which could be a dead end when a thread's content is needed.

Maintenance

ActivityMaintained
ResponsivenessNo recent community issues