MCP server for D2L Brightspace. Multi-auth, 26+ tools, MCP Resources, Prompts, and web dashboard.
Most file and storage access work still happens through a UI a human drives. Brightspace MCP server moves it into the conversation instead. MCP server for D2L Brightspace. Multi-auth, 26+ tools, MCP Resources, Prompts, and web dashboard.
Installation goes through your MCP client rather than a global install: point it at brightspace-mcp on npm and it is fetched when the client starts. The copy-paste blocks for Claude Desktop, Claude Code and Cursor are further down this page.
The server publishes 14 tools. What each one is for:
check_auth — Verify authentication and show the active user identitylist_my_courses — List all enrolled coursesget_my_grades — Get grades for a courseget_assignments — List assignments and dropbox foldersget_assignment_files — Download and read instructor-posted assignment filesget_upcoming_due_dates — List assignments due in the next N daysget_feedback — Read instructor feedback on submitted assignmentsget_syllabus — Fetch the course syllabusget_course_content — Browse modules and topics (includes topic IDs)get_topic_file — Download and read a content topic file (DOCX, PDF, HTML, plain text)get_announcements — List course announcementsget_discussions — Browse discussion forums and threadsConfiguration is passed through the environment: BRIGHTSPACE_CONFIG, BRIGHTSPACE_API_TOKEN, BRIGHTSPACE_COOKIE, BRIGHTSPACE_TOTP_SECRET. Treat anything key-shaped as a real credential — scope it to the minimum the server needs, and rotate it if it ever lands in a shared config.
Among the file and storage access options, the useful question is rarely "what can it do" but "what does it cost you to run" — permissions, credentials, and how much of your context its toolset consumes. Brightspace's toolset — check_auth, list_my_courses, get_my_grades and 11 more — is a fair guide to whether it matches your workflow. It is maintained by JhostinAleck; worth a glance at recent repository activity before you build anything load-bearing on it.
This entry was verified against Brightspace's own documentation before publication; SyncDev keeps the directory reviewed rather than auto-generated.
| Tool | What it does |
|---|---|
| check_auth | Verify authentication and show the active user identity |
| list_my_courses | List all enrolled courses |
| get_my_grades | Get grades for a course |
| get_assignments | List assignments and dropbox folders |
| get_assignment_files | Download and read instructor-posted assignment files |
| get_upcoming_due_dates | List assignments due in the next N days |
| get_feedback | Read instructor feedback on submitted assignments |
| get_syllabus | Fetch the course syllabus |
| get_course_content | Browse modules and topics (includes topic IDs) |
| get_topic_file | Download and read a content topic file (DOCX, PDF, HTML, plain text) |
| get_announcements | List course announcements |
| get_discussions | Browse discussion forums and threads |
| get_calendar_events | List calendar events in a date range |
| get_roster | Get the full course roster |
{
"mcpServers": {
"brightspace": {
"command": "npx",
"args": ["-y", "brightspace-mcp"],
"env": {
"BRIGHTSPACE_CONFIG": "your-value",
"BRIGHTSPACE_API_TOKEN": "your-value",
"BRIGHTSPACE_COOKIE": "your-value",
"BRIGHTSPACE_TOTP_SECRET": "your-value"
}
}
}
}Add to claude_desktop_config.json, then restart Claude Desktop.
| Variable | Description | Required |
|---|---|---|
| BRIGHTSPACE_CONFIG | Configuration value read at startup. | Optional |
| BRIGHTSPACE_API_TOKEN | Credential the server authenticates with. | Yes |
| BRIGHTSPACE_COOKIE | Configuration value read at startup. | Optional |
| BRIGHTSPACE_TOTP_SECRET | Credential the server authenticates with. | Yes |
Scoped local file access — read, write, search and reorganise files in directories you explicitly allow.
Search and read your Drive — Docs, Sheets and files become context your assistant can actually use.
Query, modify and analyse local SQLite databases in conversation — the fastest way to chat with a data file.
Build a programmable telecommunications stack for connecting telephony services with the Internet via a cloud-based utility.
Chat with your second brain — search, read and write vault notes through the Local REST API.
Connects AI models to an Obsidian knowledge base for direct access and manipulation of notes and folders.