Skip to main content
Glama

UniMCP: el puente entre tu agente y los sistemas de tu universidad

Este es un Model Context Protocol server NO OFICIAL para universidades argentinas. Con él podés pedirle a tu agente (Claude, ChatGPT, etc.) que lea los apuntes del aula virtual (Moodle) y consulte tu SIU Guaraní y, con tu confirmación, que publique en los foros o entregue tareas. Corre en tu computadora o como servidor HTTP con OAuth.

Qué podés pedirle

  • "¿Cuándo es el recuperatorio del primer parcial de Álgebra?"

  • "¿Qué avisó la profesora de Física esta semana?"

  • "Resumime la guía de la unidad 3 de Sistemas Operativos."

  • "¿Qué nota me pusieron en el TP1 y qué me corrigieron?"

  • "¿Qué finales tengo aprobados y cuál es mi promedio?" (Guaraní)

  • "¿En qué materias estoy inscripto este cuatrimestre?" (Guaraní)

  • "¿Qué mesas de examen hay para Análisis II?" (Guaraní)

Related MCP server: s21-canvas-mcp

Universidades y campus

Id

Universidad

Campus

Aula (Moodle)

Guaraní

unju

UNJu

Universidad Nacional de Jujuy

virtual.unju.edu.ar

alumnos.unju.edu.ar

unsa-exactas

UNSa

Facultad de Ciencias Exactas

exavirtual.unsa.edu.ar

autogestiong3.unsa.edu.ar

unsa-salud

UNSa

Facultad de Ciencias de la Salud

saludvirtual.unsa.edu.ar

autogestiong3.unsa.edu.ar

unsa

UNSa

Otras facultades

—

autogestiong3.unsa.edu.ar

unt-facet

UNT

FACET

facetvirtual.facet.unt.edu.ar

guarani.unt.edu.ar

unt-face

UNT

Ciencias Económicas

campus2.unt.edu.ar

guarani.unt.edu.ar

unt-filo

UNT

Filosofía y Letras

campus.filo.unt.edu.ar

guarani.unt.edu.ar

unt

UNT

Otras facultades

—

guarani.unt.edu.ar

uba-fiuba

UBA

Ingeniería (FIUBA)

campusgrado.fi.uba.ar

guaraniautogestion.fi.uba.ar

uba-exactas

UBA

Ciencias Exactas y Naturales

campus.exactas.uba.ar (SSO idEx)

inscripciones.exactas.uba.ar

utn-frba

UTN

Regional Buenos Aires

aulasvirtuales.frba.utn.edu.ar (SSO)

—

utn-frt

UTN

Regional Tucumán

frt.cvg.utn.edu.ar

—

Cada aula se verificó con tool_mobile_get_public_config (el servicio móvil de Moodle tiene que estar habilitado) y cada Guaraní con su página de login de autogestión. Falta probarlos con usuarios reales: si probás el tuyo, contanos cómo te fue.

Sumar tu campus

Si el tuyo no está, podés usarlo igual con variables de entorno (o un .env, ver .env.example):

UNI_AULA_BASE_URL=https://virtual.tu-universidad.edu.ar
UNI_GUARANI_URL=https://autogestion.tu-universidad.edu.ar/autogestion
# UNI_SSO_HOST=sso.tu-universidad.edu.ar   # solo si el aula entra por Keycloak

y en el login elegís personalizado. Para sumarlo para todos, agregá una entrada en CAMPUSES de src/shared/campus.ts. Para saber si un Moodle sirve:

curl -s -X POST "https://TU-AULA/lib/ajax/service-nologin.php?info=tool_mobile_get_public_config" \
  -H 'content-type: application/json' -d '[{"index":0,"methodname":"tool_mobile_get_public_config","args":{}}]'

Tiene que contestar "enablemobilewebservice":1. Si trae identityproviders, el login pasa por un SSO y hay que cargar su host en ssoHost.

Tools

Aula virtual (Moodle)

Tool

Qué hace

aula_list_courses

Lista tus cursos. Es el punto de partida.

aula_open

Entra a un curso, una sección, un módulo, un foro o una discusión. Cada respuesta trae las direcciones de lo que hay adentro y de un nivel más arriba, así el agente navega sin perderse. Un curso grande llega como índice de secciones con sus actividades, y cada sección se abre aparte.

aula_search

Busca palabras en uno o en todos tus cursos: secciones, módulos, nombres de archivo y discusiones de los foros. Sirve cuando no sabés en qué materia está algo.

aula_read_file

Lee un archivo del aula, por partes cuando es largo.

aula_get_site_info

Datos de tu usuario en el aula virtual.

aula_forum_post

Abre un hilo en un foro o responde en una discusión.

aula_forum_edit_post

Edita una publicación tuya.

aula_forum_delete_post

Borra una publicación tuya.

aula_assign_submit

Entrega una tarea: sube archivos de tu compu, escribe el texto en línea y confirma el envío.

aula_assign_upload_link

Solo en modo HTTP: un link para subir los archivos de una entrega.

