@striderlabs/mcp-coursera
MCP (Model Context Protocol) server for Coursera โ search courses, get details, enroll, track progress, and view certificates.
Tools
| Tool | Description |
|---|---|
search_courses |
Search courses by topic, skill, difficulty level |
get_course_details |
Get full course info: syllabus, duration, instructor, reviews |
enroll_course |
Enroll in a course (requires login) |
get_my_courses |
List enrolled courses and progress |
get_certificates |
View earned certificates |
Requirements
- Node.js 18+
- Playwright (installed automatically)
Installation
npm install @striderlabs/mcp-coursera
# Install browser binaries
npx playwright install chromium
Configuration
Environment Variables
| Variable | Required | Description |
|---|---|---|
BROWSERBASE_CDP_URL |
Optional | Browserbase CDP endpoint for cloud browsers |
COURSERA_EMAIL |
For auth tools | Your Coursera account email |
COURSERA_PASSWORD |
For auth tools | Your Coursera account password |
Claude Desktop / MCP Client
Add to your MCP client config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"coursera": {
"command": "npx",
"args": ["-y", "@striderlabs/mcp-coursera"],
"env": {
"COURSERA_EMAIL": "[email protected]",
"COURSERA_PASSWORD": "yourpassword",
"BROWSERBASE_CDP_URL": "wss://connect.browserbase.com?apiKey=YOUR_KEY"
}
}
}
}
With Browserbase (Cloud Browsers)
Browserbase provides cloud browser infrastructure. Set BROWSERBASE_CDP_URL to connect:
BROWSERBASE_CDP_URL="wss://connect.browserbase.com?apiKey=YOUR_API_KEY" npx @striderlabs/mcp-coursera
Without BROWSERBASE_CDP_URL, a local Chromium instance is launched.
Usage Examples
Search for Courses
search_courses(query="machine learning", difficulty="beginner", limit=5)
Get Course Details
get_course_details(course_url="https://www.coursera.org/learn/machine-learning")
Enroll in a Course
enroll_course(course_url="https://www.coursera.org/learn/python")
Check Progress
get_my_courses()
View Certificates
get_certificates()
Authentication
Tools that access personal data (enroll_course, get_my_courses, get_certificates) require Coursera credentials. Provide them via:
- Environment variables (recommended):
COURSERA_EMAILandCOURSERA_PASSWORD - Tool arguments: Pass
emailandpassworddirectly in the tool call
Credentials are never stored or transmitted beyond the browser session.
Development
git clone <repo>
cd mcp-coursera
npm install
npx playwright install chromium
npm run build
npm start
License
MIT