Student Management MCP Prototype
Прототип MCP для управления студентами
Цель
Для сценария «Профиль роста студента и замкнутый цикл активной помощи» предоставляется набор MCP-инструментов, интегрированных с платформой интеллектуальных агентов, позволяющих агенту запрашивать профили студентов, отбирать списки для внимания, создавать и отслеживать задачи помощи, записывать данные о помощи, формировать панель класса и интегрироваться с группами DingTalk.
Related MCP server: MCP-Server-CollageAI
Ключевые особенности
Переход от «управления студентами в формате вопрос-ответ» к «активному выявлению на основе данных».
Объединение посещаемости, успеваемости, отзывов из общежитий, практических занятий, статуса финансовой поддержки и записей бесед в единый профиль роста студента.
Поддержка формирования списка «требуют внимания сегодня», что отражает переход от пассивного реагирования к активному предупреждению.
Поддержка записи данных о помощи, формирующая замкнутый цикл «выявление проблемы — предложение решения — реализация и отслеживание — запись результатов».
Возможность генерации данных панели класса, подходящих для демонстрации на конкурсе.
Список инструментов
Инструмент | Назначение |
| Запрос профиля роста студента по номеру или имени |
| Отбор списка студентов со средним/высоким уровнем внимания |
| Запись беседы или данных о помощи |
| Создание задачи помощи на основе профиля, возможность отправки в группу кураторов по явному запросу |
| Обновление статуса и прогресса задачи, синхронизация с записями помощи |
| Запрос задач: в работе, просроченных и завершённых |
| Запрос журнала аудита создания задач и изменения статусов |
| Проверка только на чтение: хранилище, данные задач и конфигурация DingTalk |
| Генерация данных панели состояния класса |
| Отображение статуса загрузки файлов Word/Excel/PDF и статистики записей |
| Запрос временной шкалы: посещаемость, практика, рекомендации, беседы, задачи и предупреждения |
| Запрос динамических журналов класса и обзора управления |
| Запрос напоминаний о повторных визитах, приближающихся к сроку или просроченных |
| Генерация анонимного еженедельного отчёта класса и отправка в рабочую группу преподавателей |
| Проверка конфликтов расписания или бронирования для указанной аудитории в заданный период |
| Фильтрация доступных аудиторий по дате, времени, вместимости и оборудованию |
| Запрос расписания практических занятий и информации о помещениях |
| Запрос неисправного оборудования, заявок на ремонт и ожидаемого статуса обработки |
Локальный запуск
cd D:\教育信息技术应用大赛\学生管理MCP原型
python -m uvicorn student_management_mcp_api:app --host 127.0.0.1 --port 8765Для публичного развёртывания и платформы интеллектуальных агентов используется student_management_mcp_sse:app; для локальной проверки можно запустить:
python -m uvicorn student_management_mcp_sse:app --host 127.0.0.1 --port 8000Постоянное хранение данных
При настройке
DATABASE_URLиспользуется PostgreSQL; исходные данные, задачи, записи помощи и журналы аудита сохраняются между развёртываниями на Render.Если не настроено, автоматически используется локальная SQLite база
.data/student_management.db, подходящая для разработки и тестирования, но при повторном развёртывании на Render данные могут быть потеряны.При первом включении базы данных автоматически переносятся базовые данные из
followup_records.jsonиsupport_tasks.json.При первом развёртывании также считываются 5 файлов Excel, 1 Word и 1 PDF из
演示业务源文件; данные о списках для конкурса, посещаемости и успеваемости, практике, рекомендациях, беседах, задачах и расписании аудиторий нормализуются и записываются в базу; в дальнейшем новые беседы и задачи, добавленные через MCP, продолжают накапливаться.Проверка здоровья
/healthвозвращает тип хранилища и количество записей, но не возвращает адрес базы данных или секреты DingTalk.
Пример переменной подключения PostgreSQL:
DATABASE_URL=postgresql://用户名:密码@主机:5432/数据库名Поддержка демонстрационных данных
Все файлы в 演示业务源文件 — это имитационные данные для конкурса и не соответствуют реальным лицам. Рекомендуемая основная линия для записи экрана:
工作人员维护 Excel / Word / PDF 台账
-> 服务自动解析并入库 PostgreSQL
-> 班级态势与学生成长时间线
-> 生成帮扶任务并回写谈话记录
-> 按期复访提醒与任务审计
-> 按日期、时段、容量和设备条件查询可用实训室Сначала можно вызвать get_data_ingestion_status для отображения файлов, количества загруженных данных и цепочки данных, а затем вызывать контролируемые запросы по ролям:
get_authorized_student_growth_timeline: студент — только свои данные, классный руководитель и куратор — только для авторизованных классов.get_authorized_class_operational_records: классный руководитель и куратор видят динамику авторизованных классов, административный персонал — только анонимную агрегацию.list_authorized_followup_reminders: классный руководитель и куратор видят задачи повторных визитов в пределах своих полномочий.
Восстановление базовых данных:
python demo_data_maintenance.py --mode baseline --confirm RESET-DEMO-DATAГенерация двух фиксированных демонстрационных задач:
python demo_data_maintenance.py --mode sample --confirm RESET-DEMO-DATAЭтот скрипт очищает текущие задачи и журнал аудита, поэтому его разрешено использовать только обслуживающему персоналу на этапе подготовки к записи экрана; он не является MCP-инструментом и не отправляет сообщения в DingTalk.
Примеры вызовов
Запрос профиля студента:
{
"tool": "get_student_profile",
"arguments": {
"query": "S004"
}
}Запрос списка требующих внимания:
{
"tool": "list_attention_students",
"arguments": {}
}Запись данных о помощи:
{
"tool": "create_followup_record",
"arguments": {
"student_id": "S002",
"owner": "辅导员",
"summary": "已完成首次谈心,学生反馈近期课程压力较大,实训日志补交意识不足。",
"next_action": "联系实训指导教师确认补交要求,三天后复访。",
"status": "跟进中"
}
}Генерация панели класса:
{
"tool": "get_class_dashboard",
"arguments": {
"class_name": "智能制造2401"
}
}Создание задачи помощи (по умолчанию без отправки):
{
"tool": "create_student_support_task",
"arguments": {
"student_query": "S004",
"owner": "辅导员",
"due_date": "2026-07-18",
"push_to_dingtalk": false
}
}Завершение задачи и синхронизация записи помощи:
{
"tool": "update_student_support_task",
"arguments": {
"task_id": "任务编号",
"status": "已完成",
"progress_note": "已完成线下谈心。",
"next_action": "联系任课教师并于一周后复访。",
"sync_followup": true
}
}Рекомендации по интеграции с платформой
Платформа поддерживает два способа подключения:
Создание MCP-сервиса вручную
Имя сервиса
Описание
Тип подключения:
sseАдрес интерфейса
Настройка заголовков
Нажмите «Проверить подключение»
Импорт из JSON
Формат:
mcpServersПример:
mcp_servers.example.json
Текущий SSE MCP-сервис развёрнут на Render; платформа обнаруживает и вызывает инструменты через адрес /sse. Локальный адрес 127.0.0.1 используется только для разработки и проверки и не может быть публичным адресом для платформы.
This server cannot be deployed
Maintenance
Related MCP Connectors
AP rubric grading, assignment drafts, question-bank materials, and class insights for teachers.
Read-only MCP server for ClassQuill, a tutoring-business-management platform.
Makuri (EU AI tutoring for immigrant children): 11 tools, 2 interactive panels, no user data.
Search university course materials, your flashcards, quizzes, streak and quota. All tools read-only.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to manage student profiles, track assessments, calculate topic mastery, identify learning gaps, and recommend focus areas. Integrates with Claude Desktop and Claude Code for interactive learning analytics.1MIT
- FlicenseNot gradedqualityCmaintenanceProvides tools for querying student academic data such as subjects, marks, performance reports, timetable, exams, fees, events, holidays, and assignments via natural language.-
- FlicenseNot gradedqualityCmaintenanceProvides MCP tools for searching student profiles, viewing marks/attendance, and finding low-attendance students. Enables AI assistants like Gemini to interact with college student data through natural language.-
- FlicenseNot gradedqualityCmaintenanceEnables AI assistants to query a simulated school database for student marks, top rankers, class statistics, enrollment records, awards policy, and school rules via MCP tools, resources, and prompts.-