EduBase

oficial

Interactúa con EduBase, una plataforma integral de e-learning con capacidades avanzadas de cuestionarios, gestión de exámenes y organización de contenido.

¿Qué puedes hacer con EduBase MCP?

  • Crear y publicar preguntas — Pide al asistente que redacte una pregunta nueva y la publique en tu QuestionBase mediante edubase_prompt_create_question.
  • Convertir documentos en preguntas — Convierte un documento adjunto, una ruta de archivo o una URL en preguntas después de aprobar el plan, y añádelas opcionalmente a un conjunto de Quiz.
  • Crear exámenes a partir de un tema — Genera preguntas sobre un tema, agrúpalas en un conjunto de Quiz y crea un examen programado con edubase_prompt_create_exam.
  • Resumir los resultados de un examen — Analiza los resultados de un examen y guarda opcionalmente el resumen en el examen con edubase_prompt_summarize_exam_results.
  • Asignar clases a exámenes — Asigna los miembros activos de una clase a un examen mediante edubase_prompt_assign_class_to_exam.
  • Comprobar el progreso en el recorrido del examen — Consulta cómo avanzan los usuarios en un recorrido del examen y quiénes están atascados mediante edubase_prompt_exam_journey_status.

Documentación

EduBase logo

Servidor MCP de EduBase

pre-commit.ci status Publish

Este repositorio contiene la implementación del Model Context Protocol (MCP) del servidor para la plataforma EduBase. Permite que los clientes MCP (por ejemplo, Claude Desktop) y los LLM interactúen con tu cuenta de EduBase y realicen tareas en tu nombre. Admite los protocolos de transporte stdio, SSE y HTTP transmitible.

EduBase MCP demo GIF: Claude uploads math questions

¿Qué es EduBase?

EduBase es una plataforma educativa en línea, innovadora y modular, que hace que el aprendizaje sea más ameno, sencillo e interactivo, y es adecuada para instituciones educativas o empresas.

¿Por qué elegir EduBase?

EduBase revoluciona el aprendizaje digital con su combinación única de funciones:

  • Sistema avanzado de cuestionarios con parametrización que permite infinitas variaciones de una misma pregunta, detección de trampas en tiempo real, una hermosa composición tipográfica LaTeX, compatibilidad avanzada con STEM y calificación automática
  • Entorno de aprendizaje unificado que centraliza todo tu contenido educativo —videos, exámenes, documentos y módulos SCORM— en un sistema intuitivo
  • Seguridad de nivel empresarial con funciones como integración de SSO, controles de acceso detallados, auditorías exhaustivas y cumplimiento del RGPD
  • Integración con tus sistemas existentes mediante LTI, una API completa y opciones de integración personalizadas
  • Herramientas asistidas por IA, como EduBase Assistant, que pueden transformar al instante tu contenido existente en cuestionarios y evaluaciones interactivas, o traducir tus materiales de un idioma a otro

Desde instituciones de educación superior hasta departamentos de formación corporativa, EduBase se adapta a tus necesidades específicas y mantiene una experiencia de usuario intuitiva en todos los dispositivos.

Vídeo de demostración

Creación colaborativa y carga de preguntas, programación de exámenes y análisis de resultados de usuarios con Claude:

Demonstrating EduBase's MCP server to collaboratively create and upload questions, schedule exams and analyze results.

Cómo obtener tus credenciales de API

Una vez que hayas iniciado sesión, busca el menú Integrations en tu Dashboard, haz clic en «add integration» y elige el tipo «EduBase API».

Si no ves esta opción, introduce el código de activación MCPGITHUB o ponte en contacto con nosotros para solicitar acceso en info@edubase.net.

EduBase API credentials page

Herramientas

Cada endpoint de API documentado está disponible como herramienta, con el nombre edubase_<method>_<endpoint>. Por ejemplo, la herramienta para el endpoint GET /user:me se llama edubase_get_user_me. Los endpoints de etiquetas, permisos y transferencias funcionan igual para cada tipo de contenido, por lo que comparten una sola herramienta por método con un argumento type (p. ej., edubase_post_content_tag para POST /exam:tag, POST /quiz:tag, etc.). Consulta nuestra documentación para desarrolladores para obtener más información.

