How fishernick/brightspacemcp works
Brightspace-MCP exposes one Brightspace account as authenticated MCP tools, with a companion browser-cookie synchronization path that keeps outbound LMS access current. The main user workflow is an MCP client requesting account, course, grade, content, or due-work data; the server fetches and shapes Brightspace responses. README documents additional tool families not fully visible in the sampled server excerpt, so those are represented at the server-module level; exact internal wiring is shown only where supported.
Main entry points: server.py API requester · cookie_sync_server.py Cookie receiver · background.js Cookie watcher · cookie-sync.xennick.com.conf Reverse proxy
Components 21
MCP access
- MCP tools
src/brightspacemcp/server.py - Bearer gate
src/brightspacemcp/server.py
Brightspace data
- Cookie credentials
src/brightspacemcp/auth.py - API requester
src/brightspacemcp/server.py - Account and courses
src/brightspacemcp/server.py - Grades
src/brightspacemcp/server.py - Due items
src/brightspacemcp/server.py - Calendar events
src/brightspacemcp/server.py - Quizzes
src/brightspacemcp/server.py - Merged due view
src/brightspacemcp/server.py - Course content
src/brightspacemcp/server.py - Topic and syllabus files
src/brightspacemcp/server.py - Video transcription
src/brightspacemcp/server.py
Cookie sync
- Cookie watcher
extension/background.js - Cookie receiver
cookie_sync_server.py - Environment file
Other components
- MCP client
- Brightspace LMS
- Brightspace browser
- MCP service
deploy/brightspace-mcp.service - Reverse proxy
deploy/cookie-sync.xennick.com.conf
Connections 21
- MCP client → Bearer gate: sends MCP requests
- Bearer gate → MCP tools: authorizes
- MCP tools → API requester: uses for LMS calls
- API requester → Cookie credentials: loads cookies
- API requester → Brightspace LMS: requests API data
- Brightspace LMS → API requester: returns API data
- Account and courses → API requester: fetches enrollments
- Grades → API requester: fetches grades
- Due items → API requester: fetches due feed
- Calendar events → API requester: fetches events
- Quizzes → API requester: fetches quizzes
- Merged due view → API requester: fetches source feeds
- Course content → API requester: fetches course TOC
- Topic and syllabus files → API requester: downloads attachments
- Video transcription → Brightspace LMS: launches video link
- Brightspace browser → Cookie watcher: changes session cookies
- Cookie watcher → Reverse proxy: posts cookies
- Reverse proxy → Cookie receiver: forwards request
- Cookie receiver → Environment file: updates cookies
- Cookie receiver → MCP service: restarts service
- Environment file → Cookie credentials: supplies session values