Skip to content

JoshuaOliphant/mochi_donut

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mochi Donut

An MCP server that converts web content into high-quality Mochi flashcards following Andy Matuschak's spaced repetition principles.

Features

  • fetch_url - Extract clean markdown from any URL via JinaAI Reader
  • list_decks - List your Mochi decks
  • create_cards - Create flashcards in Mochi (single or batch)
  • Built-in resources with Matuschak's flashcard writing principles
  • Prompt templates for generating and reviewing flashcards

Quick Start

Prerequisites

Installation

git clone https://github.com/JoshuaOliphant/mochi_donut.git
cd mochi_donut
uv sync

Running the Server

uv run python -m mochi_donut.server

Installing in Claude Code

Add to ~/.claude/settings.json:

{
  "mcpServers": {
    "mochi-donut": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/mochi_donut", "python", "-m", "mochi_donut.server"],
      "env": {
        "MOCHI_API_KEY": "your-mochi-api-key"
      }
    }
  }
}

Restart Claude Code, then you can say things like:

Usage Example

Once installed in Claude Code:

  1. Provide a URL to create flashcards from
  2. Claude fetches the content using fetch_url
  3. Claude reads the matuschak://principles resource for guidance
  4. Claude generates flashcards following those principles
  5. Claude uses list_decks to find your target deck
  6. Claude creates the cards using create_cards

Development

# Run tests
uv run pytest

# Run specific test
uv run pytest tests/test_server.py::TestFetchUrlTool -v

Architecture

Minimal MCP server built with FastMCP:

src/mochi_donut/
├── __init__.py     # Package entry point
└── server.py       # MCP server with tools, resources, and prompts

Dependencies: fastmcp, httpx

License

MIT

About

AI-powered spaced repetition learning tool that converts content into high-quality flashcards following Andy Matuschak's principles

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors