Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
CLASSIN_SIDYes机构认证ID,从 eeo.cn 后台获取
CLASSIN_SECRETYes机构认证密钥,从 eeo.cn 后台获取

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
resources
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
classin_register_userA

注册ClassIn用户账号。为机构的用户代注册ClassIn账号。

重要: 调用此接口前,请保证所传的手机号或邮箱用户对此代注册操作知情并同意。

参数:

  • telephone: 手机号(与email二选一)。中国大陆格式: 15800000001; 国际格式: 00国家号-手机号

  • email: 邮箱(与telephone二选一)

  • nickname: 昵称/姓名,最长24字符

  • password: 明文密码6-20位(与md5pass二选一)

  • md5pass: MD5加密密码32位(与password二选一)

  • addToSchoolMember: 0=不加为机构成员, 1=加为机构学生, 2=加为机构老师

返回:

  • 成功返回用户UID(唯一标识)

  • 如果手机号/邮箱已注册,返回错误码135/461,但仍会返回已存在用户的UID

classin_modify_passwordA

修改ClassIn用户密码。

参数:

  • uid: 用户UID

  • password: 新的明文密码6-20位(与md5pass二选一)

  • md5pass: 新的MD5加密密码32位(与password二选一)

返回:

  • 成功返回操作结果

classin_add_teacherA

将已注册用户添加为机构老师。添加后可以在课程中指定为老师。

参数:

  • teacherUid: 用户UID

  • teacherName: 老师姓名(可选,不传使用用户昵称)

返回:

  • 成功返回操作结果

classin_edit_teacherA

编辑机构老师信息(姓名)。

参数:

  • teacherUid: 老师UID

  • teacherName: 新的老师姓名

返回:

  • 成功返回操作结果

classin_stop_using_teacherA

停用机构老师。停用后该老师无法被指定为课程老师。

参数:

  • teacherUid: 要停用的老师UID

返回:

  • 成功返回操作结果

classin_restart_using_teacherA

重新启用已停用的机构老师。

参数:

  • teacherUid: 要启用的老师UID

返回:

  • 成功返回操作结果

classin_add_school_studentA

将已注册用户添加为机构学生。

参数:

  • studentUid: 用户UID

  • studentName: 学生姓名(可选,不传使用用户昵称)

返回:

  • 成功返回操作结果

classin_edit_school_studentA

编辑机构学生信息(姓名)。

参数:

  • studentUid: 学生UID

  • studentName: 新的学生姓名

返回:

  • 成功返回操作结果

classin_add_courseA

创建ClassIn课程。课程是管理课节的容器。

参数:

  • courseName: 课程名称(必填),1-90字符

  • folderId: 可用资源文件夹ID

  • expiryTime: 过期时间戳,不传表示永不过期

  • mainTeacherUid: 班主任UID,可在客户端管理课程

  • subjectId: 学科分类ID (0:空, 1:语文, 2:数学, 3:英语...)

  • courseIntroduce: 课程简介,最长400字符

  • classroomSettingId: 教室设置ID

  • courseUniqueIdentity: 唯一标识,防止重复创建

  • allowAddFriend: 是否允许班级成员互相添加好友 (0/1)

  • allowStudentModifyNickname: 是否允许学生修改班级昵称 (0/1)

返回:

  • 成功返回课程ID

classin_edit_courseA

编辑ClassIn课程信息。

参数:

  • courseId: 课程ID(必填)

  • 其他参数同创建课程,只传需要修改的字段

返回:

  • 成功返回操作结果

classin_end_courseB

结束ClassIn课程。结束后课程将不可用。

参数:

  • courseId: 课程ID

返回:

  • 成功返回操作结果

classin_add_course_classA

在课程下创建课节(单课)。

参数:

  • courseId: 所属课程ID(必填)

  • className: 课节名称(必填),1-90字符

  • beginTime: 开始时间戳(必填)

  • endTime: 结束时间戳(必填)

  • teacherUid: 授课老师UID(必填)

  • seatNum: 可上台学生数量,0-50,默认6

  • classUniqueIdentity: 唯一标识

返回:

  • 成功返回课节ID

classin_edit_course_classA

修改课节信息。

参数:

  • classId: 课节ID(必填)

  • className: 新的课节名称

  • beginTime: 新的开始时间戳

  • endTime: 新的结束时间戳

  • teacherUid: 新的授课老师UID

  • seatNum: 新的可上台学生数量

返回:

  • 成功返回操作结果

