π¦ ClawHub
Moodle Connector
by @jabir-srj
Moodle REST API client, batch downloader, and MCP server for Claude Code integration. SSO-enabled with support for Azure AD, Google, and SAML.
π‘ Examples
1. Setup Moodle Token
cp config.template.json config.json
Edit config.json with your Moodle web service token
2. Use CLI
python moodle_connector.py courses # List all courses
python moodle_connector.py grades # Check grades
python moodle_connector.py assignments # View assignments
python moodle_connector.py materials --course-id 44864
python moodle_connector.py download "https://mytimes.taylors.edu.my/..." --output myfile.pdf
python moodle_connector.py summary # Full markdown export
βοΈ Configuration
Moodle Token (config.json)
{
"moodle": {
"base_url": "https://mytimes.taylors.edu.my",
"web_service_token": "YOUR_TOKEN_HERE"
},
"cache": {
"api_ttl_seconds": 300
}
}
Batch Downloader (downloads.json)
{
"downloads": [
{
"module": "Machine Learning",
"course_id": 44864,
"files": [
{
"name": "Week1.zip",
"url": "https://mytimes.taylors.edu.my/webservice/pluginfile.php/..."
}
]
}
]
}
π Tips & Best Practices
"Invalid parameter value detected" for calendar API
Useassignments() instead β gets same deadline info.Browser MFA not triggering
Run:python moodle_connector.py login for manual token retrieval.File download stuck
Check network. Increase timeout in code or clear cache:rm -rf cache/TERMINAL
clawhub install moodle-connector