moodle-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MOODLE_URL | Yes | Full HTTPS URL of the Moodle instance. | |
| MCP_LOG_LEVEL | No | Log level: error / warn / info / debug. | info |
| MOODLE_WS_TOKEN | Yes | Web Services token with edit permissions. | |
| MOODLE_WS_TIMEOUT_MS | No | Per-request timeout. | 30000 |
| MOODLE_ALLOW_INSECURE | No | Allow http:// URLs (dev-only escape hatch). | false |
| MOODLE_WS_MAX_RETRIES | No | Retry attempts on transient failures. | 3 |
| MOODLE_WS_RATE_LIMIT_PER_SEC | No | Token-bucket rate limit. | 10 |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| ws_rawA | Escape hatch: call any Moodle Web Services function with arbitrary parameters. Returns |
| obtener_contexto_cursoA | Returns a compact radiograph of a Moodle course: metadata, sections with module counts, recent MCP-published lessons, and enrolment counts (teachers vs students). Call this before publishing a Ficha so the agent knows where it fits. |
| publicar_ficha_claseA | Publish a FichaClase markdown file as a Moodle section with component modules. Idempotent: republishing the same Ficha updates in place, never duplicates. Default modo is |
| publicar_previewA | Publish a FichaClase in hidden preview mode. Returns the same shape as publicar_ficha_clase plus |
| confirmar_previewB | Make a previewed section (and optionally a subset of its modules) visible to students. Idempotent. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/MarcosNahuel/moodle-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server