Cert Pepper
Adaptive CLI study tool for IT certification exams β FSRS spaced repetition meets AI explanations
Ask AI about Cert Pepper
Powered by Claude Β· Grounded in docs
I know everything about Cert Pepper. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
CertPepper
Adaptive CLI study tool for IT certification exams β FSRS spaced repetition meets AI-powered explanations.
Quick Start Β· Why CertPepper? Β· Features Β· MCP Integration Β· Content Format Β· Contributing
Quick Start
# Clone and install
git clone https://github.com/cert-pepper/cert-pepper.git && cd cert-pepper
cp .env.example .env # add ANTHROPIC_API_KEY for AI explanations
uv sync
# Set up a database and start studying
uv run cert-pepper db init
uv run cert-pepper ingest # loads the bundled Security+ content
uv run cert-pepper study
Or open the repo in Claude Code and ask it to generate a question bank for any exam:
Set up a question bank for the CISSP exam
See MCP Integration to enable the servers.
Why CertPepper?
Most study tools β Anki, Quizlet, flashcard apps β treat every question the same. CertPepper adapts:
- FSRS-4.5 spaced repetition schedules reviews at optimal intervals based on your recall history β the same core algorithm behind Anki, tuned for exam prep.
- Bayesian Knowledge Tracing estimates mastery per domain and steers new questions toward your weakest areas, weighted by how much each domain counts on the real exam.
- AI explanations break down wrong answers with domain-specific context via Claude (MCP sampling in Claude Code, or the Anthropic API in CLI mode).
- Domain-weighted scoring predicts your exam score using actual exam weights, with a conservative prior for unseen material.
- MCP integration β study inside Claude Code with three servers for content, study sessions, and analytics.
Features
| Command | What it does |
|---|---|
cert-pepper study | Adaptive study session β picks questions based on your weak spots |
cert-pepper study --domain 4 --count 15 | Target a specific domain |
cert-pepper study --new-questions | Focus on unseen material |
cert-pepper exam | 90-question timed mock exam with countdown |
cert-pepper progress | Dashboard: domain accuracy, predicted score, pass probability, study streak |
cert-pepper goal set --exam-date 2026-03-09 | Set exam date, get a paced study calendar |
cert-pepper pregenerate | Batch-generate AI explanations (requires API key) |
cert-pepper db init | Create/reset the SQLite database |
cert-pepper ingest | Parse markdown content into the DB |
cert-pepper upgrade | Apply schema migrations and refresh content |
No guarantees. Predicted scores and pass probabilities are estimates based on practice performance β not predictions of real exam outcomes.
MCP Integration
Three STDIO MCP servers are registered in .mcp.json:
| Server | Purpose |
|---|---|
cert-pepper-study | Start sessions, submit answers, get due cards |
cert-pepper-content | Search questions, get explanations, look up acronyms |
cert-pepper-analytics | Predict score, find weak areas, study recommendations |
Enable them in Claude Code by adding enableAllProjectMcpServers: true to .claude/settings.local.json.
In Claude Code, explanations use MCP sampling β no ANTHROPIC_API_KEY needed.
Adding Your Own Exam
- Create a content directory in CertPepper's markdown format.
- Set
CONTENT_ROOT=/path/to/your/contentin.env. - Run
cert-pepper db initandcert-pepper ingest.
The examples/security-plus/ directory is a complete reference implementation with 228 questions, 135 flashcards, and 262 acronyms.
Configuration
| Variable | Default | Description |
|---|---|---|
DB_PATH | ./cert_pepper.db | SQLite database path |
CONTENT_ROOT | ./examples/security-plus | Root of your exam content |
ANTHROPIC_API_KEY | β | Required for CLI AI explanations (study, pregenerate). Not needed in Claude Code. |
HAIKU_MODEL | claude-haiku-4-5-20251001 | Model for AI explanations |
SONNET_MODEL | claude-sonnet-4-6 | Model for MCP sampling |
DEFAULT_SESSION_SIZE | 10 | Questions per study session |
MASTERY_THRESHOLD | 0.85 | BKT mastery cutoff |
Repository Layout
cert-pepper/
βββ cert_pepper/ β Python source (CLI, MCP servers, algorithms)
β βββ cli/ β Typer commands
β βββ mcp/ β Three FastMCP STDIO servers
β βββ engine/ β FSRS, BKT, selector, scorer (pure Python)
β βββ ingestion/ β Markdown parsers
β βββ ai/ β Anthropic client + explainer
β βββ db/ β SQLAlchemy async engine + schema
βββ tests/ β pytest suite
βββ examples/
β βββ security-plus/ β Security+ SY0-701 exam content
βββ docs/
βββ security-plus-in-10-days.md β 10-day Security+ study guide
βββ content-format.md β Format spec for your own exam content
Worked Example
The examples/security-plus/ directory contains a complete Security+ SY0-701 exam prep set:
- 5 domains of notes
- 135 flashcards
- 228 practice questions across all 5 domains
- 262 acronyms
See Security+ in 10 Days for a step-by-step guide.
Contributing
See CONTRIBUTING.md for setup instructions, workflow, and PR guidelines.

