HSE RUZ

io.github.ihavealotofguap由 GitHub 帳號 ihavealotofguap 發布v0.2.3更新於 Oct 26, 2026

HSE University (NIU VShE) RUZ timetable: search people, groups, rooms; get schedules

已驗證STDIO僅桌面位置與生活效率與工作流

概覽

AI 產生的概覽

針對俄羅斯高等經濟學院(HSE)RUZ 課表的本機 MCP 伺服器:可查詢學生、教師、班級與教室,並讀取其課程安排。

可以做什麼
  • 以子字串搜尋學生、教師、班級與教室,並取得其 RUZ id
  • 依 id 讀取任一對象的課表,或依學生校內信箱讀取本人課表
  • 可設定起始日期與 1–60 天的範圍,並選擇俄文或英文的課程與教室名稱
  • 所有工具僅讀取資料,結果會短暫快取,日期以莫斯科時間計算
適用情境
適合 HSE 的學生與教職員讓助理查詢自己的課程、某個班級一週的安排、某位教師的課表或某間教室的使用情況,而不必在瀏覽器中開啟 RUZ。
執行需求
透過 npx 以 stdio 在本機執行,需要 Node.js 22 或更新版本。不需登入、密碼、API 金鑰或瀏覽器,但只有位於 HSE 內部網路(校園 Wi-Fi HSE.Student 或員工 VPN)時請求才會成功。
安裝前請注意
在 HSE 網路之外查詢會失敗,因此僅能在校園內或透過員工 VPN 使用。它只讀取公開的課表資料、不寫入任何內容,但搜尋與課表查詢會傳送到 RUZ API。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 HSE RUZ,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

hse-ruz-mcp

[CI] [npm] [License: MIT]

English. A local (stdio) MCP server for the HSE University timetable (RUZ, ruz.hse.ru/api). It finds students, lecturers, groups and rooms (ruz_find_person) and returns their schedules (ruz_get_schedule, or ruz_get_my_schedule by a student's @edu.hse.ru email). No login needed, but RUZ only answers from inside the HSE network (campus Wi-Fi HSE.Student or staff VPN). Install for Claude Code: claude mcp add hse-ruz-mcp -- npx -y hse-ruz-mcp (Node.js 22+).

Локальный MCP-сервер (stdio) для расписания НИУ ВШЭ через API RUZ (ruz.hse.ru/api): ищет студентов, преподавателей, группы и аудитории и показывает их расписание (студента — в том числе по email). Логин, пароль и браузер не нужны.

Ограничение: только из сети ВШЭ

RUZ отвечает только из внутренней сети ВШЭ (Wi-Fi HSE.Student на кампусе или VPN сотрудника). Вне её API перенаправляет на HTML-заглушку, и tools возвращают ошибку с объяснением.

Установка

Нужен Node.js 22+.

Claude Code

sh
claude mcp add hse-ruz-mcp -- npx -y hse-ruz-mcp

Claude Desktop, Cursor и другие клиенты

json
{  "mcpServers": {    "hse-ruz-mcp": {      "command": "npx",      "args": ["-y", "hse-ruz-mcp"]    }  }}

Из исходников

sh
git clone https://github.com/ihavealotofguap/hse-ruz-mcp.gitcd hse-ruz-mcpnpm installnpm run buildclaude mcp add hse-ruz-mcp -- node <путь-к-проекту>/dist/index.js

Tools

ToolЧто делает
ruz_find_personИщет студента, преподавателя, группу или аудиторию по подстроке (от 2 символов) и возвращает до limit совпадений (по умолчанию 20) с id и общим числом совпадений с id total (type: student по умолчанию, lecturer, group, auditorium)
ruz_get_scheduleВозвращает расписание студента, преподавателя, группы или аудитории по RUZ id из ruz_find_person (с тем же type)
ruz_get_my_scheduleВозвращает расписание студента по корпоративному email ([email protected])

Параметры периода у всех тулов расписания:

  • startDate — первый день, ГГГГ-ММ-ДД (можно в прошлом), по умолчанию сегодня;
  • daysAhead — сколько дней, 1–60, по умолчанию 7;
  • language — язык названий дисциплин и аудиторий: ru (по умолчанию) или en.

Расписание возвращается как { from, to, lessons }, где from и to — фактические даты периода. Все тулы только читают данные (аннотация readOnlyHint) и описывают формат ответа в outputSchema.

Даты считаются по московскому времени при любой часовой зоне машины. Запрос к RUZ прерывается через 15 секунд или когда клиент отменяет вызов. Успешные ответы RUZ кэшируются в памяти на 5 минут, а одинаковые запросы, отправленные одновременно, уходят в RUZ один раз.

Примеры запросов

  • «Какие у меня пары завтра? Мой email [email protected]»
  • «Найди группу БПИ231 и покажи её расписание на неделю»
  • «Какие пары у преподавателя Иванова на следующей неделе с понедельника?»

Разработка

  • npm run build собирает проект в dist/, npm run dev собирает в режиме watch.
  • npm run lint проверяет код линтером и форматтером Biome, npm run format исправляет то, что можно исправить автоматически.
  • npm test собирает проект и запускает тесты node:test (test/*.test.mjs, fetch подменён, сеть не нужна).

Участие в разработке и выпуск релизов описаны в CONTRIBUTING.md.

Лицензия

MIT

來源:README.md,提交 f8bc70a

工具

3

ruz_find_person

Найти в РУЗ

Поиск студента, преподавателя, группы или аудитории ВШЭ по подстроке (ФИО, номер группы) через API RUZ (ruz.hse.ru/api/search). ВАЖНО: RUZ отдаёт данные только из внутренней сети ВШЭ (Wi-Fi HSE.Student на кампусе или VPN сотрудника) — вне сети запрос вернёт ошибку. Возвращает до limit совпадений (id и подпись) и их общее число total — id с тем же type передаётся в ruz_get_schedule. Если total больше limit, уточните запрос.

輸入參數term必填typelimit

ruz_get_schedule

Расписание по RUZ id

Расписание студента, преподавателя, группы или аудитории ВШЭ по RUZ id (узнать id — ruz_find_person с тем же type) на daysAhead дней начиная со startDate (по умолчанию с сегодня).

輸入參數id必填type必填languagedaysAheadstartDate

ruz_get_my_schedule

Расписание студента по email

Расписание занятий студента ВШЭ по его корпоративному email ([email protected]) на daysAhead дней начиная со startDate (по умолчанию с сегодня). Использует API RUZ, который отдаёт данные только из внутренней сети ВШЭ (Wi-Fi HSE.Student на кампусе или VPN) — вне сети запрос вернёт ошибку.

輸入參數email必填languagedaysAheadstartDate

版本歷史

2
  1. v0.2.3最新Oct 25, 2026
  2. v0.1.4Oct 24, 2026

評分

已滿足適用檢查項的 90%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分
  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分