Skip to main content

dsa-tracker-mcp

mcp-name: io.github.ashmitrrr/dsa-tracker-mcp-server

This is an MCP server for tracking your progress through your DSA questions and comes loaded with a default list of Neetcode 150 (any custom DSA problem list can be switched per user) with built-in spaced repetition. Built with FastMCP and SQLite.

Talk to it naturally from Claude: "what should I work on next", "log that I solved Two Sum, confidence 4, took 12 minutes", "how's my progress", "show me my history on Contains Duplicate".

Features

  • Spaced repetition — problems you struggle with come back sooner, problems you nail come back later. Schedule is based on how you rated each attempt (gave up / struggled / solved) and your confidence (1-5).
  • List-agnostic — ships with the full NeetCode 150 (150 problems, 18 categories) but can load any custom problem list via a JSON file.
  • Fuzzy matching — log an attempt with a loosely-typed problem name ("two sum", "contains dupe") and it'll match the right problem.
  • Stats & streaks — solved counts, per-category breakdown, daily streak, total time spent.

Tools

Tool Description
log_attempt Log an attempt at a problem (status, confidence 1-5, time spent). Schedules the next review.
get_next_problem Get what to work on next: an overdue review, or the next new problem in order. Optional category filter.
get_stats Overall progress summary — solved counts, per-category breakdown, streak, total time.
search_problems Search/filter problems by name, category, difficulty, or status.
get_problem_history All logged attempts for a given problem, chronological.

Resources

  • dsa://progress — current progress snapshot
  • dsa://problem-list — full list of tracked problems

Prompts

  • daily_review — generates a daily review session based on what's due
  • explain_pattern(category) — explains the core pattern/approach for a given category

Installation

git clone https://github.com/ashmitrrr/dsa-tracker-mcp.git
cd dsa-tracker-mcp
python3 -m venv .venv
source .venv/bin/activate   # on Windows: .venv\Scripts\activate
pip install -r requirements.txt

Configuration

Claude Desktop

Add to your claude_desktop_config.json (Settings → Developer → Edit Config):

{
  "mcpServers": {
    "dsa-tracker": {
      "command": "/absolute/path/to/dsa-tracker-mcp/.venv/bin/python",
      "args": ["/absolute/path/to/dsa-tracker-mcp/server.py"]
    }
  }
}

Restart Claude Desktop completely after saving.

Environment variables (optional)

Variable Default Description
DSA_TRACKER_DB ~/.dsa_tracker_mcp/progress.db Path to the SQLite database
DSA_TRACKER_PROBLEMS_FILE (none, uses built-in NeetCode 150) Path to a JSON file with a custom problem list

Custom problem list format

[
  {
    "name": "Two Sum",
    "category": "Arrays & Hashing",
    "difficulty": "Easy",
    "url": "https://leetcode.com/problems/two-sum/"
  }
]

url and difficulty are optional and will be auto-filled where possible. order_index is assigned automatically based on list order.

Spaced repetition logic

Outcome Next review
Gave up 1 day
Struggled, confidence ≤ 2 2 days
Struggled, confidence ≥ 3 4 days
Solved, confidence ≤ 3 7 days
Solved, confidence ≥ 4 21 days

get_next_problem prioritizes overdue reviews before suggesting new problems.

Example prompts

  • "What should I work on next?"
  • "I just solved Valid Anagram, confidence 5, took 6 minutes, log it"
  • "How's my progress on Trees?"
  • "Show me my history on Two Sum"
  • "Give me a daily review"

License

MIT — see LICENSE.

Metadata

Release files for dsa-tracker-mcp 1.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dsa-tracker-mcp 1.0.1
File Size Uploaded Provenance
dsa_tracker_mcp-1.0.1.tar.gz 13.9 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for dsa-tracker-mcp 1.0.1
File Interpreter ABI Platform
dsa_tracker_mcp-1.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 29.1 kB

Release files / dsa_tracker_mcp-1.0.1.tar.gz

Download URL dsa_tracker_mcp-1.0.1.tar.gz
Size 13.9 kB
Tags Source
SHA-256 checksum
How to use checksums
ce64e995c456afbaf01280ae139414f3ff7fcfd63be7b3e0651f6a19fc81eb07
BLAKE2b-256 checksum
How to use checksums
770df27f6fded4e95422f0705b26538348c60963ab29c67c5944f16c98687226
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.12

Release files / dsa_tracker_mcp-1.0.1-py3-none-any.whl

Download URL dsa_tracker_mcp-1.0.1-py3-none-any.whl
Size 15.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c6a9c8a092597ac23757575fb97a13dbf60cd1b7e2dae493678deb8db4691fcb
BLAKE2b-256 checksum
How to use checksums
370cdb01eb9c8d1d50815e35a8ebf06ad1e6245a8637abc511b6c4820943f22e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.12

Security for dsa-tracker-mcp 1.0.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.0.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page