The LeetCode MCP Server is a Model Context Protocol (MCP) server that provides seamless integration with LeetCode APIs, enabling advanced automation and intelligent interaction with LeetCode's…
LeetCode MCP Server is an MCP project maintained in the jinzcdev/leetcode-mcp-server repository. The maintainer describes its purpose as “The LeetCode MCP Server is a Model Context Protocol (MCP) server that provides seamless integration with LeetCode APIs, enabling advanced automation and intelligent interaction with…”. Read the project documentation for the complete scope.
The documented npm package is @jinzcdev/leetcode-mcp-server. The configuration below comes from the maintainer’s example; adapt its paths and account values to your environment.
The example declares LEETCODE_SITE, LEETCODE_SESSION. Secret-looking values have been replaced with placeholders. Required and optional labels are shown only when the documentation states them.
Project documentation · Repository · Discovery listing. This profile records the public documentation checked on 2026-10-08.
Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.
| Tool | What it does |
|---|---|
| get_daily_challenge | Retrieves today's LeetCode Daily Challenge problem with complete details |
| get_problem | Retrieves details about a specific LeetCode problem |
| search_problems | Searches for LeetCode problems based on multiple filter criteria |
| get_user_profile | Retrieves profile information about a LeetCode user |
| get_user_contest_ranking | Retrieves a user's contest ranking information |
| get_recent_ac_submissions | Retrieves a user's recent accepted submissions |
| get_recent_submissions | Retrieves a user's recent submissions on LeetCode Global |
| get_user_status | Retrieves the current user's status |
| get_problem_submission_report | Retrieves detailed information about a specific submission |
| get_problem_progress | Retrieves the current user's problem-solving progress |
| get_all_submissions | Retrieves paginated list of user's submissions |
| run_code | Runs code for a specific problem and waits until finished (requires authentication) |
| submit_solution | Submits code for a specific problem and waits until finished (requires authentication) |
| search_notes | Searches for user notes on LeetCode China |
| get_note | Retrieves user notes for a specific LeetCode problem |
| create_note | Creates a new note for a specific LeetCode problem |
| update_note | Updates an existing note with new content or summary |
| list_problem_solutions | Retrieves a list of community solutions for a specific problem |
| get_problem_solution | Retrieves the complete content of a specific solution |
| titleSlug | The URL slug/identifier of the problem (string, required) |
| category | Problem category filter (string, optional, default: "all-code-essentials") |
| tags | List of topic tags to filter problems by (string[], optional) |
| difficulty | Filter by difficulty levels (string[], optional) |
| searchKeywords | Keywords to search in problem titles and descriptions (string, optional) |
| limit | Maximum number of solutions to return (number, optional, default: 10) |
| offset | Number of submissions to skip (number, default: 0) |
| username | LeetCode username (string, required) |
| attended | Whether to include only the contests the user has participated in (boolean, optional, default: true) |
| id | The numerical submission ID (number, required) |
| questionStatus | Filter by question status (enum: "ATTEMPTED", "SOLVED", optional) |
| questionSlug | The URL slug/identifier of the problem (string, required) |
| lang | Programming language (string enum, required) |
| status | Submission status filter (enum: "AC", "WA", optional, CN only) |
| lastKey | Pagination token for retrieving next page (string, optional, CN only) |
| typedCode | Source code to submit (string, required) |
| dataInput | Custom input to run (string, optional) |
| timeoutMs | Polling timeout in milliseconds (number, optional, default: 120000) |
| pollIntervalMs | Polling interval in milliseconds (number, optional, default: 1500) |
| keyword | Search term to filter notes (string, optional) |
| skip | Number of solutions to skip (number, optional) |
| orderBy | Sorting criteria for the returned solutions |
| questionId | The question ID of the LeetCode problem (string, required) |
| content | The new content for the note, supports markdown format (string, required) |
| summary | An optional new short summary or title for the note (string, optional) |
| noteId | The ID of the note to update (string, required) |
| userInput | Search term to filter solutions (string, optional) |
| tagSlugs | Array of tag identifiers to filter solutions (string[], optional, default: []) |
| Global | enum: "HOT", "MOST_RECENT", "MOST_VOTES", optional, default: "HOT" |
| CN | enum: "DEFAULT", "MOST_UPVOTE", "HOT", "NEWEST_TO_OLDEST", "OLDEST_TO_NEWEST", optional, default: "DEFAULT" |
| topicId | Unique topic ID of the solution (string, required, Global only) |
| slug | Unique slug/identifier of the solution (string, required, CN only) |
{
"mcpServers": {
"leetcode": {
"command": "npx",
"args": [
"-y",
"@jinzcdev/leetcode-mcp-server"
],
"env": {
"LEETCODE_SITE": "global",
"LEETCODE_SESSION": "<YOUR_LEETCODE_SESSION_COOKIE>"
}
}
}
}From the project documentation. Replace placeholders and example paths before connecting.
| Variable | Description | Required |
|---|---|---|
| LEETCODE_SITE | Declared in the maintainer’s client configuration. | Check documentation |
| LEETCODE_SESSION | Declared in the maintainer’s client configuration. | Check documentation |
Give your assistant a real code sandbox — isolated cloud VMs for actually running the code it writes.
Runs Python code locally within an interactive REPL environment.
Executes Python code within ephemeral Daytona sandboxes, facilitating tasks such as code execution, file manipulation, and web server previewing.
Enables Claude to manage software development projects with project context awareness and code execution via Docker.
Give your agent a persistent workspace: files, a code sandbox and a public URL to publish to.
Build Apps and run code in 30 languages — sandboxed, with persistent sessions for agent loops.