
Moodle MCP Server
MCPLets agents read a Moodle course's student list, assignments and quizzes, view submissions and attempts, and grade assignments, write feedback and comment on quizzes. Needs a Moodle web service token from an admin and Node.js; build from source. Each config covers one course.
Moodle MCP Server
An MCP (Model Context Protocol) server that enables LLMs to interact with the Moodle platform to manage courses, students, assignments, and quizzes.
Features
Course Management Tools
get_courses- Retrieves information about courses in Moodle- Supports pagination (
page,limit) to safely fetch all available courses. - Optionally allows fetching a specific course by providing a
courseId.
- Supports pagination (
Student Management Tools
list_students- Retrieves the list of students enrolled in the course- Displays ID, name, email, and last access time for each student
Assignment Management Tools
get_assignments- Retrieves all available assignments in the course- Includes information such as ID, name, description, due date, and maximum grade
get_student_submissions- Examines a student's submissions for a specific assignment- Requires the assignment ID and optionally the student ID
provide_assignment_feedback- Provides grades and comments for a student's submission- Requires student ID, assignment ID, grade, and feedback comment
Quiz Management Tools
get_quizzes- Retrieves all available quizzes in the course- Includes information such as ID, name, description, opening/closing dates, and maximum grade
get_quiz_attempts- Examines a student's attempts on a specific quiz- Requires the quiz ID and optionally the student ID
provide_quiz_feedback- Provides comments for a quiz attempt- Requires the attempt ID and feedback comment
Requirements
- Node.js (v14 or higher)
- Moodle API token with appropriate permissions
- Moodle course ID
Installation
- Clone this repository:
git clone https://github.com/your-username/moodle-mcp-server.git
cd moodle-mcp-server
- Install dependencies:
npm install
- Create a
.envfile with the following configuration:
MOODLE_API_URL=https://your-moodle.com/webservice/rest/server.php
MOODLE_API_TOKEN=your_api_token
MOODLE_COURSE_ID=1 # Replace with your course ID
- Build the server:
npm run build
Usage with Claude
To use with Claude Desktop, add the server configuration:
On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"moodle-mcp-server": {
"command": "/path/to/node",
"args": [
"/path/to/moodle-mcp-server/build/index.js"
],
"env": {
"MOODLE_API_URL": "https://your-moodle.com/webservice/rest/server.php",
"MOODLE_API_TOKEN": "your_moodle_api_token",
"MOODLE_COURSE_ID": "your_course_id"
},
"disabled": false,
"autoApprove": []
}
}
}
For Windows users, the paths would use backslashes:
{
"mcpServers": {
"moodle-mcp-server": {
"command": "C:\\path\\to\\node.exe",
"args": [
"C:\\path\\to\\moodle-mcp-server\\build\\index.js"
],
"env": {
"MOODLE_API_URL": "https://your-moodle.com/webservice/rest/server.php",
"MOODLE_API_TOKEN": "your_moodle_api_token",
"MOODLE_COURSE_ID": "your_course_id"
},
"disabled": false,
"autoApprove": []
}
}
}
Once configured, Claude will be able to interact with your Moodle course to:
- View the list of students and their submissions
- Provide comments and grades for assignments
- Examine quiz attempts and offer feedback
Development
For development with auto-rebuild:
npm run watch
Debugging
MCP servers communicate through stdio, which can make debugging challenging. We recommend using the MCP Inspector:
npm run inspector
The Inspector will provide a URL to access debugging tools in your browser.
Obtaining a Moodle API Token
- Log in to your Moodle site as an administrator
- Go to Site Administration > Plugins > Web Services > Manage tokens
- Create a new token with the necessary permissions to manage courses
- Copy the generated token and add it to your
.envfile
Security
- Never share your
.envfile or Moodle API token - Ensure the MCP server only has access to the courses it needs to manage
- Use a token with the minimum necessary permissions
License
Ressources associées

Canvas MCP Server
MCPMCP for the Canvas LMS: teachers can have agents bulk-grade, manage assignments and modules, post announcements and nudge students with missing work; students can check deadlines and grades. Needs a Canvas API token; one-click extension for Claude Desktop, Python 3.11+ elsewhere.
vishalsachdev/canvas-mcp295
Canvas MCP Server
MCPThird-party MCP for Canvas LMS (not by Instructure): teachers can review courses and assignments, grade, comment, and create quizzes and discussions; students can check due dates and grades; admins can create courses and export reports. Needs a Canvas API token, your school domain and Node.js.
DMontgomery40/mcp-canvas-lms104
EduBase MCP
MCPEduBase's official MCP: teachers and trainers can generate questions in bulk, build question banks and exams, schedule tests, manage classes and learners, and analyze results. Needs EduBase API credentials (App ID and secret, from Integrations; code MCPGITHUB unlocks it) and Node.js.
EduBase/MCP28
Moodle-DL
CLIBulk-downloads your Moodle course content: files, assignments and submissions, forum posts and quizzes. Re-runs fetch only what is new, so agents can help build study notes or archive courses. Your Moodle must allow mobile app access; sign in with your own account.
C0D3D3V/Moodle-DL653
Presenton
MCPOpen-source AI presentation generator that builds slides from a topic or uploaded documents and exports PPTX or PDF, with a built-in MCP endpoint for agents. Good for lesson decks and reports. Self-host with Docker and configure an LLM API key, then have an admin create an MCP key.
presenton/presenton11.1k
Gemini Notebook CLI & MCP Server (notebooklm-mcp-cli)
MCPUnofficial CLI and MCP that let agents work with NotebookLM (now Gemini Notebook): bulk-import sources, ask questions with citations, and generate audio overviews, quizzes, flashcards, mind maps and slides. Uses undocumented APIs and may break; needs a Google sign-in and uv.
jacob-bd/gemini-notebook-mcp-cli6.3k