Skip to main content

ynufe-campus-mcp

云南财经大学教务系统 MCP 服务器 — 将强智教务系统 (xjwis.ynufe.edu.cn) 的登录与数据查询封装为 Model Context Protocol 工具。

本包是 NINIYOYYO/ynufe-campus-app 仓库的独立 Python 子包:前端 App(TypeScript/Capacitor)负责移动端体验,本包为 AI Agent / CLI 提供同一套教务数据的程序化访问。

✨ 功能

工具 说明
ynufe_login 登录(自动 OCR 验证码,无需人工输入)
ynufe_profile 学籍信息(姓名/院系/专业/班级)
ynufe_grades 成绩单(GPA / 学分 / 全部明细,可按学期过滤)
ynufe_timetable 课表(按日期定位周次,支持校区过滤)
ynufe_semester 学期信息(当前周次 / 总周数 / 校区模式)
ynufe_exams 考试安排
ynufe_notices 教务通知 / 公告(标题/时间/未读状态)
ynufe_plan 培养方案(课程总表 / 学分缺口 / 未修必修)
ynufe_logout 退出登录

🔒 凭据安全

  • 绝不硬编码 学号 / 密码
  • 凭据仅通过 MCP 工具参数或环境变量传入:
export YNUFE_USER="你的学号"
export YNUFE_PASS="你的密码"
  • 所有数据只落在使用者本地,不经任何第三方服务器中转

🚀 安装

方式一:uvx(推荐,一行安装)

uvx ynufe-campus-mcp

方式二:从源码

uv sync          # 安装依赖
uv run ynufe-campus-mcp

方式三:交互式 CLI

YNUFE_USER=学号 YNUFE_PASS=密码 uv run ynufe-campus-mcp --interactive

🔌 接入 MCP 客户端

以 Claude Desktop / Hermes / Cursor 为例,在 MCP 配置中加入:

{
  "mcpServers": {
    "ynufe": {
      "command": "uvx",
      "args": ["ynufe-campus-mcp"],
      "env": {
        "YNUFE_USER": "你的学号",
        "YNUFE_PASS": "你的密码"
      }
    }
  }
}

🧪 自测(无需真实凭据)

uv run python tests/mcp_protocol_test.py

验证 MCP 协议握手与 9 个工具的 tools/list 声明,不发起真实登录。

⚠️ 免责声明

本项目为个人学习用途,仅供云财在校生自用,请遵守学校网络与信息系统使用规定。强智教务系统接口可能变更,作者不保证持续可用。

📄 License

MIT — 见 LICENSE

Metadata

Release files for ynufe-campus-mcp 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ynufe-campus-mcp 0.2.0
File Size Uploaded
ynufe_campus_mcp-0.2.0.tar.gz 48.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ynufe-campus-mcp 0.2.0
File Interpreter ABI Platform
ynufe_campus_mcp-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 71.4 kB

Release files / ynufe_campus_mcp-0.2.0.tar.gz

Download URL ynufe_campus_mcp-0.2.0.tar.gz
Size 48.6 kB
Tags Source
SHA-256 checksum
How to use checksums
9f97155985060184f7ef134292143197c22c41ebcf0faa88be4c0b8ab610fb38
BLAKE2b-256 checksum
How to use checksums
47cfeacc1852662e339d01005b18da1893ce5302a46ad44ad238a355ba8818f7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / ynufe_campus_mcp-0.2.0-py3-none-any.whl

Download URL ynufe_campus_mcp-0.2.0-py3-none-any.whl
Size 22.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ffbe3bbca7333a232afad0d5c7b40470a8f45632a8ab5cfe0f6b76b816e12ae5
BLAKE2b-256 checksum
How to use checksums
14127c2a7757cda47964ea0400791d50e3fa7a4393a9e6cd44139ad174adaa87
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page