Skip to main content
Glama
nathanaeljyhlee

Babson Engage MCP Server

Servidor MCP de Babson Engage

Servidor MCP que proporciona a los agentes de IA acceso a los eventos del campus y a las organizaciones estudiantiles de Babson a través de Babson Engage (impulsado por CampusGroups/Anthology). Combina fuentes RSS en vivo con datos históricos de iCal en una línea de tiempo unificada y buscable de más de 150 eventos.

Creado para el Babson AI Fellowship (primavera de 2026) como infraestructura para el entregable del 4 de mayo: demostrar cómo las fuentes de datos internas de Babson pueden convertirse en capas de datos compatibles con MCP para agentes de IA como NavAI.

Despliegue en vivo

Componente

URL

Endpoint MCP de producción (Azure App Service)

https://babson-engage-mcp.azurewebsites.net

Demo en vivo (Azure Static Web Apps)

http://ambitious-sky-0c81b370f.1.azurestaticapps.net/

Ambos se despliegan actualmente mediante la carga manual de deploy.zip. Consulta "Migración a GitHub Actions" a continuación para obtener la guía de transferencia a TI sobre cómo cambiar al despliegue automático (push-to-deploy).

Fuentes de datos

Fuente

URL

Qué proporciona

RSS de eventos

https://engage.babson.edu/rss_events

Próximos eventos con detalles completos (descripción, comida, grupo, ubicación, tipo de evento)

RSS de grupos

https://engage.babson.edu/rss_groups

Clubes y organizaciones estudiantiles activos (68 grupos)

Feed de iCal

https://engage.babson.edu/ical/babsongrad/ical_babsongrad.ics

Eventos históricos (pasados + programados, menos detalle que RSS)

Los tres son endpoints públicos: no se requiere autenticación.

Herramientas

search-events

Búsqueda unificada en todos los eventos de Babson Engage (pasados y próximos). Combina feeds RSS + iCal, elimina duplicados y devuelve una línea de tiempo ordenada.

Parámetros:

  • query (opcional) -- Búsqueda por palabras clave en título, descripción, ubicación, grupo

  • category (opcional) -- Filtrar por categoría (CAREER, INDUSTRY, SOCIAL, ENTREPRENEURSHIP, COMMUNITY, CULTURAL, ANNOUNCEMENT)

  • from_date (opcional) -- Fecha de inicio (AAAA-MM-DD). Predeterminado: hace 90 días

  • to_date (opcional) -- Fecha de fin (AAAA-MM-DD). Predeterminado: 30 días en el futuro

  • food_only (opcional) -- Solo eventos con comida incluida

  • limit (opcional) -- Resultados máximos (predeterminado 20, máximo 100)

get-event-detail

Detalles completos de un evento específico mediante su ID de evento de Engage. Solo eventos RSS (los próximos eventos tienen datos más ricos que los registros históricos de iCal).

Parámetros:

  • event_id -- El ID del evento de Engage

list-groups

Lista de clubes y organizaciones estudiantiles activos. Filtrar por palabra clave de nombre/misión o tipo de grupo.

Parámetros:

  • search (opcional) -- Filtro de palabras clave en nombre o misión

  • group_type (opcional) -- Filtrar por tipo (ej. "Graduate Club", "Organization")

  • limit (opcional) -- Resultados máximos (predeterminado 30, máximo 100)

Recursos

  • engage://events -- Instantánea JSON completa de todos los próximos eventos

  • engage://groups -- Instantánea JSON completa de todos los grupos activos

Arquitectura

  • Caché: Caché en memoria con TTL de 5 minutos. Alternativa de datos obsoletos si RSS/iCal no están disponibles.

  • Deduplicación: Los eventos que aparecen tanto en RSS como en iCal se fusionan por título + fecha, prefiriendo el registro RSS más rico.

  • Mapeo de categorías: 18 tipos de eventos de CampusGroups mapeados a 7 categorías para un filtrado consistente.

  • Transporte: Stdio (MCP estándar). Se ejecuta como un proceso local gestionado por Claude Code.

Configuración

npm install
npm run build

Uso con Claude Code

Añadir a .mcp.json en la raíz de tu proyecto:

{
  "mcpServers": {
    "babson-engage": {
      "command": "node",
      "args": ["/path/to/engage-mcp-server/dist/server.js"]
    }
  }
}

Desarrollo

npm run dev  # runs with tsx

Consultas de ejemplo

  • "¿Qué eventos de carrera hay esta semana?" -- search-events(category: "CAREER", from_date: "2026-04-07", to_date: "2026-04-14")

  • "¿Algún evento con comida gratis?" -- search-events(food_only: true)

  • "¿Qué pasó en Babson en febrero?" -- search-events(from_date: "2026-02-01", to_date: "2026-02-28")

  • "Encontrar clubes de tecnología" -- list-groups(search: "tech")

Stack tecnológico

  • TypeScript + Node.js

  • @modelcontextprotocol/sdk -- Framework de servidor MCP

  • fast-xml-parser -- Análisis de RSS/XML

  • zod -- Validación de entrada

Migración a GitHub Actions (Guía de transferencia a TI)

Hoy en día, tanto el servidor MCP como la demo se despliegan mediante la carga manual de deploy.zip a Azure. El repositorio contiene dos flujos de trabajo de GitHub Actions listos para usar en .github/workflows/, enviados con extensiones .example para que estén inactivos hasta que se activen.

Activar el despliegue automático del servidor MCP (Azure App Service)

  1. Obtener el perfil de publicación. Azure Portal → App Service babson-engage-mcp → Overview → "Get publish profile" (descarga el XML .PublishSettings).

  2. Añadir a GitHub. Repositorio → Settings → Secrets and variables → Actions → New repository secret llamado AZURE_WEBAPP_PUBLISH_PROFILE. Pega todo el contenido del XML.

  3. Activar el flujo de trabajo. Renombra .github/workflows/azure-app-service-deploy.yml.example.github/workflows/azure-app-service-deploy.yml y haz commit. Cada push a main ahora construirá y desplegará el servidor MCP.

Activar el despliegue automático de la demo (Azure Static Web Apps)

  1. Obtener el token de despliegue. Azure Portal → Static Web App para la demo → "Manage deployment token" → copiar.

  2. Añadir a GitHub. Repositorio → Settings → Secrets → new repo secret llamado AZURE_STATIC_WEB_APPS_API_TOKEN. Pega el token.

  3. Activar el flujo de trabajo. Renombra .github/workflows/azure-static-web-app-deploy.yml.example.github/workflows/azure-static-web-app-deploy.yml y haz commit. Los pushes que afecten a demo/** volverán a desplegar la demo.

Tras la activación: ~5 min por push para el servidor MCP, ~30 seg para la demo. El paso manual de deploy.zip se retira.

Dominio personalizado (opcional, requiere Babson IT)

Las URLs de Azure anteriores se generan automáticamente. Si Babson IT desea engage-mcp.babson.edu (o similar), es una configuración de 5 minutos:

  1. TI añade un registro CNAME desde engage-mcp.babson.edu a babson-engage-mcp.azurewebsites.net

  2. En Azure Portal → App Service → Custom domains → "Add custom domain" → verificar CNAME, adjuntar un certificado gratuito gestionado por Azure. El mismo patrón para la demo de Static Web App.

F
license - not found
-
quality - not tested
C
maintenance

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/nathanaeljyhlee/babson-engage-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server