classin_delete_course_classB

删除课节。删除后不可恢复。

参数:

  • classId: 课节ID

返回:

  • 成功返回操作结果

classin_add_course_studentB

向课程中添加学生或旁听。

参数:

  • courseId: 课程ID

  • studentUid: 学生UID

  • identity: 身份类型,1=学生,2=旁听

返回:

  • 成功返回操作结果

classin_delete_course_studentA

从课程中移除学生或旁听。

参数:

  • courseId: 课程ID

  • studentUid: 学生UID

返回:

  • 成功返回操作结果

classin_add_course_teacherA

向课程中添加老师。

参数:

  • courseId: 课程ID

  • teacherUid: 老师UID(需要先添加为机构老师)

返回:

  • 成功返回操作结果

classin_remove_course_teacherB

从课程中移除老师。

参数:

  • courseId: 课程ID

  • teacherUid: 老师UID

返回:

  • 成功返回操作结果

classin_add_class_studentsB

向课节中批量添加学生。

参数:

  • classId: 课节ID

  • studentUids: 学生UID数组,最多500个

返回:

  • 成功返回操作结果

classin_delete_class_studentsA

从课节中批量移除学生。

参数:

  • classId: 课节ID

  • studentUids: 学生UID数组,最多500个

返回:

  • 成功返回操作结果

classin_get_folder_listA

获取机构云盘根目录下两级的文件夹列表。

返回:

  • 文件夹列表,包含文件夹ID、父级ID、名称等信息

classin_get_cloud_listA

获取指定文件夹下的文件及文件夹列表。

参数:

  • folderId: 文件夹ID

返回:

  • 文件和文件夹列表

classin_get_top_folder_idA

获取机构云盘的顶级文件夹ID。

返回:

  • 顶级文件夹ID

classin_create_folderA

在云盘中创建新文件夹。

参数:

  • parentId: 父文件夹ID

  • folderName: 文件夹名称

返回:

  • 成功返回新文件夹ID

classin_rename_folderA

重命名云盘中的文件夹。

参数:

  • folderId: 文件夹ID

  • folderName: 新的文件夹名称

返回:

  • 成功返回操作结果

classin_delete_folderA

删除云盘中的文件夹。删除后不可恢复。

参数:

  • folderId: 要删除的文件夹ID

返回:

  • 成功返回操作结果

classin_rename_fileB

重命名云盘中的文件。

参数:

  • fileId: 文件ID

  • fileName: 新的文件名称

返回:

  • 成功返回操作结果

classin_delete_fileA

删除云盘中的文件。删除后不可恢复。

参数:

  • fileId: 要删除的文件ID

返回:

  • 成功返回操作结果

classin_set_class_videoA

批量设置课节的录课、直播、回放功能。

注意: 已结束的课节不能设置录课、直播等功能。

参数:

  • classIds: 课节ID数组,最多100个

  • isRecord: 是否录课 (0=关闭, 1=开启)

  • isLive: 是否直播 (0=关闭, 1=开启)

  • isPlayback: 是否回放 (0=关闭, 1=开启)

返回:

  • 成功返回操作结果

classin_delete_class_videoB

删除单个课节的视频。删除后不可恢复。

参数:

  • classId: 课节ID

  • videoId: 视频ID

返回:

  • 成功返回操作结果

classin_update_video_lock_statusA

修改课节视频的锁定状态。锁定后视频不能被删除。

参数:

  • classId: 课节ID

  • videoId: 视频ID

  • isLock: 锁定状态 (0=解锁, 1=锁定)

返回:

  • 成功返回操作结果

classin_get_webcast_urlA

获取课程或课节的直播/回放播放器地址。

参数:

  • courseId: 课程ID

  • classId: 课节ID(可选,不传则获取课程直播地址)

返回:

  • 直播/回放播放器URL

classin_create_unitA

在课程下创建LMS学习单元。

注意: 使用 API v2,课程下不支持创建同名单元。

参数:

  • courseId: 课程ID

  • name: 单元名称(最长50字符)

  • content: 单元介绍(可选)

  • publishFlag: 发布状态 (0=草稿, 2=已发布,默认2)

返回:

  • 成功返回单元ID

classin_update_unitA

编辑LMS学习单元信息。

参数:

  • unitId: 单元ID

  • name: 新的单元名称(可选)

  • content: 新的单元介绍(可选)

  • publishFlag: 新的发布状态(可选)

返回:

  • 成功返回操作结果

