Servidor Moodle MCP
Un servidor MCP (Protocolo de contexto de modelo) que permite a los LLM interactuar con la plataforma Moodle para administrar cursos, estudiantes, tareas y exámenes.
Características
Herramientas de gestión de estudiantes
list_students- Recupera la lista de estudiantes inscritos en el cursoMuestra la identificación, el nombre, el correo electrónico y la última hora de acceso de cada estudiante.
Herramientas de gestión de tareas
get_assignments- Recupera todas las tareas disponibles en el cursoIncluye información como identificación, nombre, descripción, fecha de vencimiento y calificación máxima.
get_student_submissions: examina las entregas de un estudiante para una tarea específicaRequiere el ID de la tarea y, opcionalmente, el ID del estudiante.
provide_assignment_feedback: proporciona calificaciones y comentarios para la entrega de un estudianteRequiere identificación del estudiante, identificación de la tarea, calificación y comentario de retroalimentación.
Herramientas de gestión de cuestionarios
get_quizzes- Recupera todos los cuestionarios disponibles en el cursoIncluye información como identificación, nombre, descripción, fechas de apertura/cierre y calificación máxima.
get_quiz_attempts: examina los intentos de un estudiante en una prueba específicaRequiere el ID del cuestionario y, opcionalmente, el ID del estudiante.
provide_quiz_feedback: proporciona comentarios para un intento de cuestionarioRequiere el ID del intento y el comentario de retroalimentación.
Related MCP server: mcp-server-llmling
Requisitos
Node.js (v14 o superior)
Token de API de Moodle con permisos adecuados
ID del curso Moodle
Instalación
Clonar este repositorio:
git clone https://github.com/your-username/moodle-mcp-server.git
cd moodle-mcp-serverInstalar dependencias:
npm installCree un archivo
.envcon la siguiente configuración:
MOODLE_API_URL=https://your-moodle.com/webservice/rest/server.php
MOODLE_API_TOKEN=your_api_token
MOODLE_COURSE_ID=1 # Replace with your course IDConstruir el servidor:
npm run buildUso con Claude
Para utilizar con Claude Desktop, agregue la configuración del servidor:
En MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
En Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"moodle-mcp-server": {
"command": "/path/to/node",
"args": [
"/path/to/moodle-mcp-server/build/index.js"
],
"env": {
"MOODLE_API_URL": "https://your-moodle.com/webservice/rest/server.php",
"MOODLE_API_TOKEN": "your_moodle_api_token",
"MOODLE_COURSE_ID": "your_course_id"
},
"disabled": false,
"autoApprove": []
}
}
}Para los usuarios de Windows, las rutas utilizarían barras invertidas:
{
"mcpServers": {
"moodle-mcp-server": {
"command": "C:\\path\\to\\node.exe",
"args": [
"C:\\path\\to\\moodle-mcp-server\\build\\index.js"
],
"env": {
"MOODLE_API_URL": "https://your-moodle.com/webservice/rest/server.php",
"MOODLE_API_TOKEN": "your_moodle_api_token",
"MOODLE_COURSE_ID": "your_course_id"
},
"disabled": false,
"autoApprove": []
}
}
}Una vez configurado, Claude podrá interactuar con tu curso Moodle para:
Ver la lista de estudiantes y sus entregas
Proporcionar comentarios y calificaciones para las tareas.
Examinar los intentos de prueba y ofrecer comentarios.
Desarrollo
Para desarrollo con reconstrucción automática:
npm run watchDepuración
Los servidores MCP se comunican a través de stdio, lo que puede dificultar la depuración. Recomendamos usar el Inspector MCP :
npm run inspectorEl Inspector proporcionará una URL para acceder a las herramientas de depuración en su navegador.
Obtener un token de API de Moodle
Inicie sesión en su sitio Moodle como administrador
Vaya a Administración del sitio > Complementos > Servicios web > Administrar tokens
Crea un nuevo token con los permisos necesarios para administrar cursos
Copia el token generado y agrégalo a tu archivo
.env
Seguridad
Nunca comparta su archivo
.envni su token de API de MoodleAsegúrese de que el servidor MCP solo tenga acceso a los cursos que necesita administrar
Utilice un token con los permisos mínimos necesarios