Un plugin local de Moodle (local_moodlia) que añade unas 250 operaciones sobre cursos, actividades, bancos de preguntas, matriculaciones, grupos, archivos, auditorías y copias de seguridad. Están disponibles por REST y por un endpoint MCP, para que un asistente de IA como ChatGPT o Claude pueda usarlas directamente. Cada petición se ejecuta como un usuario de Moodle y está limitada por sus permisos.
Qué hace
- Crea y modifica cursos, secciones, actividades, cuestionarios y bancos de preguntas.
- Audita un curso antes de publicarlo: reglas de finalización, calificador y estructura.
- Gestiona matriculaciones, grupos, archivos, copias de seguridad y restauraciones.
- Ofrece un endpoint MCP en
/local/moodlia/mcp.phppara asistentes de IA.
Qué necesitas
- Moodle 4.5, 5.0, 5.1, 5.2 o 5.3 (la 5.3 está validada con su beta).
- Un administrador del sitio que lo instale y cree el token de acceso.
- Una copia de seguridad reciente del código, la base de datos y moodledata de Moodle.
Instalación
1. Instala el plugin
Descarga
local_moodlia-<versión>.zipdel Moodle Marketplace o de las releases de GitHub. No uses el ZIP «Source code» de GitHub.Ve a Administración del sitio → Extensiones → Instalar complementos, sube el ZIP y pulsa «Instalar complemento desde archivo ZIP».
Continúa con las comprobaciones y pulsa «Actualizar base de datos Moodle ahora».
Comprueba que Administración del sitio → Extensiones → Vista general de extensiones muestra MoodlIA (
local_moodlia) en Extensiones locales.
2. Da acceso a una cuenta
Activa «Habilitar servicios web» (Administración del sitio → General → Opciones avanzadas) y el protocolo REST (Servidor → Servicios Web → Administrar protocolos).
Crea un usuario dedicado, por ejemplo
moodlia-service. No uses un administrador ni la cuenta personal de un docente.Define un rol de sistema «MoodlIA service user» (sin arquetipo) que permita
webservice/rest:useylocal/moodlia:useapi, y asígnaselo a ese usuario.Da a la cuenta solo los permisos que necesite en los cursos, por ejemplo matriculándola como docente en los cursos que vaya a gestionar.
En Servidor → Servicios Web → Servicios externos → MoodlIA service → usuarios autorizados, añade la cuenta.
En Administrar fichas (tokens), crea un token para ese usuario y el servicio MoodlIA, con fecha de caducidad. Guárdalo como un secreto.
3. Conecta un cliente
Desde una terminal, instala MoodlIA CLI y haz una comprobación de solo lectura (ver MoodlIA CLI).
Desde un asistente de IA compatible con MCP, usa este endpoint con el token como credencial Bearer:
https://your-moodle.example/local/moodlia/mcp.php Authorization: Bearer <token>
Primer uso
Confirma que el token es de la cuenta de servicio y no del administrador que lo creó:
moodlia get-current-user --format jsonPrueba los primeros cambios en un curso copiado o de prueba.
Conviene saber
- El plugin nunca se salta los permisos de Moodle: una operación falla si la cuenta no tiene la capacidad.
- En Moodle 4.5 no existen las actividades de banco de preguntas independientes; necesitan Moodle 5.0 o posterior.
- La versión está marcada como beta en el Moodle Marketplace.