classin_delete_unitA

删除LMS学习单元。删除后不可恢复。

参数:

  • unitId: 要删除的单元ID

返回:

  • 成功返回操作结果

classin_create_activity_noclassA

在LMS单元下创建非课堂活动(作业/测验/录播课/学习资料/讨论/答题卡/打卡)。

参数:

  • courseId: 课程ID

  • unitId: 所属单元ID

  • activityType: 活动类型 (2=作业, 3=测验, 4=录播课, 5=学习资料, 6=讨论, 7=答题卡, 8=打卡)

  • name: 活动名称

  • teacherUid: 活动教师UID

  • startTime: 开始时间戳(秒,可选)

  • endTime: 结束时间戳(秒,可选)

返回:

  • 成功返回活动ID

classin_create_classroom_activityA

在LMS单元下创建课堂活动。

注意: 课堂是课节的升级版本,推荐新对接的机构使用课堂而非课节。

参数:

  • courseId: 课程ID

  • unitId: 所属单元ID(可选,不传则创建在无主题单元下)

  • name: 活动名称

  • teacherUid: 授课老师UID

  • startTime: 开始时间戳(秒)

  • endTime: 结束时间戳(秒)

  • seatNum: 上台人数(含老师,默认7)

返回:

  • 成功返回活动ID

classin_update_classroom_activityA

编辑LMS课堂活动信息。

参数:

  • courseId: 课程ID

  • activityId: 活动ID

  • 其他参数可选,只传需要修改的字段

返回:

  • 成功返回操作结果

classin_release_activityA

发布LMS活动,使其对学生可见。

参数:

  • courseId: 课程ID

  • activityId/activityIds: 要发布的活动ID(可传单个或列表)

返回:

  • 成功返回操作结果

classin_delete_activityA

删除LMS活动。删除后不可恢复。

参数:

  • courseId: 课程ID

  • activityId: 要删除的活动ID

返回:

  • 成功返回操作结果

classin_move_activityB

将单元下的活动整体移动到其他单元。

参数:

  • courseId: 课程ID

  • unitId: 源单元ID

  • toUnitId: 目标单元ID

返回:

  • 成功返回操作结果

classin_add_activity_studentA

向LMS活动添加学生。

参数:

  • courseId: 课程ID

  • activityId: 活动ID

  • studentUids/studentUid: 学生UID列表(或单个UID)

返回:

  • 成功返回操作结果

classin_delete_activity_studentA

从LMS活动中移除学生。

参数:

  • courseId: 课程ID

  • activityId: 活动ID

  • studentUids/studentUid: 要移除的学生UID列表(或单个UID)

返回:

  • 成功返回操作结果

classin_add_school_labelA

创建机构标签,用于对老师或学生进行分类管理。

参数:

  • labelName: 标签名称,最长20字符

  • labelType: 标签类型 (1=老师标签, 2=学生标签)

返回:

  • 成功返回标签ID

classin_update_school_labelB

修改机构标签名称。

参数:

  • labelId: 标签ID

  • labelName: 新的标签名称

返回:

  • 成功返回操作结果

classin_delete_school_labelA

删除机构标签。删除后不可恢复。

参数:

  • labelId: 要删除的标签ID

返回:

  • 成功返回操作结果

classin_edit_school_settingsB

修改机构/学校的全局设置。

参数:

  • allowTeacherCreateCourse: 是否允许老师创建课程 (0/1)

  • allowTeacherInviteStudent: 是否允许老师邀请学生 (0/1)

返回:

  • 成功返回操作结果

classin_modify_group_nicknameA

批量修改课程班级群中所有学生和旁听生的班级昵称。

功能说明:

  • 每创建一个标准课程时,系统会自动创建一个班级群

  • 创建班级群时,系统默认使用"用户昵称"来设置群成员的名字(班级昵称)

  • 此接口会用机构后台设置的"学生姓名"来替换群里的"班级昵称"

  • 修改后,学生在IM班级群和教室上课时显示的都是学生姓名

使用场景:

  • 解决学生在ClassIn客户端修改用户昵称后,老师在群里和教室里对不上号的问题

  • 推荐在创建好课程并添加好学生/旁听生后调用此接口

参数:

  • courseId: 课程ID

返回:

  • 成功返回操作结果

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
classin-lms-activity-typescreateActivityNoClass 接口的 activityType 取值
classin-lms-endpoints常用 LMS v2 活动相关接口路径与必填字段

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/yuanlang12/classin-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server