aula_choice_answer

Responde una elección o te anota en un grupo.

aula_send_message

Manda un mensaje privado a un docente o compañero.

aula_calendar_add_event

Agrega un recordatorio a tu calendario del aula.

SIU Guaraní (autogestión, G3W)

Tool

Qué hace

guarani_menu

Lista las operaciones que tu universidad habilitó (historia académica, plan, inscripciones, mesas…) con su dirección.

guarani_open

Abre una página de Guaraní y la devuelve como texto, con las tablas fila por fila, los avisos y los enlaces a otras páginas.

Guaraní no tiene API: el servidor entra con tu usuario y lee las páginas como lo harías vos. Por ahora solo lee: para inscribirte, el agente te pasa el link. Las tools solo aparecen si tu campus tiene esa plataforma.

Cómo instalar

Necesitás Node.js 20 o superior.

1. Iniciar sesión

npx -y unimcp login

Elegís tu campus de la lista, y te pide el usuario y la contraseña del aula y después los de Guaraní (que suele ser tu DNI). Se hace una sola vez: después el servidor renueva las sesiones solo.

2. Agregarlo a tu cliente

Claude Code

claude mcp add uni -- npx -y unimcp

Claude Desktop: en Settings → Developer → Edit Config, dentro de mcpServers:

"uni": {
  "command": "npx",
  "args": ["-y", "unimcp"]
}

En Windows, si no arranca, usá "command": "cmd" y "args": ["/c", "npx", "-y", "unimcp"].

Codex: codex mcp add uni -- npx -y unimcp · Gemini CLI: gemini mcp add uni npx -y unimcp

Cursor (~/.cursor/mcp.json) y VS Code (.vscode/mcp.json): un servidor STDIO con "command": "npx" y "args": ["-y", "unimcp"].

Cualquier cliente MCP que lance servidores por STDIO sirve con npx -y unimcp.

Modo HTTP (opcional)

Necesita Node 22.13 o más nuevo:

npx -y unimcp login --http   # una vez: te muestra el token para el header Authorization
npx -y unimcp --http --port 3000

Hosteado, el servidor también hace de servidor de autorización OAuth: el cliente MCP abre una página donde el alumno elige su campus y entra con su usuario del aula. La contraseña se usa una sola vez y no se guarda. La configuración (quién puede entrar, URL pública, clave de cifrado) está en .env.example, con las variables UNIMCP_*.

En modo HTTP SIU Guaraní todavía no está disponible: su sesión vence en minutos y renovarla necesita la contraseña, que el servidor hosteado no guarda.

Con Docker:

docker build -t unimcp .
docker run -d --name unimcp --network host --restart unless-stopped \
  -e HOST=127.0.0.1 -e PORT=8100 -e UNIMCP_PUBLIC_URL=https://mcp.tu-dominio.com \
  -e UNIMCP_KEY=$(openssl rand -base64 32) -v unimcp-data:/data unimcp

Dónde se guardan tus datos

Instalado en tu computadora, todo queda ahí:

  • Usuarios y contraseñas (aula y Guaraní): en el gestor de credenciales del sistema (Windows Credential Manager, Keychain en macOS, Secret Service en Linux). Sin gestor, por variables de entorno: UNI_USER/UNI_PASS y UNI_GUARANI_USER/UNI_GUARANI_PASS.

  • Campus elegido, token del aula y cookies de sesión: en %APPDATA%\unimcp\ (Windows) o ~/.config/unimcp/ (Linux y macOS).

  • En modo HTTP: la contraseña no se guarda; la sesión va cifrada en unimcp.db, con la clave de store.key (o la de UNIMCP_KEY). Del token del cliente solo se guarda el hash.

Los links que el agente te pasa abren con la sesión de tu navegador y nunca incluyen tu token.

Desarrollo

npm install
npm run login   # una vez
npm run dev     # servidor por STDIO desde src/, con tsx
npm run build   # compila a build/

Aviso

Este proyecto no está afiliado ni avalado por ninguna universidad ni por el SIU. Usalo bajo tu responsabilidad.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Integrates AI assistants with the Universidad Siglo 21 Canvas LMS, enabling consultation of courses, grades, assignments, schedules, readings, and PDF content, plus interactive exam simulations and academic status analysis.
    21
    8 npm
    2
    MIT
  • A
    license
    B
    quality
    B
    maintenance
    Enables AI agents to search for information and files in the UTN virtual classroom (aula virtual) by logging in with institutional credentials. Currently exposes tools to list courses and retrieve site information, with more planned.
    2
    174 npm
    3
    ISC
  • A
    license
    B
    quality
    C
    maintenance
    Connects AI assistants to the UNED virtual campus (agora.uned.es, Moodle) so students can log in via SSO, sync course materials, and search or read extracted text with page-level citations. It also surfaces deadlines, announcements, grades, classes and calendar events, tracks topic-by-topic progress, generates weekly study plans and exports dates to an .ics calendar.
    21
    MIT