mcp-server-leetcode

by doggybee
Verified

Integrations

  • Provides access to LeetCode problems, daily challenges, user profiles, submission history, contest data, and rankings through the LeetCode API.

MCP 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

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

Tool NameDescriptionParameters
get-daily-challengeGet the daily challengeNone
get-problemGet details for a specific problemtitleSlug (string)
search-problemsSearch for problems based on criteriatags (optional), difficulty (optional), limit (default 20), skip (default 0)
Tool NameDescriptionParameters
get-user-profileGet user informationusername (string)
get-user-submissionsGet user submission historyusername (string), limit (optional, default 20)
get-user-contest-rankingGet user contest rankingsusername (string)
Tool NameDescriptionParameters
get-contest-detailsGet contest detailscontestSlug (string)

Available Resources

Problem Resources

  • leetcode://daily-challenge: Daily challenge
  • leetcode://problem/{titleSlug}: Problem details
  • leetcode://problems{?tags,difficulty,limit,skip}: Problem list

User Resources

  • leetcode://user/{username}/profile: User profile
  • leetcode://user/{username}/submissions{?limit}: User submissions
  • leetcode://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

Acknowledgements

ID: hj5pz4f2go