Enables AI agents to programmatically interact with Coursera, including enrolling in courses, completing lectures, solving quizzes, submitting assignments, earn
Enables AI agents to programmatically interact with Coursera, including enrolling in courses, completing lectures, solving quizzes, submitting assignments, earning certificates, and pushing them to LinkedIn.
README
The most advanced MCP server for Coursera. 279 tools · 5.6 MB binary · async Rust · zero dependencies · rich Obsidian export
Give any AI agent — Claude, GPT, or your own — full programmatic access to Coursera.
Enroll in courses, speedrun lectures, solve quizzes, submit assignments,
earn certificates, and push them to LinkedIn. All from a single MCP server.
Highlights
Feature
How
🦀
Native Rust binary
4.9 MB stripped binary — no Python, no venv, no interpreter overhead
⚡
Async I/O
tokio runtime with zero-copy async HTTP — true non-blocking concurrency
🚀
Speedrun entire courses
speedrun_course completes lectures, quizzes, discussions, and graded exams in one call
🔓
Freemium bypass
Auto-detects enrolledViaFreemiumAt restrictions and re-enrolls without the flag
🧠
Solve quizzes via GraphQL
Elimination-learning solver: submits, learns from feedback, retries until passing
🤖
AI-powered quiz solving
Gemini LLM picks correct answers on first attempt, elimination as fallback
📝
Submit everything
Written, peer review, discussion prompts, programming assignments — all automated
Bundle a module's transcripts + readings into one study document
search_course_transcripts
Full-text search across a course's lecture transcripts
learning_dashboard
Progress %, certificate, and grade across all enrolled courses
get_upcoming_deadlines
Session end dates across enrolled courses, soonest first
export_deadlines_ics
Export deadlines as an importable .ics calendar
Obsidian Integration
Tool
Description
summarize_module
Summarize a module's lectures and readings into concise study notes
summarize_course
Summarize an entire course organized by module
export_course_to_obsidian
Summarize + write to Obsidian vault with frontmatter, wiki-links, callouts, and tags
export_module_to_obsidian
Export a single module to Obsidian
export_all_courses_to_obsidian
Batch export all enrolled courses to Obsidian
Reviews & Ratings
Tool
Description
get_course_reviews
Get aggregate ratings and recent reviews
submit_course_review
Submit a star rating and text review
get_course_review_highlights
Get AI-generated review highlights
Wishlist & Saved Courses
Tool
Description
get_saved_courses
Get courses saved to your wishlist
save_course
Save a course to wishlist
unsave_course
Remove from wishlist
Announcements & Communications
Tool
Description
get_course_announcements
Get instructor announcements
get_email_preferences
Get notification settings
update_email_preferences
Toggle notification types
Certificates & Accomplishments
Tool
Description
download_certificate_pdf
Download certificate as PDF (base64)
get_accomplishments
Get all accomplishments across courses
share_certificate
Get public share URLs for a certificate
Account & Profile Management
Tool
Description
update_profile
Update bio, location, company, title
get_account_settings
Get privacy, language, timezone settings
update_account_settings
Change language/timezone
Session Management
Tool
Description
get_available_sessions
Get available course sessions
switch_session
Switch to a different session
get_session_info
Get current session details
Course Categories & Discovery
Tool
Description
get_domains
Get all course domains/categories
get_subdomains
Get subcategories for a domain
get_trending_courses
Get trending/recommended courses
search_suggestions
Get autocomplete search suggestions
Partners & Instructors
Tool
Description
get_partner_info
Get university/company details
get_instructor_info
Get instructor biography and courses
get_partner_courses
Get all courses by a partner
Activity & History
Tool
Description
get_recently_viewed
Get recently viewed courses/items
get_learning_history
Get learning activity log
get_browsing_history
Get course browsing history
Bookmarks
Tool
Description
get_bookmarks
Get bookmarked content
create_bookmark
Bookmark a course item
delete_bookmark
Remove a bookmark
get_all_notes
Get all study notes across courses
Labs & Workspaces
Tool
Description
get_lab_status
Get lab session status
start_lab
Start a lab environment
get_workspace_info
Get Jupyter/lab workspace details
Degree Programs & Professional Certificates
Tool
Description
get_degree_programs
Get available degree programs
get_professional_certificates
Get professional cert enrollments
get_specialization_enrollment
Get specialization memberships
Skills & Achievements
Tool
Description
get_skill_scores
Get skill proficiency scores
get_achievements
Get badges, streaks, milestones
get_skill_tags
Get skill tags for a course
Batch Operations
Tool
Description
batch_complete_courses
Complete multiple courses in parallel
batch_get_progress
Get progress for multiple courses at once
batch_solve_quizzes
Solve all failing quizzes across multiple courses
Honor Code & Compliance
Tool
Description
get_honor_code
Get honor code text
sign_honor_code
Sign the honor code agreement
get_honor_code_status
Check if honor code is signed
Financial Aid
Tool
Description
check_financial_aid
Check financial aid status
get_financial_aid_application
Get application status
Social & Community
Tool
Description
get_course_mates
Get other learners in a course
get_mentors
Get course mentors
follow_user
Follow another learner
get_followers
Get your followers
Reverse Engineering
Several tools were built by intercepting live browser traffic and reverse-engineering Coursera's internal APIs:
Freemium Bypass — Coursera sets enrolledViaFreemiumAt on free enrollments, which causes all opencourse.v1 video-event and supplement-completion endpoints to return 403. The bypass deletes the enrollment via DELETE /api/openCourseMemberships.v1/{uid}~{courseId} (with an empty {} body — Akka backend requires it) and re-creates it via POST without the freemium flag.
GraphQL Gateway — 48+ operations captured from graphql-gateway, including GetLearnerStats, WeeklyStreaks_QueryWeeklyStreaks, GetLearnerWeeklyGoals, GetCourseBranchModuleProgressByCourse, GetLearnerCourseTimeline, GetMyCertificateByProduct, CourseNavigation, GetAiGradingEligibilityByCourse, CareerRolesQuery, and GetProductOwnership.
REST APIs — 61+ endpoints mapped from browser network traffic, including onDemandCourseViewGrades.v1, onDemandReferences.v1, onDemandLectureAssets.v1, onDemandInstructorNotes.v1, userNotes.v1, onDemandCourseForums.v1, onDemandLearningObjectives.v2, and subscriptions.v1.
Quiz Solver — Elimination-learning algorithm reimplemented natively in Rust (replacing the Python skipera library): submits answers, gets per-question feedback marking options correct/incorrect, persists learned answers to disk, and retries with improved answers until passing (≥70%). AI-powered first attempt via Gemini LLM, with systematic elimination as fallback. Handles START_NEW_ATTEMPT, RESUME_DRAFT, rate limits, option ID reshuffling, and all question types (multiple choice, checkbox, text reflect, rich text, numeric).
Да, Coursera MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Coursera?
Нет, Coursera работает без API-ключей и переменных окружения.
Coursera — hosted или self-hosted?
Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.
Как установить Coursera в Claude Desktop, Claude Code или Cursor?
Открой Coursera на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.