Babysitter leetcode-problem-fetcher
Fetch and parse LeetCode problems with metadata, constraints, examples, hints, difficulty ratings, and related problems. Integrates with LeetCode API for comprehensive problem data retrieval.
install
source · Clone the upstream repo
git clone https://github.com/a5c-ai/babysitter
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/a5c-ai/babysitter "$T" && mkdir -p ~/.claude/skills && cp -r "$T/library/specializations/algorithms-optimization/skills/leetcode-problem-fetcher" ~/.claude/skills/a5c-ai-babysitter-leetcode-problem-fetcher && rm -rf "$T"
manifest:
library/specializations/algorithms-optimization/skills/leetcode-problem-fetcher/SKILL.mdsource content
leetcode-problem-fetcher
A specialized skill for fetching and parsing LeetCode problems with complete metadata, suitable for competitive programming practice, interview preparation, and algorithm learning workflows.
Purpose
Extract comprehensive problem data from LeetCode including:
- Problem statements and descriptions
- Input/output constraints and formats
- Test cases and hidden constraints
- Problem difficulty, tags, and acceptance rate
- Related problems and pattern tags
- Hints and solution approaches
Capabilities
Core Features
-
Problem Retrieval
- Fetch problems by title slug (URL-friendly name)
- Retrieve daily challenge problems
- Search problems by category, tags, difficulty, or keywords
- Access premium problem alternatives when available
-
Metadata Extraction
- Difficulty level (Easy, Medium, Hard)
- Acceptance rate and submission statistics
- Problem tags and categories
- Related problems and similar questions
- Company tags (when available)
-
Content Parsing
- Problem description in markdown format
- Input/output examples with explanations
- Constraints and edge cases
- Follow-up questions and optimizations
- Code templates for multiple languages
-
User Data Access
- User profile and statistics
- Contest ranking and history
- Submission history and solutions
- Progress tracking across problem sets
Integration Options
MCP Server (Recommended)
# Install LeetCode MCP Server by jinzcdev claude mcp add-json "leetcode" '{"type":"stdio","command":"npx","args":["-y","@jinzcdev/leetcode-mcp-server","--site","global"]}'
Available MCP Tools:
- Fetch daily LeetCode challengeget_daily_challenge
- Retrieve problem by titleSlugget_problem
- Filter by category, tags, difficulty, keywordssearch_problems
- Access user dataget_user_profile
- Track contest performanceget_user_contest_ranking
Direct API Integration
// GraphQL endpoint for LeetCode const LEETCODE_GRAPHQL = 'https://leetcode.com/graphql'; // Query for problem details const problemQuery = ` query getProblem($titleSlug: String!) { question(titleSlug: $titleSlug) { questionId title titleSlug content difficulty topicTags { name slug } hints sampleTestCase codeSnippets { lang code } stats } } `;
Browser Extension
Competitive Companion - Parses problems from LeetCode and 115+ other online judges:
- Chrome: competitive-companion
- Firefox: competitive-companion
Usage
Fetch a Problem
# Using MCP Server leetcode get_problem --titleSlug "two-sum" # Output includes: # - Problem title and description # - Difficulty and acceptance rate # - Topic tags # - Examples and constraints # - Code templates
Search Problems
# Search by difficulty and tags leetcode search_problems --difficulty MEDIUM --tags "dynamic-programming,array" # Search by keyword leetcode search_problems --keyword "substring"
Get Daily Challenge
# Fetch today's daily challenge leetcode get_daily_challenge
Output Schema
{ "problem": { "id": "string", "title": "string", "titleSlug": "string", "difficulty": "Easy|Medium|Hard", "acceptanceRate": "number", "description": "string (markdown)", "constraints": ["string"], "examples": [ { "input": "string", "output": "string", "explanation": "string" } ], "hints": ["string"], "topicTags": ["string"], "similarQuestions": ["string"], "codeTemplates": { "python3": "string", "cpp": "string", "java": "string" } }, "metadata": { "fetchedAt": "ISO8601 timestamp", "source": "leetcode.com|leetcode.cn" } }
Integration with Processes
This skill enhances the following processes:
- Core problem-solving workflowleetcode-problem-solving
- Identifying algorithmic patternspattern-recognition
- FAANG interview preparationfaang-interview-prep
References
- LeetCode MCP Server (jinzcdev)
- LeetCode MCP Server (doggybee)
- Competitive Companion
- Competitive Programming Helper (CPH)
Error Handling
| Error | Cause | Resolution |
|---|---|---|
| Invalid titleSlug | Verify problem URL or slug |
| Too many requests | Implement exponential backoff |
| Premium problem | Use alternative or authenticate |
| Connection failed | Check network, retry with backoff |
Best Practices
- Caching: Cache problem data to reduce API calls
- Rate Limiting: Respect LeetCode's rate limits (use delays between requests)
- Error Handling: Gracefully handle premium/locked problems
- Offline Mode: Store fetched problems for offline practice
- Data Freshness: Re-fetch periodically for updated statistics