Skip to main content

Unified MCP server for interactive programming education with Scrimba's revolutionary methodology

Project description

Scrimba Teaching MCP System

mcp-name: io.github.srikrishna235/scrimba-teaching-mcp

A revolutionary teaching system implementing Per Borgen's Scrimba methodology, available as MCP servers for both Claude Desktop and Claude CLI.

๐Ÿš€ v1.1.0 - Agent-Router Update!

NEW! scrimba_agent - Unified tool that embeds agent personalities and auto-routes requests!

  • Analyzes user intent automatically
  • Routes to visual, interactive, project, or challenge modes
  • No need for separate agents - everything in one tool!

Architecture

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”     โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  Teaching MCP       โ”‚     โ”‚  CLI Wrapper MCP   โ”‚
โ”‚  (Pure Logic)       โ”‚     โ”‚  (Agent Support)   โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค     โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ โ€ข scrimba_agent()   โ”‚     โ”‚ โ€ข execute_with_    โ”‚
โ”‚   (NEW! v1.1.0)     โ”‚     โ”‚   agent()          โ”‚
โ”‚ โ€ข teach()           โ”‚     โ”‚ โ€ข list_agents()    โ”‚
โ”‚ โ€ข give_challenge()  โ”‚     โ”‚                    โ”‚
โ”‚ โ€ข check_code()      โ”‚     โ”‚                    โ”‚
โ”‚ โ€ข visualize()       โ”‚     โ”‚                    โ”‚
โ”‚ โ€ข start_project()   โ”‚     โ”‚                    โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
         โ†‘                           โ†‘
         โ”‚                           โ”‚
    Claude Desktop              Claude CLI
    (Direct MCP)              (With Agent Support)

Features

Core Scrimba Methodology

  • 60-Second Rule: Users coding within 60 seconds
  • Micro-Lessons: [HOOK: 20s] โ†’ [CONCEPT: 60s] โ†’ [CHALLENGE: 120s] โ†’ [CELEBRATE: 10s]
  • 5-Level Progression: Every concept taught in 5 progressive steps
  • Console.log Driven Development: Verify everything immediately
  • Error-First Learning: Celebrate mistakes as learning moments
  • Real Projects: Passenger Counter, Blackjack Game, Chrome Extension

Teaching Tools

  • teach(topic, step) - Interactive lessons with Scrimba methodology
  • give_challenge(difficulty) - Immediate coding challenges
  • check_code(code) - Validation with encouragement
  • next_lesson() - Progress through 5-level curriculum
  • start_project(name) - Build real applications
  • visualize_concept(concept) - Generate visual learning materials
  • show_progress() - Track learning journey

Installation

For Claude Desktop

  1. Install the MCP server:
cd scrimba-mcp-unified
pip install -e .
  1. Configure Claude Desktop: Add to your Claude Desktop configuration:
{
  "mcpServers": {
    "scrimba-teaching": {
      "command": "python",
      "args": ["/path/to/teaching-server/teaching_mcp.py"]
    }
  }
}
  1. Start using in Claude Desktop:
teach me variables
give me a challenge
check my code: let age = 25

For Claude CLI

  1. Install both servers:
cd scrimba-mcp-unified
pip install -e .
  1. Register MCP servers: The .mcp.json file is already configured. Claude CLI will automatically detect both servers.

  2. Option A - Direct MCP Usage:

# Use MCP tools directly
claude "teach me variables"
claude "give me a coding challenge"
  1. Option B - With Agent Orchestration:
# Create teaching agents
claude "create teaching orchestrator agent"

# Use agents for orchestration
claude @teaching-orchestrator "teach me variables"

Usage Examples

Direct Teaching (Claude Desktop & CLI)

User: teach me variables
Bot: [Full Scrimba micro-lesson with story, concept, and challenge]

User: let myAge = 25
Bot: [Celebration and next challenge]

User: next lesson
Bot: [Level 2 of 5-level progression]

Project-Based Learning

User: start project passenger_counter
Bot: [Per's subway story + starter code + 5 build steps]

User: show my progress
Bot: [Visual progress bar + achievements + motivation]

Visual Learning

User: visualize variables
Bot: [Detailed image prompt for educational visualization]

Key Differences

Feature Claude Desktop Claude CLI
Direct MCP Tools โœ… Yes โœ… Yes
Agent Support โŒ No โœ… Yes (via wrapper)
Installation Single server Both servers (optional)
Usage Direct tools only Tools or agents

Development

Testing the Teaching Server

cd teaching-server
python teaching_mcp.py --test

Testing with Claude CLI

# Test direct MCP
claude "teach me functions" --mcp-debug

# Test with agents
claude @teaching-orchestrator "teach me functions"

Scrimba Methodology Details

Micro-Lesson Structure

Every lesson follows this exact timing:

  • 0-20s: Personal story hook ("When I was 19...")
  • 20-80s: ONE concept only
  • 80-200s: Immediate practice
  • 200-210s: Celebration

Progressive Complexity (5 Levels)

  1. Basic declaration
  2. Modification/reassignment
  3. Shorthand syntax
  4. Advanced usage
  5. BUILD REAL APP!

Language Patterns

  • ALWAYS: "Hey buddy!", "This is HUGE!", "Super common!"
  • NEVER: "Let me explain...", "This is wrong", "As you should know..."

Projects

  1. Passenger Counter: Variables & Functions
  2. Blackjack Game: Logic & Conditionals
  3. Chrome Extension: Advanced concepts

Contributing

The teaching logic is centralized in teaching_mcp.py. To add new lessons:

  1. Add to LESSONS dictionary with 5 levels
  2. Follow exact Scrimba structure
  3. Include personal stories
  4. Test with both Desktop and CLI

License

MIT - Share the Scrimba way of learning!

Credits

Based on Per Borgen's revolutionary teaching methodology from Scrimba. "The only way to learn to code is to write a lot of code!"

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

scrimba_teaching_mcp-3.0.5.tar.gz (13.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

scrimba_teaching_mcp-3.0.5-py3-none-any.whl (12.0 kB view details)

Uploaded Python 3

File details

Details for the file scrimba_teaching_mcp-3.0.5.tar.gz.

File metadata

  • Download URL: scrimba_teaching_mcp-3.0.5.tar.gz
  • Upload date:
  • Size: 13.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for scrimba_teaching_mcp-3.0.5.tar.gz
Algorithm Hash digest
SHA256 cd279c1f375b2a09a2df32ca127f7dd991b24f5fad9a497247932352edf6f627
MD5 98ec9bb44dbf1ff70a1df8449cac5a28
BLAKE2b-256 d6284adefe1f99d1cdec58b50eb009bf7290a29ff886ebced860416a10a23dbb

See more details on using hashes here.

File details

Details for the file scrimba_teaching_mcp-3.0.5-py3-none-any.whl.

File metadata

File hashes

Hashes for scrimba_teaching_mcp-3.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 e3a4e2d75adeb190392e554ba17477d06a56876b7e3688057ad51a357b006c3e
MD5 70f6e4216e0d2f1f45be428d92f03e33
BLAKE2b-256 cbede1bd82238f8e2f645e4d6abce05878702b0e106ed5a938b2a97edda6a46c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page