Moodle MCP
Servidor MCP de Moodle
Un servidor de Model Context Protocol (MCP) + API REST que conecta Claude, ChatGPT, Google Gemini y cualquier modelo de IA a cualquier instancia de Moodle LMS. Construido en Go.
Los estudiantes pueden interactuar con su cuenta de Moodle a través de su IA favorita: ver cursos, consultar calificaciones, realizar un seguimiento de las fechas límite, enviar tareas y leer notificaciones.
Funciona con:
✅ Claude (Escritorio, Código) - vía MCP (¡lo más fácil!)
✅ ChatGPT (Plus) - vía API REST + Acciones
✅ Google Gemini - vía API REST + Apps Script
✅ Cualquier IA - vía API REST (endpoints HTTP)
Características
Herramienta | Descripción |
| Autentícate en tu sitio Moodle de forma interactiva |
| Ver información del sitio Moodle y del usuario |
| Ver los detalles de tu perfil |
| Listar todos los cursos inscritos |
| Ver secciones, recursos y actividades |
| Ver metadatos del curso |
| Ver calificaciones de un curso específico |
| Ver resumen de calificaciones de todos los cursos |
| Ver tareas de un curso |
| Ver próximas tareas de todos los cursos |
| Enviar contenido de texto para una tarea |
| Ver próximos eventos del calendario |
| Ver fechas límite consolidadas ordenadas por urgencia |
| Ver mensajes y notificaciones |
Requisitos
Claude Desktop (macOS, Windows o Linux)
Una cuenta de Moodle en cualquier institución
Inicio rápido
Elige tu plataforma de IA:
Tu IA | Guía | Tiempo |
🤖 Claude (Recomendado) | 2 min | |
💬 ChatGPT | 15 min | |
🔍 Google Gemini | 20 min | |
🌐 Múltiples IAs | 1 hora |
Empieza aquí: Si usas Claude, sigue la guía de Windows/macOS anterior (¡2 minutos!)
¿No eres programador? Todas las guías tienen instrucciones paso a paso sin necesidad de conocimientos técnicos.
Instalación (La más fácil)
Para Windows (PowerShell)
Abre PowerShell y ejecuta:
irm https://raw.githubusercontent.com/Jawadh-Salih/moodle-mcp-server/main/install.ps1 | iexEsto descargará e instalará automáticamente el binario en C:\Users\TuNombre\moodle-mcp\moodle-mcp.exe
Para macOS / Linux (Bash)
Abre la Terminal y ejecuta:
curl -fsSL https://raw.githubusercontent.com/Jawadh-Salih/moodle-mcp-server/main/install.sh | bashEsto descargará e instalará automáticamente el binario en ~/.moodle-mcp/moodle-mcp
Instalación manual (Para desarrolladores)
Si quieres compilar desde el código fuente:
# Clone the repository
git clone https://github.com/Jawadh-Salih/moodle-mcp-server.git
cd moodle-mcp-server
# Build the binary
go mod tidy
go build -o moodle-mcp ./cmd/moodle-mcp/Uso
Opción 1: Inicio de sesión interactivo (Recomendado)
Simplemente inicia el servidor sin configuración. Cuando chatees con Claude, usa la herramienta login para autenticarte:
"Inicia sesión en mi Moodle en https://online.uom.lk con el usuario student@uom.lk"
Claude te pedirá tu contraseña y te autenticará.
Opción 2: Variables de entorno
Establece las credenciales como variables de entorno para el inicio de sesión automático:
export MOODLE_URL=https://online.uom.lk
export MOODLE_USERNAME=your-username
export MOODLE_PASSWORD=your-passwordO si tienes un token de API de Moodle:
export MOODLE_URL=https://online.uom.lk
export MOODLE_TOKEN=your-api-tokenConfiguración de Claude Desktop
Si usaste el instalador automático:
El instalador te mostrará la ruta exacta. ¡Solo cópiala!
Configuración manual
Busca tu archivo de configuración de Claude Desktop:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json
Opción A: Inicio de sesión interactivo (Recomendado - sin credenciales en la configuración)
{
"mcpServers": {
"moodle": {
"command": "/path/to/moodle-mcp"
}
}
}Luego, en Claude, usa la herramienta login para autenticarte de forma interactiva.
Opción B: Con credenciales almacenadas
{
"mcpServers": {
"moodle": {
"command": "/path/to/moodle-mcp",
"env": {
"MOODLE_URL": "https://online.uom.lk",
"MOODLE_USERNAME": "your-username",
"MOODLE_PASSWORD": "your-password"
}
}
}
}Rutas de ejemplo en Windows:
Instalador automático:
C:\Users\TuNombre\moodle-mcp\moodle-mcp.exeCompilación manual:
C:\Users\TuNombre\Go\bin\moodle-mcp.exe
Rutas de ejemplo en macOS:
Instalador automático:
/Users/tunombre/.moodle-mcp/moodle-mcpCompilación manual:
/Users/tunombre/moodle-mcp-server/moodle-mcp
Soporta múltiples plataformas de IA
Vía MCP (Solo Claude)
✅ Claude Desktop (macOS, Windows, Linux)
✅ Claude Code (VSCode, terminal)
Vía API REST (ChatGPT, Gemini, cualquier IA)
✅ ChatGPT (con acciones personalizadas de GPT)
✅ Google Gemini (con Apps Script)
✅ Cualquier IA con acceso a cliente HTTP
✅ Scripts e integraciones personalizadas
Consulta la Guía de todos los modelos para obtener instrucciones detalladas para cada plataforma.
Ejecución del servidor API REST
Para ChatGPT, Gemini u otros modelos de IA, ejecuta el modo API REST:
# Start REST API server
go run ./cmd/moodle-mcp/ -mode rest -port 8080
# Or if you built the binary:
./moodle-mcp -mode rest -port 8080
# View API docs
curl http://localhost:8080/api/docsEl servidor escucha en http://localhost:8080 y expone endpoints REST:
POST /api/login- AutenticarGET /api/courses- Listar cursosGET /api/grades?course_id=123- Obtener calificacionesGET /api/assignments/upcoming- Próximas tareas¡Y más!
Para producción (ChatGPT/Gemini), despliega en la nube:
Google Cloud Run (Recomendado para Gemini)
Heroku (El más sencillo)
DigitalOcean (Mayor control)
Ejemplos de conversaciones
Una vez conectado, puedes preguntarle a Claude cosas como:
"Muéstrame mis cursos inscritos"
"¿Cuáles son mis calificaciones en CS101?"
"¿Qué tareas vencen esta semana?"
"Muéstrame el contenido de mi curso de Estructuras de Datos"
"¿Tengo alguna notificación sin leer?"
"¿Qué fechas límite se acercan en los próximos 7 días?"
Cómo funciona
Este servidor utiliza la API REST de servicios web de Moodle con el token de servicio moodle_mobile_app. Este servicio está habilitado por defecto en la mayoría de las instalaciones de Moodle, por lo que no se requiere configuración de administrador.
Solución de problemas
Error "Invalid login" (Inicio de sesión no válido): Verifica tu nombre de usuario y contraseña. Algunas instituciones usan el correo electrónico como nombre de usuario, otras usan un ID separado.
Error "Web service not available" (Servicio web no disponible): Es posible que tu administrador de Moodle haya desactivado el servicio web móvil. Pídeles que lo habiliten en Administración del sitio > Extensiones > Servicios web > Móvil.
Las calificaciones no aparecen: La API de informes de calificaciones requiere la capacidad gradereport/user:view, que es estándar para los estudiantes pero puede estar restringida en algunos sitios.
Licencia
MIT
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
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/Jawadh-Salih/moodle-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server