Token导航 LogoToken导航TokenDH.com
student support MCP server logo
AI代理stdio官方级别未说明来源级核验

student support MCP server

MCP Server

一个开源的MCP服务器,为AI助手提供安全访问大学学生门户数据的能力,实现24/7智能学生支持,减轻行政负担。

工具数

1

提示词数

0

GitHub Stars

0

资源数

0
PythonClaude教育技术Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

ChoiVadim

提供方

ChoiVadim

最后核验

2026/5/17 20:19

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install uv

详细介绍

KW 网页抓取工具 - 大学学生门户 MCP 服务器

![Python](https://python.org) ![MCP](https://modelcontextprotocol.io) ](https://docker.com) ![License](LICENSE)

革新学生支持体系一个智能的MCP(模型上下文协议)服务器,为AI助手提供安全访问大学学生门户的权限,用智能、响应迅速的聊天机器人取代传统办公人员。

🎯 愿景与使命

问题学生在访问大学办公室时常常会遇到:

  • 工作人员态度粗鲁或不提供帮助
  • 对他们的问题回答不完整
  • 长时间的等待和官僚作风导致的延误
  • 无法提供全天候服务

我们的解决方案一个开源的MCP服务器,使AI助手能够安全地访问学生门户数据,提供:

  • 全天候24/7智能学生支持
  • 全面的学术信息获取
  • 一致且有帮助的回应
  • 减轻行政负担

🚀 功能特点

核心功能

  • 📊 学术数据提取完整的成绩单解析
  • 📈 成绩点(GPA)与学分分析详细的学业进度跟踪
  • 📋 课程历史按学期划分的课程明细
  • 🎓 毕业要求自动学位进度监控

技术特点

  • 🤖 MCP(微控制器协议/多点控制单元等,具体含义根据上下文确定)集成无缝AI助手连接
  • 🐳 Docker 支持易于部署和扩展
  • 📝 结构化数据为AI消费生成的干净JSON输出

📋 先决条件

  • Python 3.12及以上版本
  • Chrome/Chromium 浏览器
  • ChromeDriver(通过Docker自动安装)
  • 大学KLAS门户网站访问凭据

🛠️ 安装

选项1:Docker(推荐)

# Clone the repository
git clone https://github.com/yourusername/kw-scraper.git
cd kw-scraper

# Build and run with Docker Compose
docker-compose up -d

# Check service status
docker-compose ps

选项2:本地安装

# Clone the repository
git clone https://github.com/yourusername/kw-scraper.git
cd kw-scraper

# Install dependencies using uv
pip install uv
uv sync

# Install ChromeDriver (macOS)
brew install chromedriver

# Install ChromeDriver (Ubuntu/Debian)
sudo apt-get install chromium-chromedriver

⚙️ 配置

环境变量

创建一个 .env 项目根目录下的文件:

STUDENT_ID=your_student_id
STUDENT_PASSWORD=your_password

服务配置

对于 systemd 服务(Linux):

# Copy service file
sudo cp kw-scraper.service /etc/systemd/system/

# Enable and start service
sudo systemctl enable kw-scraper
sudo systemctl start kw-scraper

# Check status
sudo systemctl status kw-scraper

🚀 使用方法

MCP服务器模式

1. HTTP服务器模式

python server_http.py
# Server runs on http://localhost:8000/mcp

2. 标准I/O模式(用于AI助手)

python server.py
# Communicates via stdin/stdout

API 端点

获取学生信息

POST /mcp/tools/login_and_get_student_info
Content-Type: application/json

{
  "username": "student_id",
  "password": "password"
}

响应示例:

{
  "student_info": {
    "name": "최바딤",
    "student_id": "2022203502",
    "department": "소프트웨어학부 인공지능전공",
    "academic_status": "4학년 재학",
    "advisor": "이윤구",
    "advisor_email": "yglee96@kw.ac.kr"
  },
  "academic_summary": {
    "total_semesters": 7,
    "total_courses": 45,
    "credit_summary": {
      "applied_credits": {
        "major": 54,
        "general_education": 49,
        "total": 106
      },
      "earned_credits": {
        "major": 54,
        "general_education": 49,
        "total": 106
      }
    },
    "gpa_statistics": {
      "calculated_gpa": 4.17,
      "total_graded_courses": 35
    }
  },
  "courses_by_semester": {
    "2025_fall_semester": [
      {
        "course_code": "SWE4001",
        "course_name": "소프트웨어공학",
        "course_type": "major_required",
        "credits": 3,
        "grade": "A_plus"
      }
    ]
  }
}

🏗️ 建筑学

┌─────────────────┐    ┌─────────────────┐    ┌─────────────────┐
│   AI Assistant  │◄──►│   MCP Server    │◄──►│  KLAS Portal    │
│   (Claude/GPT)  │    │  (FastMCP)      │    │  (Selenium)     │
└─────────────────┘    └─────────────────┘    └─────────────────┘
                              │
                              ▼
                       ┌─────────────────┐
                       │  Data Parser    │
                       │ (StudentInfo)   │
                       └─────────────────┘

组件

  • KLASScraper.py网页自动化与登录处理
  • StudentInfoParser.py学术数据解析与结构化
  • server.py用于AI集成的Stdio MCP服务器
  • server_http.py用于Web API的HTTP MCP服务器
  • Dockerfile容器化部署配置

🔧 开发

项目结构

kw-scraper/
├── src/
│   ├── KLASScraper.py      # Web scraping logic
│   ├── StudentInfoParser.py # Data parsing
│   └── __init__.py
├── data/
│   ├── student_info.json   # Sample output
│   └── sungjuk_info_2025.pdf
├── server.py               # Stdio MCP server
├── server_http.py          # HTTP MCP server
├── Dockerfile              # Container config
├── docker-compose.yml      # Orchestration
├── kw-scraper.service      # Systemd service
└── pyproject.toml          # Dependencies

运行测试

# Run the scraper locally
uv run python3 src/KLASScraper.py

# Test MCP server
uv run python3 server.py

新增大学

  1. 创建特定于大学的抓取工具
   # src/UniversityScraper.py
   class UniversityScraper:
       def login(self, username, password):
           # University-specific login logic
           pass

       def get_student_data(self):
           # University-specific data extraction
           pass
  1. 更新MCP服务器:
   # Add new tool to server.py
   @mcp.tool(name="university_student_info")
   def get_university_student_info(university: str, username: str, password: str):
       # Route to appropriate scraper
       pass

🤝 贡献(或“参与贡献”)

我们欢迎投稿!以下是您可以提供帮助的方式:

对于开发者

  1. 为仓库创建分支(或:克隆仓库)
  2. 创建一个特性分支git checkout -b feature/university-support
  3. 添加你的大学为您的机构实现数据抓取器
  4. 彻底测试确保数据准确性和错误处理
  5. 提交拉取请求包括测试和文档

对于大学

  • 联系我们 讨论整合
  • 提供测试凭据 用于发展
  • 分享反馈 关于数据准确性和特性

📊 支持的大学

大学名称状态门户备注
康沃大学✅ 活跃KLAS全面支持
\[你的大学\]🚧 计划中\[门户\]即将推出

🐞 故障排除

常见问题

Chrome/ChromeDriver 问题

# Update ChromeDriver
pip install --upgrade selenium
# Or use Docker for consistent environment

登录失败

  • 验证凭据是否正确
  • 检查大学门户网站是否可访问
  • 确保ChromeDriver版本与Chrome版本相匹配

MCP连接问题

# Test MCP server
curl -X POST http://localhost:8000/mcp/tools/login_and_get_student_info \
  -H "Content-Type: application/json" \
  -d '{"username":"test","password":"test"}'

📈 路线图

第一阶段:核心功能 ✅

  • \[X\] KLAS门户集成
  • \[X\] 学生数据提取
  • \[X\] MCP服务器实现
  • \[X\] Docker 部署

第二阶段:扩展🚧

  • \[ \] 多校支持
  • \[ \] 实时通知
  • \[ \] 高级分析
  • \[ \] 移动应用集成

📄 许可证

这个项目采用MIT许可证授权——详见 许可证 文件中有详细信息。

______________________________________________________________________

为全球学生倾心打造

*通过智能自动化转变大学支持方式*

目录标签

目录标签

PythonClaude教育技术学术数据提取本地部署AI助手集成自动化学生支持大学门户访问

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

session

工具数量(toolCount,工具数)

1

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiosession部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP