Babson Engage MCP Server
Babson Engage MCP Server
MCP-сервер, который предоставляет ИИ-агентам доступ к событиям кампуса Babson и студенческим организациям через Babson Engage (на базе CampusGroups/Anthology). Объединяет RSS-ленты в реальном времени с историческими данными iCal в единую хронологию из более чем 150 событий с возможностью поиска.
Создан для Babson AI Fellowship (весна 2026) в качестве инфраструктуры для проекта, сдаваемого 4 мая: демонстрация того, как внутренние источники данных Babson могут быть преобразованы в совместимые с MCP уровни данных для ИИ-агентов, таких как NavAI.
Развертывание (Live)
Компонент | URL |
Продакшн MCP-эндпоинт (Azure App Service) |
|
Демонстрация в реальном времени (Azure Static Web Apps) |
|
Оба компонента в настоящее время развертываются путем ручной загрузки deploy.zip. См. раздел «Миграция на GitHub Actions» ниже для получения руководства по передаче IT-отделу процесса автоматического развертывания.
Источники данных
Источник | URL | Что предоставляет |
RSS событий |
| Предстоящие события с полной информацией (описание, еда, группа, местоположение, тип события) |
RSS групп |
| Активные студенческие клубы и организации (68 групп) |
Лента iCal |
| Исторические события (прошедшие + запланированные, меньше деталей, чем в RSS) |
Все три являются публичными эндпоинтами — аутентификация не требуется.
Инструменты
search-events
Единый поиск по всем событиям Babson Engage (прошедшим и предстоящим). Объединяет RSS + iCal ленты, удаляет дубликаты и возвращает отсортированную хронологию.
Параметры:
query(необязательно) — Поиск по ключевым словам в названии, описании, местоположении, группеcategory(необязательно) — Фильтр по категории (CAREER, INDUSTRY, SOCIAL, ENTREPRENEURSHIP, COMMUNITY, CULTURAL, ANNOUNCEMENT)from_date(необязательно) — Дата начала (ГГГГ-ММ-ДД). По умолчанию: 90 дней назадto_date(необязательно) — Дата окончания (ГГГГ-ММ-ДД). По умолчанию: 30 дней впередfood_only(необязательно) — Только события, где предоставляется едаlimit(необязательно) — Максимальное количество результатов (по умолчанию 20, максимум 100)
get-event-detail
Полная информация о конкретном событии по его ID в Engage. Только для событий из RSS (предстоящие события содержат более подробные данные, чем исторические записи iCal).
Параметры:
event_id— ID события в Engage
list-groups
Список активных студенческих клубов и организаций. Фильтр по ключевому слову в названии/миссии или типу группы.
Параметры:
search(необязательно) — Фильтр по ключевым словам в названии или миссииgroup_type(необязательно) — Фильтр по типу (например, "Graduate Club", "Organization")limit(необязательно) — Максимальное количество результатов (по умолчанию 30, максимум 100)
Ресурсы
engage://events— Полный JSON-снимок всех предстоящих событийengage://groups— Полный JSON-снимок всех активных групп
Архитектура
Кэширование: Кэш в оперативной памяти с TTL 5 минут. Резервный вариант с устаревшими данными, если RSS/iCal недоступны.
Дедупликация: События, появляющиеся как в RSS, так и в iCal, объединяются по названию + дате, при этом предпочтение отдается более подробной записи из RSS.
Сопоставление категорий: 18 типов событий CampusGroups сопоставлены с 7 категориями для последовательной фильтрации.
Транспорт: Stdio (стандартный MCP). Запускается как локальный процесс, управляемый Claude Code.
Установка
npm install
npm run buildИспользование с Claude Code
Добавьте в .mcp.json в корне вашего проекта:
{
"mcpServers": {
"babson-engage": {
"command": "node",
"args": ["/path/to/engage-mcp-server/dist/server.js"]
}
}
}Разработка
npm run dev # runs with tsxПримеры запросов
"Какие карьерные мероприятия проходят на этой неделе?" —
search-events(category: "CAREER", from_date: "2026-04-07", to_date: "2026-04-14")"Есть ли мероприятия с бесплатной едой?" —
search-events(food_only: true)"Что происходило в Babson в феврале?" —
search-events(from_date: "2026-02-01", to_date: "2026-02-28")"Найди технические клубы" —
list-groups(search: "tech")
Технологический стек
TypeScript + Node.js
@modelcontextprotocol/sdk— фреймворк MCP-сервераfast-xml-parser— парсинг RSS/XMLzod— валидация входных данных
Миграция на GitHub Actions (Руководство для IT-отдела)
Сегодня и MCP-сервер, и демо развертываются путем ручной загрузки deploy.zip в Azure. Репозиторий содержит два готовых рабочих процесса GitHub Actions в .github/workflows/, поставляемых с расширениями .example, поэтому они неактивны до тех пор, пока не будут активированы.
Активация автоматического развертывания MCP-сервера (Azure App Service)
Получите профиль публикации. Azure Portal → App Service
babson-engage-mcp→ Overview → "Get publish profile" (скачивается XML-файл.PublishSettings).Добавьте в GitHub. Репозиторий → Settings → Secrets and variables → Actions → New repository secret с именем
AZURE_WEBAPP_PUBLISH_PROFILE. Вставьте все содержимое XML.Активируйте рабочий процесс. Переименуйте
.github/workflows/azure-app-service-deploy.yml.example→.github/workflows/azure-app-service-deploy.ymlи сделайте коммит. Теперь каждый push вmainбудет собирать и развертывать MCP-сервер.
Активация автоматического развертывания демо (Azure Static Web Apps)
Получите токен развертывания. Azure Portal → Static Web App для демо → "Manage deployment token" → скопируйте.
Добавьте в GitHub. Репозиторий → Settings → Secrets → новый секрет репозитория с именем
AZURE_STATIC_WEB_APPS_API_TOKEN. Вставьте токен.Активируйте рабочий процесс. Переименуйте
.github/workflows/azure-static-web-app-deploy.yml.example→.github/workflows/azure-static-web-app-deploy.ymlи сделайте коммит. Пуши, затрагивающиеdemo/**, будут повторно развертывать демо.
После активации: ~5 минут на каждый push для MCP-сервера, ~30 секунд для демо. Ручной шаг с deploy.zip больше не нужен.
Пользовательский домен (необязательно, требуется Babson IT)
Приведенные выше URL-адреса Azure генерируются автоматически. Если IT-отделу Babson нужен engage-mcp.babson.edu (или аналогичный), настройка займет 5 минут:
IT-отдел добавляет CNAME-запись от
engage-mcp.babson.eduкbabson-engage-mcp.azurewebsites.netВ Azure Portal → App Service → Custom domains → "Add custom domain" → подтвердите CNAME, прикрепите бесплатный сертификат, управляемый Azure. Тот же шаблон для демо Static Web App.
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/nathanaeljyhlee/babson-engage-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server