Skip to content

STU MCP v0.7.0 · 统一账号与简洁设置页

Pre-release
Pre-release

Choose a tag to compare

@0error0warning 0error0warning released this 23 Oct 11:41
· 36 commits to main since this release
c8db73e

v0.7.0 · 学生预览版

本版让首次配置更直接:学校账号一次输入,设置页可在自己的浏览器里完成登录,并展示配置后能用哪些功能。CLI 保持完整,47 项 MCP 工具接口保持兼容。继续以 GitHub prerelease 发布。

主要变化

  • 学校账号统一配置。 新增 stu-mcp login school,为教务、MySTU 和宿舍报修分别认证、保存独立加密会话。学校密码只用于本次认证,不持久保存;原有单业务命令和参数继续可用。
  • 可选的网页设置。 运行 stu-mcp setup,或让 agent 调用 open_setup,在本机打开自己的浏览器。学校账号、雨课堂二维码、对分易原微信回调和 WebVPN 共用已有 HTTP 核心,无需服务端浏览器或虚拟桌面。凭据和授权内容不经过 agent。
  • 简化配置界面。 学校账号直接连接全部已接入业务,显示汇总状态与对应功能;只列未完成项目的原因。移除业务勾选、技术许可框、重复管理面板和旧网页调度路径。
  • WebVPN 令牌放在主表单。 已有的账号、密码和令牌密钥配置能力可直接使用,安全保存后由程序生成动态码并登录;也支持手动输入当前动态码。停用或暂停的自动配置不会被静默复用。
  • 功能与入口对应。 设置页、CLI 状态和 MCP 能力展示复用同一目录,区分已接入功能、入口导航及未接入服务。校园入口调查、OA 读取条件与各业务范围集中整理;目录收录不等于业务已接入或当前可达。
  • 错误恢复与并发修复。 配置中断后只读核对结果,不重复提交凭据;退出或换账号时阻止旧认证覆盖新状态。修复 Windows 锁文件初始化竞态及拒绝过大请求时丢失错误响应的问题。

学校账号的统一配置不共享业务 Cookie;某项失败保留其他已完成的结果。“已配置”表示本地配置状态,不承诺学校此刻在线可读。私密设置页仅在 MCP 宿主回环地址提供;无桌面服务器仍可完整使用 CLI。详见认证说明、校园服务目录和服务器说明。

安装与升级

首次安装:

uv tool install --python 3.12 https://github.com/0error0warning/stu-mcp/releases/download/v0.7.0/stu_mcp-0.7.0-py3-none-any.whl
stu-mcp connect codex --apply
stu-mcp setup

将 codex 换成自己的客户端。已有受支持的 uv tool 安装可执行:

stu-mcp update

升级后,本机 stdio 重新加载 MCP;私有 HTTP 需重启宿主 MCP 服务,仅重连客户端不会替换旧进程。已打开的设置页需关闭并重新打开。对分易后台在运行时会阻止更新,需要加载新版时先暂停、退出后台,再更新并按需恢复。数据、配置和独立会话保留;过期会话按需重新登录。源码、容器或旧版手动升级按安装说明处理。

本版不新增 MCP 工具,原有 47 项工具的名称、参数、输入/输出 schema、注解和描述均保持兼容。状态结果增加功能目录与本地配置状态。v0.6.2 的标签和发行附件保持原样。

验证范围

本次功能改动的 Windows 本机完整套件 2246 项通过、4 项跳过;跳过项均因当前主机没有创建符号链接的权限。Ruff、差异空白检查和两个随包 Skill 的格式检查通过。

隔离安装检查覆盖无 Playwright/TTY 的私密 HTTP 配置、独立加密会话、47 项完整工具契约、八种 stdio 客户端配置、三种 Skill 命令、课表资源及对分易后台生命周期。设置页宽窄屏与错误恢复使用合成账号、临时存储和回环服务验证。功能改动的详细过程及已修复的失败见设置页验收;v0.7.0 构建、升级检查与发行 CI 结果分别记录在发行复核。

本轮没有新增真实学校登录、扫码、报修或签到提交验收。此前各来源 HTTP 认证与有界读取的真人证据保留原日期和范围。更多账号、受保护 OA 正文与自然过期续登、真实新报修/签到提交、跨机及容器内学校业务仍不能由本轮合成测试推断为已验证。

发行文件

stu_mcp-0.7.0-py3-none-any.whl、stu_mcp-0.7.0.tar.gz 和 SHA256SUMS.txt。校验文件用于核对发行附件的 SHA-256,不包含凭据。发行包不包含真实学校会话或个人页面。

发布核对

  • PR #12 已合并到 main,标签对应 c8db73ea5f4b6c54ae207b58cc41bd496a09df68,与受检分支代码树一致。
  • PR Checks 与 分支 Checks 全部通过:Linux Python 3.11/3.13、Windows/macOS Python 3.12 和默认 Docker 镜像。四组平台均执行测试、构建、实际隔离安装和离线升级检查。
  • v0.7.0 wheel 已在本机通过独立安装验收,最终附件与受检 wheel 逐字节一致;源码包的当前文档与版本文件均已核对。
  • 发布后从 GitHub 下载的三个附件与本地发行文件完全一致,校验清单逐项通过。
  • 公开升级复核通过:临时 uv tool 安装的 v0.6.2 通过官方 Atom 发行订阅发现 v0.7.0,实际执行 stu-mcp update 下载、校验并升级成功;新进程的主命令与 stu 别名均为 0.7.0,后续检查为最新版,合成数据保留。未修改用户真实安装。Atom 路径的预览标记仍报告未知,不将其误称稳定版。