MCP Server LeetCode
by doggybee
MCP Server LeetCode enables AI assistants to access LeetCode problems, user information, and contest data. It provides a fast and efficient way to integrate LeetCode functionalities into AI applications.
Last updated: N/A
MCP Server LeetCode
npm version GitHub license Version smithery badge
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