Conjuntos de herramientas

Las herramientas se agrupan en conjuntos para que puedas exponer solo las que necesitas. Cuantas menos herramientas haya, menos contexto del modelo se utiliza y más fácil le resulta elegir la adecuada. Todos los conjuntos de herramientas están habilitados de forma predeterminada.

Conjunto de herramientasHerramientas para
filesCargas temporales de archivos (siempre habilitado)
questionsPreguntas
quizzesConjuntos de cuestionarios, sus preguntas, ajustes y preajustes de calificación
examsExámenes, sus ajustes, usuarios, certificados, marca y recorridos
resultsResultados de cuestionarios y exámenes, descargas de certificados
usersUsuarios, sus nombres, grupos y enlaces de inicio de sesión
classesClases y membresías de clase
organizationsOrganizaciones, miembros, departamentos, puestos de trabajo, competencias y webhooks
integrationsIntegraciones y sus claves
tagsEtiquetas y asociaciones de etiquetas a contenidos
permissionsPermisos de usuario sobre contenidos y transferencias de propiedad
metricsMétricas personalizadas

Selecciona conjuntos de herramientas con una lista separada por comas en EDUBASE_TOOLSETS (p. ej., questions,quizzes,exams). Establece EDUBASE_READONLY=true para exponer solo las herramientas que leen datos (las herramientas get y las que solo generan enlaces de descarga, como edubase_post_question_export).

Establece EDUBASE_DYNAMIC_TOOLSETS=true para habilitar conjuntos de herramientas bajo demanda: las sesiones comienzan solo con las herramientas esenciales y el modelo habilita los conjuntos que necesita mediante la herramienta edubase_enable_toolsets (incluida en edubase_list_toolsets). Esto mantiene pequeña la lista inicial de herramientas para los clientes que las cargan todas de antemano, pero requiere un cliente que actualice la lista de herramientas cuando se le notifique que hay cambios.

