uplus-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| UPLUS_CONFIG | No | Path 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
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| 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.
|
| 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 |
| uplus_answer_homeworkA | Fill objective questions using the provided answers and optionally submit.
|
| 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.
|
| uplus_closeB | Close the browser session held by this server process. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 9 tools
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.
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.
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.
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.