nyu-brightspace-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| NYU_NETID | No | Optional: your NYU NetID to auto-fill during login. | |
| NYU_PASSWORD | No | Optional: your NYU password to auto-fill during login. | |
| NYU_BRIGHTSPACE_TZ | No | The timezone to use for the server. | America/New_York |
| NYU_BRIGHTSPACE_URL | No | The base URL for the NYU Brightspace instance. | https://brightspace.nyu.edu |
| NYU_BRIGHTSPACE_HOME | No | The directory where session data and configuration is stored. | ~/.nyu-brightspace-mcp |
| NYU_BRIGHTSPACE_DOWNLOADS | No | The directory where downloaded files are saved. | ~/Downloads/brightspace |
| NYU_BRIGHTSPACE_CHROME_CHANNEL | No | Optional: pin to a specific browser channel (chrome, msedge, chromium) for the login process. |
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": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| auth_statusA | Check whether the NYU Brightspace session works and who is logged in. |
| loginA | Open a Chrome window for NYU NetID + Duo login. Use when other tools report the session is not logged in. The user must complete Duo on their phone. Waits up to ~100s; if still pending, tell the user to finish and call auth_status. |
| list_coursesA | List Brightspace courses with ids. Defaults to the current NYU semester; parses NYU codes like FA26_CSCI-UA_310_1_040. |
| get_upcomingA | Upcoming deadlines across current courses (or one course): assignments with submission status, quizzes, readings with completion status, and instructor calendar events, in NYU local time. Also scans recent announcements for deadlines that live outside Brightspace (Gradescope, course websites). Start here for 'what's due'. |
| get_assignmentsB | Brightspace assignments (dropbox folders) with due dates, submission status and scores. Omit course for all current courses. |
| get_assignmentA | One assignment in full: instructions, attached files/links, my submissions, feedback and score. |
| get_quizzesB | Brightspace quizzes/exams with open/due/close times, time limits and attempts. |
| get_gradesA | My released grades per item (points, weight, comments) and the final grade if released. |
| get_announcementsA | Course announcements, newest first, as markdown. Omit course for all current courses. |
| get_contentA | Course content outline (modules and topics with topicIds, file types, links, due dates). Shows external tools like Gradescope/Ed and course website links. |
| read_contentB | Read a content topic: extracts text from PDF (per page), DOCX, PPTX, HTML, ZIP (lists files and inlines code) and plain text/code. Binary files are saved to ~/Downloads/brightspace//. |
| download_fileA | Save a file locally: a content topic (topicId) or an assignment attachment (assignmentId + fileId from get_assignment). |
| search_contentA | Find modules/topics by title across current courses, e.g. "syllabus", "hw3", "lecture 5 slides". |
| get_discussionsC | Brightspace discussion forums/topics; pass forumId + topicId to read posts. |
| get_classlistA | Course staff (instructors, TAs) with NetIDs and emails; everyone=true lists all students too. |
| api_getA | Escape hatch: GET any Brightspace Valence API path and return raw JSON. Use /lp/... or /le/... to auto-insert the version (e.g. /le/123456/news/), or a full /d2l/api/... path. |
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 16 tools
Each tool maps to a distinct Brightspace resource or action: auth, courses, assignments, quizzes, grades, announcements, content outline, content reading, file download, content search, discussions, roster, and API escape hatch. get_upcoming aggregates several sources but is clearly the 'what's due' summary, not a duplicate of the detail tools.
Most tools use lower_snake_case verb_noun names (list_courses, get_assignments, read_content, download_file, search_content), giving a predictable pattern. login is a bare verb and api_get reverses the object-verb order, so the pattern is not perfectly uniform.
16 tools is slightly above the ideal 3–15 range, but the broad Brightspace feature set (auth, courses, assignments, quizzes, grades, content, discussions, roster) justifies the count. No tool feels redundant, though a few could potentially be consolidated.
The read-only workflow is well covered: listing courses, retrieving deadlines/assignments/grades/announcements, reading and downloading content, searching, discussions, and classlist all have clear entry points and no dead ends. Missing write operations like assignment submission or discussion posting are notable if the server is expected to be a full Brightspace interface, but they appear out of scope for this read-oriented toolset.