Naar hoofdinhoud
Changelog

MoodleMCP 1.0

v1.0.0

Eerste stabiele versie van MoodleMCP: het paneel, de gehoste MCP-server en de plug-in local_mcpconnector.

Protocol en authenticatie

  • MCP-endpoint per organisatie op een eigen subdomein, via Streamable HTTP in stateless modus: inloggegevens worden bij elk verzoek gecontroleerd en een intrekking werkt vanaf de eerstvolgende aanroep.
  • Twee authenticatiepaden: OAuth "Aanmelden met je Moodle" (standaard discovery en token-aan-resource-binding, RFC 8707) voor ChatGPT en Claude, en MCP-sleutels als bearer-token (mcpk_…, alleen de hash wordt opgeslagen) voor Cursor, VS Code, Claude Code, scripts en CI.

Tools

  • 13 gecureerde tools voor de gangbare flows en 3 gateway-meta-tools (moodle_find_tools, moodle_tool_schema, moodle_run_tool) die de overige 742 functies van de Moodle-webservicecatalogus bereiken.
  • Elke aanroep draait met het Moodle-token van de sleutelgebruiker en doorloopt diens rollencontrole; sleutels ondersteunen extra beperkingen — alleen-lezen, toegestane tools, toegestane cursussen en een vervaldatum.
  • Bestandsuploads via URL met local_mcpconnector_create_resource en local_mcpconnector_create_scorm, plus moodle_request_file_upload voor ondertekende tijdelijke overdrachten (30 minuten, tot 512 MiB).

Plug-in local_mcpconnector

  • Installatie met licentiesleutel + paneelgeheim; elk plug-in↔paneel-verzoek is ondertekend met HMAC-SHA256 binnen een venster van ±5 minuten.
  • Rolgebaseerde gebruikersprovisionering vanuit het Moodle-beheer, met sleutelbezorging per e-mail en centrale intrekking.
  • Compatibel met Moodle 4.2 – 5.2.

Paneel

  • Ingebouwde AI-chat (Anthropic, OpenAI of Google) met dezelfde toolcatalogus, expliciete goedkeuring van schrijfacties en verrekening in credits.
  • Gebruiksoverzicht per sleutel, tool en bron; aanroepdetails worden na 90 dagen verwijderd, dagelijkse aggregaten blijven bewaard.
  • Paneel en documentatie in zes talen: Spaans, Engels, Frans, Duits, Nederlands en Portugees.

Beveiliging en limieten

  • Moodle-tokens in rust versleuteld met AES-256-GCM; verbindingen naar Moodle vastgepind tegen SSRF, met een time-out per verzoek en een groottelimiet voor streaming-antwoorden.
  • Snelheidslimieten per sleutel en per IP, en schrijfacties per sleutel geserialiseerd via een wachtrij.