{"name":"io.github.SPerekrestova/interactive-leetcode-mcp","slug":"sperekrestova-interactive-leetcode-mcp","title":null,"description":"Interactive LeetCode MCP server with authorization and solution submission capabilities","url":"https://mcp.market/server/sperekrestova-interactive-leetcode-mcp","rating":null,"grade":"A","score":92,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":36,"stars":12,"forks":3,"downloads_week":102,"last_push_at":"2026-09-15T18:48:44.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/SPerekrestova/interactive-leetcode-mcp","website":null,"version":"3.2.6","remotes":[],"packages":[{"registryType":"npm","identifier":"@sperekrestova/interactive-leetcode-mcp","version":"3.2.6","transport":{"type":"stdio"}}],"tools":[{"name":"check_auth_status","description":"Checks if LeetCode credentials exist and are still valid. Returns authentication status, username if authenticated, and credential age information.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_all_submissions","description":"Retrieves a paginated list of the current user's submissions for a specific problem or all problems on LeetCode Global, with detailed submission metadata (requires authentication)","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_daily_challenge","description":"Retrieves today's LeetCode Daily Challenge problem with complete details, including problem description, constraints, and examples. After fetching, invoke the leetcode_learning_mode and leetcode_problem_workflow prompts before helping the user work on it.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_problem","description":"Retrieves details about a specific LeetCode problem, including its description, examples, constraints, and related information. After fetching, invoke the leetcode_learning_mode and leetcode_problem_workflow prompts before helping the user work on it.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_problem_progress","description":"Retrieves the current user's problem-solving status with filtering options, including detailed solution history for attempted or solved questions (requires authentication)","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_problem_solution","description":"Retrieves the full content of a specific community solution. GATED: rejects with HINT_LEVEL_TOO_LOW unless the session for `titleSlug` has reached the maximum hint level. Pass the topicId returned by `list_problem_solutions`.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_problem_submission_report","description":"Retrieves detailed information about a specific LeetCode submission by its ID, including source code, runtime stats, and test results (requires authentication)","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_recent_ac_submissions","description":"Retrieves a user's recent accepted (AC) submissions on LeetCode Global, focusing only on successfully completed problems","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_recent_submissions","description":"Retrieves a user's recent submissions on LeetCode Global, including both accepted and failed submissions with detailed metadata","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_session_state","description":"Returns the persisted session for a problem, or null if the user has not called start_problem for it. Useful for restoring context after a restart.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_started","description":"Returns the usage guide for this MCP server: which prompts to invoke and when, session flow, auth flow, and submission language map. Call this at the start of any LeetCode practice session.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_user_contest_ranking","description":"Retrieves a user's contest ranking information on LeetCode, including overall ranking, participation history, and performance metrics across contests","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_user_profile","description":"Retrieves profile information about a LeetCode user, including user stats, solved problems, and profile details","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_user_status","description":"Retrieves the current user's status on LeetCode, including login status, premium membership details, and user information (requires authentication)","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_problem_solutions","description":"Retrieves community solution metadata (topicIds) for a problem. GATED: rejects with HINT_LEVEL_TOO_LOW unless the active session for the slug has reached the maximum hint level. Drive the user through request_hint until that level is reached.","write_action":false,"price_micros":0,"input_schema":null},{"name":"request_hint","description":"Advances the hint level for an active session and returns the next hint. Levels: 1 clarification → 2 approach → 3 implementation sketch → 4 solution unlock. The community-solutions tools become callable only after this has been driven to level 4.","write_action":false,"price_micros":0,"input_schema":null},{"name":"reset_session","description":"Resets the tutoring session for a problem back to hint level 0. Use when the user wants to re-attempt the problem from scratch.","write_action":false,"price_micros":0,"input_schema":null},{"name":"run_local_tests","description":"Runs the user's code locally in an isolated subprocess, captures stdout / stderr / exit code, and updates the session's lastLocalRunPassed flag. Use this in the inner loop instead of submit_solution — it costs no LeetCode submission and turns around in seconds. The agent is responsible for including test invocations (e.g. `print(Solution().twoSum([2,7,11,15], 9))`) in the code passed in. Currently","write_action":true,"price_micros":0,"input_schema":null},{"name":"runner_doctor","description":"Reports which language runtimes (python3, go, java) and OS sandbox tools (bwrap, firejail, sandbox-exec) are detected on this host. Useful for diagnosing 'LANGUAGE_RUNTIME_NOT_FOUND' errors and confirming whether run_local_tests will be sandboxed.","write_action":false,"price_micros":0,"input_schema":null},{"name":"save_leetcode_credentials","description":"Validates and saves LeetCode credentials provided by the user. Validates credentials by making a test API call to LeetCode, then securely stores them for future authenticated requests.","write_action":false,"price_micros":0,"input_schema":null},{"name":"search_problems","description":"Searches for LeetCode problems based on multiple filter criteria including categories, tags, difficulty levels, and keywords, with pagination support","write_action":false,"price_micros":0,"input_schema":null},{"name":"start_leetcode_auth","description":"Initiates LeetCode authentication flow. Opens browser to LeetCode login (if possible) and provides instructions for the AI agent to guide the user through manual credential extraction from browser DevTools.","write_action":false,"price_micros":0,"input_schema":null},{"name":"start_problem","description":"Opens (or resumes) a tutoring session for a LeetCode problem. Must be called before request_hint, list_problem_solutions, or get_problem_solution. Idempotent: re-running on a slug the user is already mid-way through preserves their hint progress.","write_action":false,"price_micros":0,"input_schema":null},{"name":"submit_solution","description":"Submit a solution to a LeetCode problem and get results. Returns acceptance status, runtime/memory stats, or failed test case details. When LEETCODE_MCP_STRICT_MODE=1 is set, requires `run_local_tests` to have last passed for the problem first — saves real LeetCode submissions for solutions that pass examples locally.","write_action":true,"price_micros":0,"input_schema":null}],"scan":{"score":92,"grade":"A","scanned_at":"2026-10-03T12:02:44.531Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-10-03T12:02:44.506Z","components":{"code":{"score":25,"max":25,"notes":["91 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":12,"max":15,"notes":["local package, no credentials required"]},"maintenance":{"score":15,"max":15,"notes":["last push 18 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"@sperekrestova/interactive-leetcode-mcp","version":"3.2.6","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":6,"publishedAt":"2026-09-15T18:48:00.487Z","repositoryUrl":"git+https://github.com/SPerekrestova/interactive-leetcode-mcp.git"}],"repo":{"found":true,"owner":"SPerekrestova","repo":"interactive-leetcode-mcp","archived":false,"pushedAt":"2026-09-15T18:48:44Z","stars":12,"forks":3,"openIssues":1,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/32782746?v=4","ownerCreatedAt":"2017-10-13T22:37:43Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/32782746?v=4&s=128","source":"registry","width":128,"height":128},"presence":{"stars":12,"forks":3,"downloadsWeek":102,"license":"MIT","lastPushAt":"2026-09-15T18:48:44.000Z","score":36}}}},"grade_history":[],"reviews":[]}