Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
CAMPUS_EDU_COOKIENoCookie value; only used with `import-session --from-env`.
CAMPUS_EDU_BASE_URLNoThe base URL of the school's academic affairs (教务) system.
CAMPUS_EDU_DATA_DIRNoDirectory used to store data (encrypted session files, etc.).
CAMPUS_EDU_HTTP_TOKENNoA random string of at least 32 characters used as the Bearer token for the experimental Streamable HTTP transport.
CAMPUS_EDU_COOKIE_FILENoPath to a cookie file used when the system keyring is unavailable (set in the MCP client's env).
CAMPUS_EDU_MIN_INTERVALNoMinimum interval (in seconds) between requests; defaults to at most 1 request every 2 seconds.
CAMPUS_EDU_ALLOW_UNVERIFIEDNoSet to 1 to enable the unverified zfsoft_v9 vendor (default disabled).

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_timetableA

查询本人课表。

year 为学年起始年(如 2025 表示 2025-2026 学年),term 为 1/2/3;不填则取当前学期。

get_examsA

查询本人考试安排(时间、地点、座位号)。参数同 get_timetable。

get_gradesA

查询本人成绩。

    默认返回课程、学分、课程性质、是否通过;include_scores=true 时才返回分数和绩点。
    year 与 term 都不填则返回全部学期(结果中 term 为 null)。返回的数据会进入模型上下文。
    
get_termsA

列出教务系统可选的学期(current=true 为系统默认学期)。已在一所强智校只读实测。

get_empty_classroomsA

查询某教学周某天的空闲教室(只读,不会提交借用申请)。

    week 为教学周(1-30),weekday 为 1=周一 … 7=周日;periods 为必须全部空闲的节次编码
    (如 ["0102","0304"],可选值见返回的 periods);campus 为校区编号;
    year/term 不填则用教务系统默认学期。
    
session_statusA

检查教务会话是否已导入、是否仍然有效。不会返回任何 Cookie 内容。

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.9/5.0

Scored across 6 tools

Disambiguation5/5

Each tool targets a distinct resource (timetable, exams, grades, terms, session, empty classrooms) with no functional overlap. An agent can unambiguously pick the right tool for any academic query.

Naming Consistency4/5

Five tools follow a consistent snake_case 'get_noun' pattern (get_timetable, get_exams, get_grades, get_terms, get_empty_classrooms). session_status breaks the verb pattern but remains readable and snake_case, a minor deviation.

Tool Count5/5

Six tools is well-scoped for a read-only campus query server, with each tool earning its place covering a distinct informational need.

Completeness4/5

The read-only surface covers the core academic queries (schedule, exams, grades, terms, session, classrooms) well. Gaps are mostly write/action operations (e.g. course selection, applications) that are arguably out of scope for a read-only design.

Maintenance

ActivityMaintained
ResponsivenessNo issues