Cuando se utiliza un transporte HTTP, los clientes pueden restringir aún más la configuración para su propia sesión mediante los encabezados EduBase-Mcp-Toolsets, EduBase-Mcp-ReadOnly y EduBase-Mcp-Dynamic, o los parámetros de consulta toolsets, read_only y dynamic_toolsets (p. ej., https://domain.edubase.net/mcp?toolsets=exams&read_only=true). Una sesión nunca puede habilitar conjuntos de herramientas ni herramientas de escritura que la configuración del servidor haya deshabilitado.

Prompts

Los prompts son flujos de trabajo listos para usar que puedes iniciar desde tu cliente MCP (p. ej., desde el menú + o /). Los clientes que admiten completado sugieren valores para los argumentos mientras escribes: tipos de preguntas y tus propios exámenes, conjuntos de cuestionarios y clases.

PromptQué haceArgumentos
Crear una pregunta (edubase_prompt_create_question)Escribe una pregunta nueva y la publica en tu QuestionBasetype, subject, opcionales difficulty y language
Crear preguntas a partir de un documento (edubase_prompt_questions_from_document)Convierte un documento adjunto (o una ruta de archivo o URL) en preguntas, después de que apruebes el plan, y opcionalmente las añade a un conjunto de cuestionariosdocument, opcional questions (cantidad), types, quiz y language
Crear un examen (edubase_prompt_create_exam)Genera preguntas sobre un tema, las reúne en un conjunto de cuestionarios nuevo y crea un examen a partir de éltopic, questions (cantidad), opcional types (separados por comas), language y schedule
Crear un examen con un recorrido (edubase_prompt_create_exam_journey)Crea un examen como el anterior y, a continuación, crea y publica un pequeño recorrido de examen a partir de él, reutilizando exámenes relacionados de tu cuenta y creando un conjunto de cuestionarios de práctica y un examen de seguimiento si es necesariolos mismos que en Crear un examen
Copiar un examen (edubase_prompt_copy_exam)Crea un examen nuevo con el mismo conjunto de cuestionarios y los mismos ajustes para un nuevo periodoexam, schedule, opcional title
Asignar una clase a un examen (edubase_prompt_assign_class_to_exam)Asigna los miembros activos de una clase a un examenexam, class
Resumir los resultados de un examen (edubase_prompt_summarize_exam_results)Analiza los resultados de un examen y, opcionalmente, guarda el resumen en el examenexam, opcionales focus y save (ask, yes o no)
Comprobar un recorrido de examen (edubase_prompt_exam_journey_status)Muestra el progreso de los usuarios en un recorrido de examen e indica quién está atascadoexam

Los prompts solo se ofrecen cuando sus conjuntos de herramientas están habilitados; en el modo de solo lectura, solo se ofrecen los dos últimos.

Si se dejan vacíos los tipos de preguntas de un examen, los clientes que admiten la solicitud de datos preguntan cuáles son mediante casillas de verificación. Estos clientes también te piden que confirmes los cambios que no se pueden deshacer (eliminar exámenes, conjuntos de cuestionarios, preguntas, usuarios, organizaciones e integraciones; transferir la propiedad; iniciar una nueva ronda de examen y rotar claves de integración) antes de aplicarlos. Establece EDUBASE_ELICITATION=false para desactivar estas preguntas.

Recursos

Los documentos de referencia están disponibles como recursos y mediante la herramienta edubase_mcp_reference para los modelos que no pueden leer recursos: edubase://reference/questions (los campos y tipos de preguntas) y edubase://reference/exam-journeys (el formato portátil de recorrido de examen). Explican lo que enseñan las habilidades de EduBase, para los clientes que no disponen de ellas. También se pueden adjuntar exámenes y conjuntos de cuestionarios como recursos (edubase://exam/{exam} y edubase://quiz/{quiz}), y se muestran y sugieren tus contenidos. Desactívalos con EDUBASE_CONTENT_RESOURCES=false, o para una sesión, con el encabezado EduBase-Mcp-Content-Resources: false, el parámetro de consulta content_resources=false o el ajuste de Smithery edubaseContentResources.

Las herramientas que crean o modifican exámenes, conjuntos de cuestionarios y recorridos enlazan a sus páginas en EduBase.

Configuración

El servidor MCP se puede configurar mediante variables de entorno. Están disponibles las siguientes variables:

VariableDescripciónObligatorioValor predeterminado
EDUBASE_API_URLLa URL base de la API de EduBase, probablemente https://subdomain.edubase.net/api.Síhttps://www.edubase.net/api
EDUBASE_API_APPEl ID de aplicación de tu aplicación de integración en EduBase, el app en la API de EduBase. Puedes encontrarlo en la ventana de detalles de integración de EduBase.No, si se usa el transporte HTTP con autenticación; de lo contrario, sí-
EDUBASE_API_KEYLa clave secreta de tu aplicación de integración en EduBase, el secret en la API de EduBase. Puedes encontrarla junto al ID de aplicación en la ventana de detalles de integración de EduBase.No, si se usa el transporte HTTP con autenticación; de lo contrario, sí-
EDUBASE_SSE_MODEInicia el servidor MCP en modo HTTP con transporte SSE. El valor debe ser true.Nofalse
EDUBASE_STREAMABLE_HTTP_MODEInicia el servidor MCP en modo HTTP con transporte HTTP transmisible. El valor debe ser true.Nofalse
EDUBASE_TOOLSETSLista separada por comas de los conjuntos de herramientas habilitados, o all.Noall
EDUBASE_READONLYExpone únicamente las herramientas que leen datos. El valor debe ser true.Nofalse
EDUBASE_OUTPUT_SCHEMASEsquemas de salida de las herramientas y resultados estructurados: off muestra las herramientas sin esquemas de salida y devuelve los resultados solo como texto JSON; on incluye los esquemas de salida completos; fields incluye los esquemas de salida sin las descripciones de los campos (mantiene los resultados estructurados, pero ahorra la mayoría de los tokens de los esquemas).Nofields
EDUBASE_CONFIG_PROVIDERSLista separada por comas de los proveedores de alojamiento autorizados a proporcionar la configuración de sesión en las solicitudes cuando se usa un transporte HTTP. Actualmente solo se admite smithery (el parámetro de consulta config codificado en base64).No-
EDUBASE_CONTENT_RESOURCESMuestra los exámenes y conjuntos de cuestionarios de la cuenta como recursos. Establécelo en false para desactivarlos, por ejemplo, cuando se inspeccione el servidor sin credenciales. Los documentos de referencia seguirán disponibles.Notrue
EDUBASE_DYNAMIC_TOOLSETSInicia sesiones solo con las herramientas de carga de archivos y permite que el modelo habilite conjuntos de herramientas según sea necesario. El valor debe ser true.Nofalse
EDUBASE_ELICITATIONPide al usuario, a través del cliente, que confirme los cambios que no se pueden deshacer y que elija los tipos de pregunta de las indicaciones, si el cliente admite la solicitud de información. Establécelo en false para desactivarlo.Notrue
EDUBASE_HTTP_PORTEl servidor HTTP escuchará en este puerto si se usa el modo de transporte SSE o HTTP transmisible.No3000
EDUBASE_OAUTHHabilita el comportamiento de recurso protegido de OAuth 2.1: las solicitudes no autenticadas se rechazan con 401 + WWW-Authenticate que apunta a /.well-known/oauth-protected-resource/mcp, y los tokens de portador se reenvían a la API de EduBase.Nofalse
EDUBASE_OAUTH_AUTHORIZATION_SERVERURL base pública de la implementación de EduBase que actúa como IdP de OAuth. Se usa para anunciar el servidor de autorización en el documento de metadatos del recurso protegido.Noderivada de EDUBASE_API_URL
EDUBASE_OAUTH_RESOURCE_URLURL base pública de este servidor MCP (el indicador de recurso OAuth). Se usa en el encabezado WWW-Authenticate y en los metadatos del recurso.Noderivada de EDUBASE_API_URL
EDUBASE_ALLOW_PRIVATE_NETWORKCuando se usa un transporte HTTP, la herramienta edubase_filebin bloquea las solicitudes salientes a direcciones privadas, de bucle local, de enlace local y reservadas (protección SSRF), y rechaza las rutas de archivos locales. Establécelo en true para permitirlas, por ejemplo, en una implementación autohospedada en una red privada de confianza. No tiene efecto en el modo stdio, donde el usuario local es el único solicitante.Nofalse
EDUBASE_FILEBIN_ALLOWED_HOSTSLista de permitidos opcional, separada por comas, de nombres de host autorizados como destinos de carga edubase_filebin (host exacto o cualquier subdominio, por ejemplo, edubase.net). Si está vacía, se permite cualquier host público (sigue sujeto al filtrado de direcciones anterior).No-

Uso como servidor MCP remoto

Puedes usar el servidor MCP de EduBase como servidor MCP remoto con tu cliente MCP. Para ello, debes alojar el servidor en un lugar al que puedan acceder los clientes y, después, configurar el cliente para que se conecte al servidor. Inícialo en modo de transporte SSE o HTTP transmisible y usa siempre HTTPS cuando accedas al servidor de forma remota a través de Internet.

Autenticación con servidores remotos

Puedes usar el servidor en dos modos:

  • Sin autenticación del cliente: en este modo, el servidor no exigirá autenticación al cliente. Es útil para pruebas o desarrollo, o en una red cerrada, pero no se recomienda para uso en producción. Para ello, también debes configurar el servidor con EDUBASE_API_APP y EDUBASE_API_KEY.
  • Con autenticación mediante token de portador: en este modo, el servidor exigirá que se envíe un token de portador con cada solicitud. Esta es la forma recomendada de usar el servidor en producción. Puedes obtener el token de portador desde tu cuenta de EduBase creando una aplicación de integración y proporcionando el ID de aplicación y la clave secreta en el formato {app}:{secret}, codificado en base64 como token. El servidor usará entonces este token para autenticar al cliente y autorizar el acceso a los endpoints de la API.
  • Con OAuth 2.1 (EduBase como IdP): cuando EDUBASE_OAUTH=true, los clientes compatibles (Claude Desktop, conectores de Claude.ai, Cursor, conectores de ChatGPT, etc.) descubren el servidor de autorización de EduBase mediante /.well-known/oauth-protected-resource, se registran dinámicamente (RFC 7591), guían al usuario por una pantalla de consentimiento de EduBase e intercambian un código de autorización (con PKCE S256) por un token de acceso opaco. El servidor MCP reenvía ese token sin modificar a la API de EduBase, que lo resuelve en la integración MCP aprovisionada automáticamente y creada con el primer consentimiento. No hay que copiar ningún ID de aplicación ni clave secreta: los usuarios solo tienen que hacer clic en «Conectar EduBase» en su cliente.

Uso con Claude Desktop

Para ver una guía paso a paso, consulta nuestra publicación del blog sobre cómo conectar EduBase con Claude: la guía completa de integración MCP.

Uso del servidor MCP de EduBase proporcionado

Puedes usar el servidor MCP de EduBase proporcionado (si está disponible) sin configuración, simplemente añadiéndolo como servidor remoto en tu cliente con la URL https://domain.edubase.net/mcp (sustitúyela por el dominio real), si admite autenticación OAuth, o con el token de portador correspondiente en el encabezado Authorization (Authorization: Bearer ${BASE64_ENCODED_TOKEN}).

Recomendado para usuarios de www.edubase.net, ya que nosotros mantenemos y actualizamos el servidor y no tienes que preocuparte por alojarlo ni configurarlo. Solo asegúrate de usar la URL y el método de autenticación correctos al conectar tu cliente.

Instalación manual

Añade lo siguiente a tu claude_desktop_config.json:

Uso de Node.js

Antes de ejecutar el servidor MCP, asegúrate de tener Node.js instalado. Puedes descargarlo desde nodejs.org o usar un gestor de paquetes como brew.

{
  "mcpServers": {
    "edubase": {
      "command": "npx",
      "args": [
        "-y",
        "@edubase/mcp"
      ],
      "env": {
        "EDUBASE_API_URL": "https://domain.edubase.net/api",
        "EDUBASE_API_APP": "your_integration_app_id",
        "EDUBASE_API_KEY": "your_integration_secret_key"
      }
    }
  }
}

También puedes descargar una versión del servidor MCP de EduBase o clonar el repositorio y ejecutar npm run build para compilar el servidor. No olvides ajustar /path/to/dist al directorio real y configurar las variables de entorno.

{
  "mcpServers": {
    "edubase": {
      "command": "node",
      "args": [
        "/path/to/dist/index.js"
      ],
      "env": {
        "EDUBASE_API_URL": "https://domain.edubase.net/api",
        "EDUBASE_API_APP": "your_integration_app_id",
        "EDUBASE_API_KEY": "your_integration_secret_key"
      }
    }
  }
}

Uso de Docker

Antes de ejecutar el servidor MCP, asegúrate de tener Docker instalado y en ejecución. Puedes descargarlo desde docker.com o usar un gestor de paquetes. No olvides configurar las variables de entorno. La imagen está disponible para linux/amd64 y linux/arm64 en Docker Hub como edubase/mcp y en GitHub Packages como ghcr.io/edubase/mcp.

{
  "mcpServers": {
    "edubase": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "EDUBASE_API_URL",
        "-e",
        "EDUBASE_API_APP",
        "-e",
        "EDUBASE_API_KEY",
        "edubase/mcp"
      ],
      "env": {
        "EDUBASE_API_URL": "https://domain.edubase.net/api",
        "EDUBASE_API_APP": "your_integration_app_id",
        "EDUBASE_API_KEY": "your_integration_secret_key"
      }
    }
  }
}

