A side-by-side look at the Brightspace D2l MCP and Korean Secondary Learning Map MCP MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Brightspace D2l MCP for education work as a local process; choose Korean Secondary Learning Map MCP for education as a local process. You can also run both side by side in one mcpServers block.
get_todo, get_my_courses, get_upcoming_due_dates.list_curricula, search_standards, get_standard.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Education | Education |
| Quality signal | 65/100 · Great | 64/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | Not declared | No auth required |
| Pricing | Not declared | Free |
| Required env vars | None listed | None listed |
| Verified owner | Community listing | Community listing |
| GitHub stars | 31 | 19 |
| Directory activity | 1 views 0 installs 0 upvotes | 4 views 0 installs 0 upvotes |
| Tools | 17 | 11 |
| Full listing | View Brightspace D2l MCP | View Korean Secondary Learning Map MCP |
get_todoPrioritized to-do list across all courses: unfinished work due soon, recently overdue work, work not open yet, items to double-check (quizzes), and work already submitted. Use this first when the user asks what to work on, what's left, or what they should do now. For a plain chronological list of deadlines or a custom date range, use get_upcoming_due_dates instead.get_my_coursesFetch your enrolled Brightspace courses with names, codes, and IDs. Use this when the user asks about their courses, enrolled classes, what they're taking this semester, or needs a course ID for other queries.get_upcoming_due_datesUpcoming due dates across all courses, with whether each assignment is already submitted (submissionStatus: submitted, graded, draft, not_submitted, not_open_yet, closed, past_due, restricted, unknown). Dates are UTC ISO strings; convert to the user's local time. Use for deadlines, what's due and date ranges, in date order. For advice on what to do first, use get_todo instead.get_my_gradesFetch your grade breakdown for a specific course or all enrolled courses. Shows grade items with points, percentages, and comments. Use this when the user asks about grades, scores, marks, GPA, academic performance, or how they're doing in a class.get_announcementsFetch recent announcements from your courses. Can filter to a specific course or get announcements across all courses. Use this when the user asks about announcements, news, updates from instructors, recent posts, or what professors said.get_assignmentsFetch assignments and quizzes for a specific course or all enrolled courses. Shows dropbox submissions and quizzes with due dates, status, and rubric info. Use this when the user asks about assignments, homework, what to submit, quizzes, or assignment details and rubrics.get_assignment_filesRead the files an instructor attached to an assignment: the spec or instructions PDF, a starter workbook, a rubric document. Call it with just courseId to see which assignments have attachments, then with folderId and fileId to read one. Use this when the user asks what an assignment requires, what the instructions say, or to summarize a handout. Returns the text itself. Use download_file instead when the user wants the file saved to disk.get_course_contentFetch the content tree for a course showing modules, topics, files, and links. Use this when the user asks about course materials, lecture slides, uploaded files, content structure, or what's in a course module. Use moduleTitle to filter to a specific module (e.g. 'Labs', 'Staff', 'Homeworks') instead of fetching the entire tree. Use maxDepth to limit recursion depth for a table-of-contents view.download_fileDownload a file from course content or assignment submissions to a local directory. Use this when the user wants to download, save, or get a file from Brightspace course content or dropbox submissions. IMPORTANT: You MUST ask the user where they want to save the file before calling this tool. Never guess or assume a download directory. After identifying the file to download, suggest a clean readable filename to the user (e.g., 'Lecture 7 - Memory Management.pdf' instead of 'L07_CS251_2026SP_v2.pdf') and ask if they'd like to rename it. Pass their preferred name as customFilename, or omit it to keep the original.get_classlist_emailsFetch all email addresses for everyone in a course: instructors, TAs, and students. Use this when the user wants a list of emails for a class, needs to email the whole class, or wants contact info for everyone enrolled. Returns emails only, with no names or roles. For names, roles or finding a specific instructor or TA, use get_roster instead.get_rosterFetch the roster for a course including instructors, TAs, and optionally students with their names, emails, and roles. Use this when the user asks about classmates, instructor contact info, TA emails, professor names, or who's in a class. By default returns only instructors and TAs for privacy. Use includeStudents to get full class list. For just a plain list of email addresses to copy or email everyone, use get_classlist_emails instead.get_syllabusFetch the syllabus/overview text and optional attachment for a course. Returns the course overview description as markdown. If downloadPath is provided, also downloads the syllabus attachment (e.g. PDF). IMPORTANT: You MUST ask the user where they want to save the file before calling this tool with a downloadPath.list_curricula필터가 없으면 학교급·교과군 요약을 반환한다. schoolLevel 또는 subjectGroup을 주면 해당 과목 목록을 반환한다.search_standards성취기준을 코드·키워드·필터로 검색해 요약 목록을 반환한다. 상세는 get_standard로 조회한다.get_standard성취기준 코드([9과01-01] 또는 9과01-01)로 전체 레코드, 공식 원문, 연결된 주제 목록을 조회한다. 일부 코드는 두 과목이 공유하므로 subject로 구분한다.search_topics세부 학습 주제를 키워드·필터로 검색해 요약 목록을 반환한다. 상세는 get_topic으로 조회한다.search_standard_text성취기준 공식 원문 전문에서 키워드를 검색해 코드와 매칭 스니펫을 반환한다. 상세 원문은 get_standard의 officialText로 조회한다.get_topic주제 ID로 관찰 증거·평가 문항·출처를 포함한 전체 레코드를 조회한다.get_prerequisites주제의 선수(prerequisites) 또는 후속(unlocks) 관계를 조회한다. depth=all이면 전이적 학습 경로를 위상 순서로 반환한다.get_learning_roadmap과목의 성취기준을 영역→클러스터 계층으로 집계한 학습 로드맵을 반환한다. 기존 데이터의 집계이며 새로운 순서를 생성하지 않는다.list_clusters학습 클러스터 목록을 조회한다. clusterId를 주면 단건 전체 레코드, 없으면 요약 목록을 반환한다. 목록은 limit·offset으로 페이지를 넘긴다.get_transitions주제 ID 또는 성취기준 코드로 중학교→고등학교 학습 전이(심화 연계)를 양방향 조회한다. 근거 문서·쪽수를 포함한다.get_course_pathway과목명으로 고등학교 과목 간 권장 선후 관계(예: 영어Ⅰ→영어Ⅱ)를 조회한다. 공식 이수 제약이 아닌 학습 흐름 권장이다.Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"brightspace-d2l-mcp": {
"command": "npx",
"args": [
"-y",
"brightspace-d2l-mcp"
]
}
}
}
{
"mcpServers": {
"korean-secondary-learning-map-mcp": {
"command": "npx",
"args": [
"-y",
"korean-secondary-learning-map-mcp"
]
}
}
}