Requirements
You need a Moodle you can administer, Python, and any MCP client.
Moodle
- Moodle 4.2 or newer, self-hosted or institutional.
- Administrator access to install a plugin and enable web services.
MCP server host
- Python 3.10+.
- Network access from the server host to your Moodle URL over HTTPS.
AI client
- Any MCP client: Claude Desktop, Claude Code, or another.
Managed clouds: some hosts (e.g. MoodleCloud free tier) block custom plugins and full web services. Read tools may still work, but activity creation will not.
Authentication and logins
It authenticates with a web service token, never a password, so it is independent of how your users sign in.
- Token-based: the AI sends a token an admin generates, and can only do what that user's capabilities allow.
- Any login method: SSO/SAML, LDAP, Google or Microsoft OAuth, CAS or manual accounts all work identically. Tokens are a separate channel.