Instalación mediante un servidor MCP remoto

Puedes usar el servidor MCP de EduBase proporcionado (si está disponible) como servidor remoto. Recomendamos codificar en Base64 tu EDUBASE_API_APP y EDUBASE_API_KEY y usarlo como token de portador en el encabezado Authorization (Authorization: Bearer ${BASE64_ENCODED_TOKEN}).

{
  "mcpServers": {
    "edubase": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://domain.edubase.net/mcp",
        "--header",
        "Authorization: Bearer ${EDUBASE_API_APP}:${EDUBASE_API_KEY}"
      ]
    }
  }
}

Instalación mediante Smithery

Para instalar automáticamente el servidor MCP de EduBase para Claude Desktop mediante Smithery:

npx -y @smithery/cli install @EduBase/MCP --client claude

Desarrollo

Ejecuta npm test para compilar el servidor y comprobar la lista de herramientas: los límites de tamaño de la lista de herramientas y las instrucciones del servidor, las descripciones de las herramientas, los modos de conjuntos de herramientas, de solo lectura y dinámicos, y la gestión de la configuración del transporte HTTP. Cuando las herramientas nuevas superen un límite, acorta sus esquemas o aumenta deliberadamente el límite en test/server.test.mjs, ya que cada cliente paga por la lista de herramientas en cada sesión.

