Moodle Student MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MOODLE_URL | Yes | The base URL of the Moodle site (e.g., https://moodle.example.com) | |
| MOODLE_TOKEN | Yes | The web service token for the Moodle mobile app |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| whoamiA | Confirm who you are on Moodle and that the token is valid. Returns your name, user_id, site name, version and how many web service functions your token may call. Use it to diagnose the connection. |
| list_coursesA | List the courses you are enrolled in. For each: id (use it in the other tools), name, short name, progress (%) and last access date. |
| get_course_contentsA | List the sections/topics and activities of a course. Use the |
| list_assignmentsA | List assignments with their due dates. If |
| get_submission_statusA | Show the status of YOUR submission for an assignment. Use the |
| get_upcoming_deadlinesA | List your upcoming tasks and deadlines (Moodle's "Timeline"). Aggregates assignment due dates, quiz closings, etc., sorted by date.
|
| get_gradesA | Show your grades in a course. Use the |
| list_forumsA | List the forums in your courses (includes news/announcements). If |
| get_forum_discussionsA | List the recent discussions of a forum. Use the |
| list_filesA | List the downloadable files of a course (PDFs, slides, notebooks, ...). Use the |
| download_filesA | Download course files to ./materials// and return local paths. Pass |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 11 tools
All 11 tools have clearly distinct purposes: listing resources, fetching details, downloading files, and identity check. No two tools overlap in functionality.
Consistent verb_noun pattern: list_ for collections, get_ for single resource details, download_files for action, and whoami for identity. Mix of get_ and list_ is a sensible and predictable pattern.
11 tools is appropriate for a student-facing Moodle MCP. It covers the essential workflows (courses, assignments, forums, files, grades, deadlines) without being excessive.
The set covers reading and listing well but lacks tools for student actions such as submitting assignments or posting in forums. This is a notable gap for a student assistant tool.