About MCP Server LeetCode
MCP Server LeetCode is an MCP server that gives AI assistants access to LeetCode problems, user profiles and contest data through GraphQL. It suits developers who want to query LeetCode information from an AI client, and it can also be used as a CLI or a JavaScript library.
Key features
- 01Problem details and daily challenge lookup
- 02Problem search by tags and difficulty
- 03User profile and submission history queries
- 04Contest details and user contest rankings
- 05Both command line and programmable API
Use cases
- 01Finding problems that match given tags or difficulty
- 02Reviewing a user's submission history or contest ranking
- 03Calling LeetCode data from scripts or applications
MCP support
The project runs as an MCP server that exposes LeetCode tools such as get-problem and search-problems, and resources such as leetcode://daily-challenge, to MCP clients.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
7Saved tool list · updated 3w ago
This tool takes no parameters.
Details
From the project READMEMCP Server LeetCode
A Model Context Protocol (MCP) server for LeetCode that enables AI assistants to access LeetCode problems, user information, and contest data.
Features
- 🚀 Fast access to LeetCode API
- 🔍 Search problems, retrieve daily challenges, and check user profiles
- 🏆 Query contest data and rankings
- 🧩 Full support for MCP tools and resources
- 📦 Provides both CLI and programmable API
Installation
Installing via Smithery
To install mcp-server-leetcode for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @doggybee/mcp-server-leetcode --client claude
Global Installation
npm install -g @mcpfun/mcp-server-leetcode
Once installed, you can run it directly from the command line:
mcp-server-leetcode
Local Installation
npm install @mcpfun/mcp-server-leetcode
Usage
Integration with Claude for Desktop
Add the following to your Claude for Desktop claude_desktop_config.json file:
{
"mcpServers": {
"leetcode": {
"command": "mcp-server-leetcode"
}
}
}
For local development:
{
"mcpServers": {
"leetcode": {
"command": "node",
"args": ["/path/to/dist/index.js"]
}
}
}
Use as a Library
import { LeetCodeService } from '@mcpfun/mcp-server-leetcode';
// Initialize the service
const leetcodeService = new LeetCodeService();
// Get daily challenge
const dailyChallenge = await leetcodeService.getDailyChallenge();
// Search problems
const problems = await leetcodeService.searchProblems({
difficulty: 'MEDIUM',
tags: 'array+dynamic-programming'
});
Available Tools
Problem-related Tools
| Tool Name | Description | Parameters |
|---|---|---|
get-daily-challenge | Get the daily challenge | None |
get-problem | Get details for a specific problem | titleSlug (string) |
search-problems | Search for problems based on criteria | tags (optional), difficulty (optional), limit (default 20), skip (default 0) |
User-related Tools
| Tool Name | Description | Parameters |
|---|---|---|
get-user-profile | Get user information | username (string) |
get-user-submissions | Get user submission history | username (string), limit (optional, default 20) |
get-user-contest-ranking | Get user contest rankings | username (string) |
Contest-related Tools
| Tool Name | Description | Parameters |
|---|---|---|
get-contest-details | Get contest details | contestSlug (string) |
Available Resources
Problem Resources
leetcode://daily-challenge: Daily challengeleetcode://problem/{titleSlug}: Problem detailsleetcode://problems{?tags,difficulty,limit,skip}: Problem list
User Resources
leetcode://user/{username}/profile: User profileleetcode://user/{username}/submissions{?limit}: User submissionsleetcode://user/{username}/contest-ranking: User contest ranking
Local Development
Clone the repository and install dependencies:
git clone https://github.com/doggybee/mcp-server-leetcode.git
cd mcp-server-leetcode
npm install
Run in development mode:
npm run dev
Build the project:
npm run build
License
MIT
Related Projects
- Model Context Protocol - MCP specifications and documentation
- Claude for Desktop - AI assistant with MCP support
Acknowledgements
- This project was inspired by alfa-leetcode-api
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.