Los documentos de referencia de src/references se generan a partir de la documentación para desarrolladores de EduBase. Vuelve a generarlos con node scripts/sync-references.mjs <path to the developer documentation repository> cuando cambien los campos de las preguntas o el formato del flujo de exámenes.

Al combinar una solicitud de incorporación de cambios etiquetada como major, minor o patch, se confirma la siguiente versión en main y se inicia el flujo de trabajo Publish, que publica el paquete en npm y el MCP Registry, y la imagen del contenedor en Docker Hub y GitHub Packages; además, etiqueta la confirmación y crea una versión de GitHub cuando todo se haya completado correctamente. Sin una de estas etiquetas, no se publica nada. Si se establece manualmente una versión en la solicitud de incorporación de cambios, se publica tal cual. La confirmación, la etiqueta y la versión proceden de una aplicación de publicación dedicada, cuyas credenciales están en el entorno release. El flujo de trabajo Publish ejecuta primero las pruebas, comprueba la imagen compilada antes de subirla y se autentica en Docker Hub con OIDC mediante las variables DOCKERHUB_OIDC_CONNECTIONID y DOCKERHUB_OIDC_USERNAME. La publicación en GitHub Packages usa el GITHUB_TOKEN del trabajo, ya que GitHub no acepta tokens de aplicaciones de GitHub allí. Ejecútalo manualmente con una versión para reintentar o volver a compilar una publicación: se omite todo lo que ya esté en npm y el MCP Registry, y latest solo se actualiza para la publicación más reciente.

Punto de sincronización de la documentación: las herramientas, las indicaciones y las referencias se sincronizaron por última vez el 2026-11-06 con la documentación para desarrolladores sincronizada con la versión de EduBase 8.6.6 (la solicitud de incorporación de cambios de documentación para 8.6.6), comprobada con EduBase en la confirmación a29c6af51. Para actualizar el servidor, ejecuta git log --oneline <commit>..HEAD y git diff <commit>..HEAD -- docs/api/endpoints en el repositorio de documentación para desarrolladores, desde la confirmación de la solicitud de incorporación de cambios de documentación para 8.6.6; actualiza las herramientas afectadas en src/tools (y sus indicaciones y guías de conjuntos de herramientas), vuelve a generar los documentos de referencia y actualiza este marcador con las nuevas confirmaciones HEAD. Si hay diferencias entre ambos, prevalece el repositorio de EduBase.

Contacto

Sitio web: www.edubase.net
Documentación para desarrolladores: developer.edubase.net
Correo electrónico: info@edubase.net