Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
UPLUS_CONFIGNoPath to the personal course configuration file (gitignored) containing fields such as base_url, headless, nav_timeout_ms, action_timeout_ms, deadline_warning_hours, storage_state_path, report_dir and the courses list.config/courses.json

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
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
uplus_check_loginA

Check whether the persisted U+ login session is still valid.

uplus_list_coursesA

List the courses attached to the signed-in account.

uplus_list_homeworksA

List homeworks for one course, or every configured course when omitted.

refresh_page_state=True opens each answer page to read the real button label; use it when API status looks ambiguous.

uplus_list_experimentsA

List experiments and their submission state for one course.

uplus_inspect_homeworkB

Open a homework and return its status plus a structured question brief.

The MCP client model uses the brief to produce the answers map passed to uplus_answer_homework.

uplus_answer_homeworkA

Fill objective questions using the provided answers and optionally submit.

answers maps question_id (or question order number as string) to the normalized answer: single letter, letter combination, true/false, or blank text. Submission is blocked when questions remain unanswered or errored; pass force_submit=True only after reviewing the outcome deliberately.

uplus_upload_attachmentB

Attach a local file (PPT/PDF/ZIP/etc.) to a homework that requires upload.

uplus_patrolA

Run a full patrol over configured courses and save a Markdown report.

  • Lists every homework and experiment; distinguishes submitted / pending / outstanding / takeover items.

  • Outstanding objective questions are collected into an answer brief for the MCP client model. With auto_answer=True built-in rules are tried first (none are bundled by default); unanswerable items stay in the takeover list.

  • submit=True only submits homework that received valid answers; file and subjective items are never auto-submitted.

uplus_closeB

Close the browser session held by this server process.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.6/5.0

Scored across 9 tools

Disambiguation4/5

Most tools have a clear resource+action target: login check, course listing, homework listing, inspection, answering, and attachment upload. The main overlap is between `uplus_patrol` and `uplus_list_homeworks` with the course omitted, since patrol is effectively a superset sweep; `list_homeworks` and `list_experiments` also sit close together. Descriptions largely disambiguate these, but an agent could reasonably pick the wrong entry point.

Naming Consistency4/5

All names share the `uplus_` prefix and snake_case, with a consistent verb_noun shape for the core operations (list_courses, inspect_homework, answer_homework, upload_attachment). The two exceptions are `uplus_patrol` and `uplus_close`, which are bare verbs with no noun, a minor deviation from the otherwise predictable pattern.

Tool Count5/5

Nine tools is well within the ideal 3-15 range and each maps to a distinct stage of the workflow: authenticate, browse courses, survey work, inspect a task, answer, upload, bulk sweep, and tear down. Nothing appears redundant enough to be dead weight.

Completeness3/5

The homework lifecycle is well covered (list, inspect, answer, submit, attach, bulk patrol), but experiments are only listed with no tool to inspect or complete them, creating a dead end. There is also no explicit login/re-auth tool to recover from an expired persisted session, and no post-submission verification or report retrieval operation.

Maintenance

ActivityMaintained
ResponsivenessNo issues