学术信息查询服务器

为哥伦比亚国立大学学术信息系统提供课程搜索、课表查询、成绩查询和学术历史记录等功能。

  • by sebassg
  • TypeScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 sebassg/sia-unal-mcp

使用说明

SIA UNAL MCP服务器

哥伦比亚国立大学学术信息系统MCP服务器。

它允许通过Claude或其他MCP客户搜索科目,查询时间表、配额、笔记和学业历史。

要求

  • Node.js 20+
  • Playwright(自动安装)

瞬间。

npm install
npx playwright install chromium
npm run build

配置

创建新文件 .env 在带有必要变量的项目根目录中:

touch .env

环境变量

变量 描述 默认
SIA_SEDE 塞德:麦德林、波哥大、马尼萨莱斯、棕榈 麦德林
SIA_USERNAME 用户A(仅适用于经过验证的工具) -
SIA_PASSWORD 签一个(仅适用于经过验证的工具) -
PLAYWRIGHT_HEADLESS 在没有窗口的情况下运行浏览器 true
RATE_LIMIT_DELAY 中心请求延迟(毫秒) 2000
CACHE_TTL 缓存寿命(毫秒) 300000

与克劳德桌面一起使用

添加到克劳德桌面配置文件(claude_desktop_config.json):

{
  "mcpServers": {
    "sia-unal": {
      "command": "node",
      "args": ["/user/mcps/sia-unal/dist/index.js"],
      "env": {
        "SIA_SEDE": "medellin"
      }
    }
  }
}

可用工具

观众(未经认证)

工具 描述
list-faculties 列出可用于学术水平的学院
list-programs 列出学院的课程
search-courses 按学院和计划在目录中搜索主题
get-course-groups 获得一门学科的小组、时间表、教师和沙龙
check-seat-availability 按组实时查询可用配额
get-course-details 科目的完整细节(描述,前提)

已验证(需要凭据)

工具 描述
authenticate 使用机构凭据登录
get-grades 按期间或全部列出的笔记
get-current-schedule 当前注册时间
get-academic-history 完整的学术记录+教皇
get-enrollment-status 注册和学分表

使用示例

没有身份验证

# Listar facultades de pregrado en Medellin
list-faculties(level="Pregrado", sede="MEDELLÍN")

# Listar programas de una facultad
list-programs(level="Pregrado", faculty="Facultad de Minas", sede="MEDELLÍN")

# Buscar asignaturas de un programa
search-courses(level="Pregrado", faculty="Facultad de Minas", program="Ingenieria de Sistemas e Informatica")

# Consultar cupos de una asignatura
check-seat-availability(courseCode="3007747")

你也可以直接问克劳德:

  • “麦德林的系统工程有哪些科目?”
  • “3007747科目还有多少名额?”
  • “给我看看算法时间表”

通过身份验证

# Iniciar sesion
authenticate(username="tuusuario", password="tucontrasena")

# Ver notas del semestre actual
get-grades()

# Ver historial academico completo con PAPA
get-academic-history()

你也可以问克劳德:

  • “与我的用户X登录并向我展示我的学期成绩”
  • “我的爸爸积累了什么?”

建筑

  • JSON-RPC:用于快速搜索的未记录的SIA端点(无身份验证)
  • 剧作家+ADF:通过PlayWright Headless导航公共目录,该目录通过部分页面呈现(PPR)处理Oracle ADF下拉列表的级联。使用 list-faculties, list-programs, search-courses y get-course-details.
  • 剧作家+OAM:通过Oracle Access Manager对需要会话的工具进行企业身份验证。

安全

  • 凭据从未存储在磁盘上
  • 会话在20分钟后自动过期
  • 建议将环境变量用于凭据
  • 速率限制器防止SIA服务器过载