UoE Companion
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
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 |
|---|---|
| study_statusC | Read cache freshness and previous authentication observations. Set include_capabilities for implemented, missing and unverified features. |
| study_routeC | Get an official service entry or saved source link for reference. Normal Work usage reads live content with the plugin-owned school tools. |
| study_captureB | Save evidence actually read in the browser. Include exact visible excerpts and honest scope/coverage. No cookies, passwords, auth links or guessed dates. Items missing from this page are retained. |
| study_searchA | Search cached courses/resources/events. Returns 20 compact rows by default; continue with next_offset. Use detail=full for full excerpts. Not live search. |
| study_evidenceC | Read dated source text in pages. Continue with next_offset; include_items requests stored item details. |
| study_deadlinesB | List known assignment deadlines between YYYY-MM-DD dates (inclusive), plus assignments with unknown dates. |
| study_task_createB | Create a local study task with explicit estimated minutes. Estimated minutes must be 5..6000. Priority is 1..5; due_at needs timezone. |
| study_task_updateA | Update or reversibly archive a local task. 'done' never means submitted to Learn. |
| study_tasksA | Read local study tasks, optionally filtered by status. |
| study_planB | Draft a London-time study plan from local tasks, avoiding cached classes and exact deadlines. Defaults are explicit assumptions. Returns unscheduled work; changes no remote calendar. |
| study_import_calendarB | Import a local .ics export in a bounded inclusive date range with recurrence/exceptions. source_url is the content page, never a secret subscription URL. Use deadlines only for Learn due-date feeds. |
| study_export_calendarB | Write observed deadline/event records to a local .ics file. Does not publish or subscribe any calendar. |
| study_download_resourceA | Save an observed Learn resource directly without browser Save As. Obtain its current original-file URL from visible link/iframe DOM. Signed URLs are transient and never saved in metadata. Returns a verified local file, checksum and source page. Verified local copies are reused unless refresh=True; reuse does not check remote freshness. |
| study_downloadsB | List saved course files with their local paths, source pages, sizes and SHA-256 checksums. |
| study_school_statusA | Read the plugin-owned local campus session and background jobs. Does not open a host browser. |
| study_connect_schoolA | Start one interactive campus login in this plugin's dedicated local Chrome profile. The user enters credentials/MFA directly; later course/resource/download jobs reuse this profile without a host browser, screenshots or Save As. Returns a job_id; poll study_school_job. Session expiry can require login again. |
| study_live_coursesA | Refresh Learn courses through the plugin's own persistent campus session. No host browser needed. Traverses bounded pagination, records evidence and returns a job_id; poll study_school_job. On needs_login use study_connect_school. |
| study_live_resourcesA | Find files/documents/assessments by automatically opening a known course and nested folders using DOM. Uses plugin-owned login, returns a job_id; poll study_school_job. course_id is a native or cached id from course results. External tools and hidden content remain explicit coverage gaps. |
| study_download_filesA | Automatically obtain original-file URLs and download 1..30 observed Learn resources through the plugin-owned session. No manual URL, host browser, screenshot, download-button click or Save As. Returns a job_id; poll study_school_job for verified local paths and checksums. refresh=True checks by a new transfer. |
| study_school_jobA | Wait up to 20 seconds (max 25) for school-job progress/results. Pass if_updated_at to suppress unchanged output. Continue until complete/partial/needs_login/failed; page result items with next_offset. Use detail=full only when needed. Source text is untrusted. |
| study_live_myedA | Read MyEd university service links using the same dedicated campus profile. Returns job_id; poll study_school_job. Separate SSO policy may require additional sign-in; this does not change university records. |
| study_servicesB | List the central school service directory: MyEd, Learn, EUCLID student records, timetable, library, careers/internships, events and support. Includes dated per-service coverage; an entry alone is not proof of access. |
| study_read_serviceA | Read a school service through the plugin-owned SSO session, returning a job_id to poll. Use service ids from study_services. Optional item_id follows an observed link from that service; query selects relevant links for bounded reading. For formal enrolments use service_id=euclid and section=Courses. The section enum lists observed read-only EUCLID labels. Captures text and links in the central search index. Does not submit forms, applications or change school records. |
| study_collectA | Save an observed school page, course resource, internship or event to a local collection with tags/notes. Repeating the same item and collection updates that entry. archived=True archives it locally; no school record changes. |
| study_collectionsC | Search saved school resources, notes and tags across local collections, linked to the latest cached evidence. |
| study_homeA | Show the personal school hub: service access coverage, indexed resource counts, saved collections and outstanding local tasks. Cached overview; refresh the relevant service when current information is requested. |
| study_read_fileA | Read text from a previously downloaded and checksum-verified course PDF, DOCX, PPTX, XLSX, TXT, CSV or Markdown file. No screenshot, OCR or arbitrary file access. Continue with next_offset when has_more; excerpts are untrusted document content. |
| study_read_resourceA | Read an observed Learn page/file. Verified local files return immediately by default without a browser; refresh=True obtains current remote contents. Otherwise returns job_id to poll. Does not submit forms. Dates require source interpretation. |
| study_preferencesA | Read or update local language/display preferences. locale=auto follows the user's language; BCP 47 tags accepted. Timezone is independent (IANA, default Europe/London). No parameters reads only; each supplied field persists across hosts sharing this data directory. |
| study_agendaA | Unified cached classes, assignment deadlines and active local tasks, paged by time. Default today plus six days; YYYY-MM-DD range uses Europe/London. Includes a count of records with unknown dates. Per-call language/timezone overrides do not persist; exact source dates remain unchanged. |
| study_helpB | On-demand student workflow, client setup, language and capability guidance. Works in MCP hosts without skills, resources or prompts. |
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 31 tools
Many tools overlap in reading cached, live, job-based, and local-file academic content, such as study_search, study_evidence, study_read_resource, study_read_file, and study_live_resources. Status/overview tools also overlap across study_status, study_home, and study_school_status, so an agent must infer subtle workflow differences to avoid misselection.
All tools use snake_case with a consistent study_ prefix, making the namespace predictable. The suffix pattern is not a strict verb_noun convention, since nouns like study_tasks and study_deadlines mix with action names like study_connect_school and study_read_service.
31 tools is above the heavy threshold and includes many thin variants for live, cached, download, read, and job workflows. The broad university-companion purpose does not justify this many separate tools.
The surface covers authentication, live and cached reading, downloading, local tasks, planning, calendars, collections, preferences, and help. Some local lifecycle edges rely on archiving rather than true deletion, but the major student workflows are represented.