Moodle LMS MCP Server & Agent Skill
Last updated
ibl.ai publishes a free Moodle LMS agent skill: a SKILL.md that teaches an AI agent to read and write Moodle LMS data and expose it as an MCP tool. Download it, connect your own Moodle LMS credentials, and run the agent on ibl.ai Agentic OS, where you own all the code and the data.
Moodle LMS is an open-source learning management system that schools, universities and organisations run on their own servers or through a host. It holds courses, enrolments, assignments, quizzes, grades, messages and files.
What is the Moodle LMS API, and what can an agent read from it?
One endpoint, /webservice/rest/server.php, dispatches named functions (wsfunction) such as core_course_get_courses. Each site lists its own functions under Site administration > Server > Web services > API Documentation.
- API: Moodle Web Services (External Services API) (REST)
- Access: Issued by your administrator
- Authentication: API token (wstoken); Username and password exchanged for a token at /login/token.php
A site admin enables web services and the REST protocol, defines an external service with the allowed functions, then issues a token per user under Manage tokens. Users with moodle/webservice:createtoken can create their own.
Pass wstoken, wsfunction and moodlewsrestformat=json (default is XML). /login/token.php takes username, password and a service short name. Files use /webservice/upload.php and /webservice/pluginfile.php with the token.
What can an agent read from Moodle LMS?
- Courses β core_course_get_courses returns course records; core_course_get_contents returns a course's sections and activities.
- Enrolled users β core_enrol_get_enrolled_users returns participants of a course (takes courseid).
- Grade items β gradereport_user_get_grade_items returns grade items and grades for users in a course.
- Assignment submissions β mod_assign_get_assignments and mod_assign_get_submissions return assignments and their submissions.
- Users β core_user_get_users_by_field looks up users by a field such as id, username or email.
- Site info β core_webservice_get_site_info returns the calling user, the site and the functions the token can call.
What can an agent write to Moodle LMS?
- Grades β mod_assign_save_grade saves a grade and feedback on an assignment submission. Confirm with the user first.
- Enrolments β enrol_manual_enrol_users enrols users; enrol_manual_unenrol_users removes them. Confirm with the user first.
- Users and courses β core_user_create_users and core_course_create_courses create records; core_course_delete_courses deletes courses. Confirm with the user first.
- Messages β core_message_send_instant_messages sends messages to users. Confirm with the user first.
- Calendar events β core_calendar_create_calendar_events adds calendar events.
Grades, submissions and enrolment records held by a school are FERPA-protected education records.
How do I connect Moodle LMS to an AI agent over MCP?
As of October 2026 we found no MCP server published by Moodle HQ itself.
The practical path is to host a small MCP server that wraps the Moodle Web Services (External Services API), or to give the agent the calls directly with the SKILL.md below.
On ibl.ai an MCP connection is three records, and a working integration always needs all three:
- Register the server β
POST β¦/mcp-servers/with its URL, a transport (sse,websocketorstreamable_http) and anauth_typeofnone,tokenoroauth2. - Create a connection that holds the credential, scoped to the whole organization (
platform), to a single agent, or to each user (user). - Enable it on the agent β
mcp-toolintool_slugsand the server id inmcp_servers. Both lists are replaced, not merged, so read the settings first.
For an API key or a service credential, one token connection at platform scope serves the whole organization; scope a connection to a single agent when that agent needs narrower access than the rest.
The field reference is in MCP server connections, and the /iblai-api-agent-mcp skill runs all three steps from a coding agent.
What does the Moodle LMS agent skill do?
The Moodle LMS skill is one SKILL.md file named iblai-connect-moodle. It gives an agent the auth conventions, what to read, which writes need a person's confirmation, the ibl.ai MCP wiring, example prompts and guardrails.
Download the Moodle LMS SKILL.md
Save it as .claude/skills/iblai-connect-moodle/SKILL.md, or in your agent's skills folder. The ibl.ai platform skills it calls come from one install:
$ npx skills add iblai/vibe --allThis connector skill is a starting point maintained on ibl.ai, not part of the iblai/vibe repository.
It was checked against Moodle HQ's documentation on October 20, 2026. Test it against your own Moodle LMS setup before you rely on it.
What can I ask a Moodle LMS agent to do?
- βList everyone enrolled in Algebra I who has no grade on the unit 3 assignment.β
- βEnrol these five students into the Biology 2 course as students.β
- βShow the grade items and my students' scores for Physics 101.β
- βAdd a calendar event for the course review session next Tuesday.β
How do I run a Moodle LMS agent on ibl.ai?
Agentic OS is where the agent runs on ibl.ai: it holds the Moodle LMS MCP connection, the model the agent uses, its instructions and its conversation history.
On ibl.ai you own all the code and the data, run it model-agnostic across any LLM, and pay with no per-seat pricing β so you can deploy anywhere, from your own cloud to a fully air-gapped network.
- AI agents for Higher Education β what ibl.ai deploys in this sector
- AI agents for K-12 β what ibl.ai deploys in this sector
Which ibl.ai agents work with Moodle LMS data?
- Faculty Assistant β Higher Education
- Study Buddy β Higher Education
Where does ibl.ai describe the Moodle LMS integration?
- Moodle LMS with Agentic OS β what ibl.ai builds on top of Moodle LMS
- Moodle LMS and ibl.ai β the integration overview
Which ibl.ai platform skills does a Moodle LMS agent use?
- /iblai-api-agent-mcp β MCP connectors for ibl.ai agents, end to end
- /iblai-vibe-agent-mcp β Add the agent MCP tab (Model Context Protocol connector management with featured connectors, custom connectors, OAuth,β¦
- /iblai-api-agent-tool β Enable or disable an ibl.ai agent's tools via the platform API
- /iblai-vibe-agent-lti β Add the agent LTI tab (LTI 1.3 launch toggle with agent links, signing keys, tools, and platform endpoints) to yourβ¦
What else should I know before connecting Moodle LMS to an AI agent?
Is there an official Moodle LMS MCP server?
Not that we found as of October 20, 2026: Moodle HQ documents the Moodle Web Services (External Services API), not an MCP server of its own.
The SKILL.md on this page gives an agent the integration directly, and any MCP server you host can be registered on ibl.ai.
Who can get Moodle LMS API credentials?
A site admin enables web services and the REST protocol, defines an external service with the allowed functions, then issues a token per user under Manage tokens. Users with moodle/webservice:createtoken can create their own.
Does Moodle LMS data leave my infrastructure when an ibl.ai agent uses it?
On ibl.ai, you own all the code and the data. Self-hosted in your cloud or data center, the agent, its MCP connections and its conversation logs stay inside your perimeter.
Because the platform is model-agnostic, you can point the agent at a model you host, so Moodle LMS records need not reach a third-party model provider.
Is the Moodle LMS agent skill free to use?
Yes. The SKILL.md is a free download with no sign-up. It assumes you already have Moodle LMS credentials, and your agreement with Moodle HQ still governs how you use its API.
Which other data sources can an AI agent connect to alongside Moodle LMS?
Which other Higher Education systems have a connector?
- 1EdTech OneRoster β Rostering and gradebook data standard
- Blackboard Learn β Learning management system
- Canvas LMS β Learning management system
- D2L Brightspace β Learning management system
- EAB Navigate360 β Student success CRM
- Ellucian Banner β Student information system / ERP
- Ellucian Colleague β Student information system / ERP
- Encoura Reach (Anthology Reach) β Higher-education CRM
- Handshake β Career services and early-career recruiting platform
- Jenzabar One β Higher education ERP and student information system
- PeopleSoft Campus Solutions β Student information system
- Raiser's Edge NXT β Fundraising and donor CRM
- Salesforce Education Cloud β Education CRM
- Slate β Admissions CRM
- Workday Student β Student information system
Which other K-12 systems have a connector?
- 1EdTech OneRoster β Rostering and gradebook data standard
- Blackboard Learn β Learning management system
- Canvas LMS β Learning management system
- ClassLink β Rostering and single sign-on platform
- Clever β Rostering and single sign-on platform
- D2L Brightspace β Learning management system
- Google Classroom β Learning management system
- Infinite Campus β Student information system
- PowerSchool SIS β Student information system
- Schoology β Learning management system
- Seesaw β Elementary learning platform
- Skyward β Student information system
Every connector, grouped by sector, is on the connectors hub.