Skip to main content
Glama
tcpassos

Moodle Student MCP

by tcpassos

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
MOODLE_URLYesThe base URL of the Moodle site (e.g., https://moodle.example.com)
MOODLE_TOKENYesThe web service token for the Moodle mobile app

Capabilities

Features and capabilities supported by this server

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

Tools

Functions exposed to the LLM to take actions

NameDescription
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 id from list_courses. For each section, returns its activities (name, type, url, description and completion state when Moodle exposes it).

list_assignmentsA

List assignments with their due dates.

If course_ids is omitted, searches ALL your courses. Returns course, assignment name, assign_id (for get_submission_status), due date, cutoff date and max grade.

get_submission_statusA

Show the status of YOUR submission for an assignment.

Use the assign_id from list_assignments. Tells whether you submitted, the submission state, whether it is still editable, whether it was graded, the grade and the teacher's feedback. A status other than "submitted" means it has not been turned in yet.

get_upcoming_deadlinesA

List your upcoming tasks and deadlines (Moodle's "Timeline").

Aggregates assignment due dates, quiz closings, etc., sorted by date. days is the look-ahead window (default 30). This is the best single source for "what do I have to do and by when".

get_gradesA

Show your grades in a course.

Use the id from list_courses. Returns each graded item with your grade, the max, the percentage, the weight and feedback (only YOUR grades).

list_forumsA

List the forums in your courses (includes news/announcements).

If course_ids is omitted, scans all courses. Returns forum_id (for get_forum_discussions), name, type and description.

get_forum_discussionsA

List the recent discussions of a forum.

Use the forum_id from list_forums. Good for checking teacher announcements. Returns title, author, date and the opening message.

list_filesA

List the downloadable files of a course (PDFs, slides, notebooks, ...).

Use the id from list_courses. Returns, for each file: filename, mimetype, size, the section/activity it belongs to, and the fileurl to pass to download_files.

download_filesA

Download course files to ./materials// and return local paths.

Pass fileurls (from list_files) to download specific files, or omit it to download every file in the course. The MCP client can then read the local path of each result (e.g. open a PDF natively). Already-downloaded files of the same size are reused (status "cached").

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/tcpassos/moodle-student-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server