Skip to main content
Glama

LeetCode MCP Server

LeetCode MCP 服务器

LeetCode MCP 服务器是一个模型上下文协议 (MCP)服务器,可与 LeetCode API 无缝集成,实现与 LeetCode 的编程问题、竞赛、解决方案和用户数据的高级自动化和智能交互。

特征

  • 🌐多站点支持:支持 leetcode.com(全球)和 leetcode.cn(中国)平台
  • 📊问题数据检索:获取详细的问题描述、约束、示例、官方社论和用户提交的解决方案
  • 👤用户数据访问:检索用户个人资料、提交历史记录和竞赛表现
  • 🔒私人数据访问:创建和查询用户笔记、跟踪问题解决进度以及分析提交详细信息(AC/WA 分析)
  • 🔍高级搜索功能:按标签、难度级别、类别和关键字过滤问题
  • 📅每日挑战访问:轻松访问每日挑战问题

先决条件

  1. Node.js 运行时环境
  2. (可选)LeetCode 会话 cookie,用于经过身份验证的 API 访问

安装

通过 Smithery 安装

要通过Smithery自动为 Claude Desktop 安装 leetcode-mcp-server:

npx -y @smithery/cli install @jinzcdev/leetcode-mcp-server --client claude

手动安装

# Install from npm npm install @jinzcdev/leetcode-mcp-server -g # Or run with Global site configuration npx -y @jinzcdev/leetcode-mcp-server --site global # Run with authentication (for accessing private data) npx -y @jinzcdev/leetcode-mcp-server --site global --session <YOUR_LEETCODE_SESSION_COOKIE>

或者,您可以克隆存储库并在本地运行它:

# Clone the repository git clone https://github.com/jinzcdev/leetcode-mcp-server.git # Navigate to the project directory cd leetcode-mcp-server # Build and run the server npm run build && node build/index.js --site global

用法

Visual Studio Code 集成

将以下 JSON 配置添加到您的“用户设置 (JSON)”文件中。按Ctrl/Cmd + Shift + P并搜索Preferences: Open User Settings (JSON)即可访问。

选项 1:使用环境变量
{ "mcp": { "servers": { "leetcode": { "type": "stdio", "command": "npx", "args": ["-y", "@jinzcdev/leetcode-mcp-server"], "env": { "LEETCODE_SITE": "global", "LEETCODE_SESSION": "<YOUR_LEETCODE_SESSION_COOKIE>" } } } } }
选项 2:使用命令行参数
{ "mcp": { "servers": { "leetcode": { "type": "stdio", "command": "npx", "args": [ "-y", "@jinzcdev/leetcode-mcp-server", "--site", "global", "--session", "<YOUR_LEETCODE_SESSION_COOKIE>" ] } } } }

对于 LeetCode 中国站,将--site参数修改为cn

[!提示]

服务器支持以下环境变量:

  • LEETCODE_SITE :LeetCode API 端点('global' 或 'cn')
  • LEETCODE_SESSION :用于经过身份验证的 API 访问的 LeetCode 会话 cookie

优先级说明:当同时指定命令行参数和环境变量时,命令行参数优先于环境变量。例如:

  • 如果设置了LEETCODE_SITE=cn但运行leetcode-mcp-server --site global ,则服务器将使用global
  • 如果LEETCODE_SESSION存在但您提供了--session "new_cookie" ,则将使用命令行会话值。

可用工具

问题

工具全球的中国需要授权描述
获取每日挑战检索今天的 LeetCode 每日挑战题
获取问题检索特定 LeetCode 问题的详细信息
搜索问题使用多个过滤条件搜索 LeetCode 问题

用户

工具全球的中国需要授权描述
获取用户配置文件检索 LeetCode 用户的个人资料信息
获取用户竞赛排名获取用户的比赛排名统计信息
获取最近的 ac 提交检索用户最近接受的提交
获取最近的提交检索用户最近的提交历史记录
获取用户状态检索当前用户的当前状态
获取问题提交报告针对特定问题提供详细的提交分析
获取问题进度检索当前用户的问题解决进度
获取所有提交检索当前用户的提交历史记录

笔记

工具全球的中国需要授权描述
搜索笔记使用过滤选项搜索用户注释
获取注释根据问题 ID 检索特定问题的注释
创建注释为特定问题创建新注释
更新说明使用新内容更新现有笔记

解决方案

工具全球的中国需要授权描述
列出问题解决方案检索特定问题的社区解决方案列表
获取问题解决方案检索特定解决方案的完整内容

工具参数

问题

  • get_daily_challenge - 检索今天的 LeetCode 每日挑战问题及其完整详细信息
    • 无需参数
  • get_problem - 检索有关特定 LeetCode 问题的详细信息
    • titleSlug :问题的 URL slug/标识符(字符串,必需)
  • search_problems - 根据多个过滤条件搜索 LeetCode 问题
    • category :问题类别过滤器(字符串,可选,默认值:“all-code-essentials”)
    • tags :用于过滤问题的主题标签列表(string[],可选)
    • difficulty :问题难度级别过滤器(枚举:“EASY”,“MEDIUM”,“HARD”,可选)
    • searchKeywords :在问题标题和描述中搜索的关键字(字符串,可选)
    • limit :返回的最大问题数量(数字,可选,默认值:10)
    • offset :要跳过的问题数量(数字,可选)

用户

  • get_user_profile - 检索有关 LeetCode 用户的个人资料信息
    • username :LeetCode 用户名(字符串,必需)
  • get_user_contest_ranking - 检索用户的比赛排名信息
    • username :LeetCode 用户名(字符串,必需)
    • attended :是否仅包含用户参加过的比赛(布尔值,可选,默认值:true)
  • get_recent_submissions - 检索用户在 LeetCode Global 上的最近提交
    • username :LeetCode 用户名(字符串,必需)
    • limit :返回的最大提交数量(数字,可选,默认值:10)
  • get_recent_ac_submissions - 检索用户最近接受的提交
    • username :LeetCode 用户名(字符串,必需)
    • limit :返回的最大提交数量(数字,可选,默认值:10)
  • **get_user_status——**检索当前用户的状态
    • 无需参数
  • get_problem_submission_report - 检索有关特定提交的详细信息
    • id :数字提交 ID(数字,必需)
  • get_problem_progress - 检索当前用户的问题解决进度
    • offset :要跳过的问题数量(数字,可选,默认值:0)
    • limit :返回的最大问题数量(数字,可选,默认值:100)
    • questionStatus :按问题状态过滤(枚举:“ATTEMPTED”,“SOLVED”,可选)
    • difficulty :按难度级别过滤(string[],可选)
  • get_all_submissions - 检索用户提交的分页列表
    • limit :返回的最大提交数量(数字,默认值:20)
    • offset :要跳过的提交次数(数字,默认值:0)
    • questionSlug :可选问题标识符(字符串,可选)
    • lang :编程语言过滤器(字符串,可选,仅限 CN)
    • status :提交状态过滤器(枚举:“AC”、“WA”,可选,仅限 CN)
    • lastKey :用于检索下一页的分页令牌(字符串,可选,仅限 CN)

笔记

  • search_notes - 搜索 LeetCode 中国用户笔记
    • keyword :用于过滤笔记的搜索词(字符串,可选)
    • limit :返回的最大注释数(数字,可选,默认值:10)
    • skip :要跳过的注释数(数字,可选,默认值:0)
    • orderBy :返回注释的排序顺序(枚举:“ASCENDING”,“DESCENDING”,可选,默认值:“DESCENDING”)
  • get_note - 检索特定 LeetCode 问题的用户注释
    • questionId :LeetCode 问题的问题 ID(字符串,必需)
    • limit :返回的最大注释数(数字,可选,默认值:10)
    • skip :要跳过的注释数(数字,可选,默认值:0)
  • create_note - 为特定的 LeetCode 问题创建新的注释
    • questionId :LeetCode 问题的问题 ID(字符串,必需)
    • content :笔记内容,支持 markdown 格式(字符串,必填)
    • summary :注释的可选简短摘要或标题(字符串,可选)
  • update_note - 使用新内容或摘要更新现有注释
    • noteId :要更新的注释的 ID(字符串,必需)
    • content :笔记的新内容,支持 markdown 格式(字符串,必需)
    • summary :注释的可选新简短摘要或标题(字符串,可选)

解决方案

  • list_problem_solutions - 检索特定问题的社区解决方案列表
    • questionSlug :问题的 URL slug/标识符(字符串,必需)
    • limit :返回的最大解决方案数量(数字,可选,默认值:10)
    • skip :跳过的解决方案数量(数字,可选)
    • userInput :用于过滤解决方案的搜索词(字符串,可选)
    • tagSlugs :用于过滤解决方案的标签标识符数组(string[],可选,默认值:[])
    • orderBy :返回解决方案的排序标准
      • 全局:枚举:“HOT”、“MOST_RECENT”、“MOST_VOTES”,可选,默认值:“HOT”
      • CN:枚举:“DEFAULT”、“MOST_UPVOTE”、“HOT”、“NEWEST_TO_OLDEST”、“OLDEST_TO_NEWEST”,可选,默认值:“DEFAULT”
  • get_problem_solution - 检索特定解决方案的完整内容
    • topicId :解决方案的唯一主题 ID(字符串,必需,仅限全局)
    • slug :解决方案的唯一 slug/标识符(字符串,必需,仅限 CN)

可用资源

资源名称全球的中国需要授权描述
问题类别所有问题分类类别的列表
问题标签算法和数据结构标签的详细集合
问题语言所有受支持的编程语言的完整列表
问题细节提供有关特定问题的详细信息
问题解决提供特定解决方案的完整内容

资源 URI

  • 问题类别- 所有问题分类类别的列表
    • URI: categories://problems/all
  • 问题标签- 算法和数据结构标签的详细集合
    • URI: tags://problems/all
  • problem-langs - LeetCode 支持的所有编程语言的完整列表
    • URI: langs://problems/all
  • 问题详情- 提供有关特定 LeetCode 问题的详细信息
    • URI: problem://{titleSlug}
    • 参数:
      • titleSlug :LeetCode URL 中出现的问题标识符
  • 问题解决方案- 提供特定解决方案的完整内容
    • 全局 URI: solution://{topicId}
      • 参数:
        • topicId :解决方案的唯一主题ID
    • CN URI: solution://{slug}
      • 参数:
        • slug :解决方案的唯一 slug/标识符

验证

用户特定数据访问需要 LeetCode 会话认证:

  1. 登录 LeetCode(全球中国站)
  2. 从浏览器开发者工具中提取LEETCODE_SESSION cookie
  3. 使用--session标志或LEETCODE_SESSION环境变量配置服务器

响应格式

所有��具都返回具有以下结构的 JSON 格式的响应:

{ "content": [ { "type": "text", "text": "JSON_DATA_STRING" } ] }

JSON_DATA_STRING包含请求的数据或失败请求的错误消息。

执照

该项目已获得 MIT 许可。

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

模型上下文协议服务器提供与 LeetCode API 的集成,实现 leetcode.com 和 leetcode.cn 平台上编程问题、竞赛、解决方案和用户数据的自动交互。

  1. 特征
    1. 先决条件
      1. 安装
        1. 通过 Smithery 安装
        2. 手动安装
      2. 用法
        1. Visual Studio Code 集成
      3. 可用工具
        1. 问题
        2. 用户
        3. 笔记
        4. 解决方案
      4. 工具参数
        1. 问题
        2. 用户
        3. 笔记
        4. 解决方案
      5. 可用资源
        1. 资源 URI
          1. 验证
            1. 响应格式
              1. 执照

                Related MCP Servers

                • -
                  security
                  F
                  license
                  -
                  quality
                  Server that enhances the capabilities of the Cline coding agent. It provides intelligent code suggestions, reduces hallucinations, and documents the knowledge base by leveraging your project's documentation and detecting the technologies used in your codebase.
                  Last updated -
                  10
                  JavaScript
                • A
                  security
                  A
                  license
                  A
                  quality
                  A Model Context Protocol server that provides tools for code modification and generation via Large Language Models, allowing users to create, modify, rewrite, and delete files using structured XML instructions.
                  Last updated -
                  12
                  Python
                  MIT License
                  • Linux
                  • Apple
                • -
                  security
                  A
                  license
                  -
                  quality
                  A Model Context Protocol server that provides a standardized interface for interacting with Notion's API, enabling users to list databases, create pages, and search across their Notion workspace.
                  Last updated -
                  95
                  Python
                  MIT License
                  • Apple
                • -
                  security
                  F
                  license
                  -
                  quality
                  A Model Context Protocol server that provides a comprehensive interface for interacting with the ConnectWise Manage API, simplifying API discovery, execution, and management for both developers and AI assistants.
                  Last updated -
                  46
                  2
                  Python
                  • Linux
                  • Apple

                View all related MCP servers

                MCP directory API

                We provide all the information about MCP servers via our MCP API.

                curl -X GET 'https://glama.ai/api/mcp/v1/servers/jinzcdev/leetcode-mcp-server'

                If you have feedback or need assistance with the MCP directory API, please join our Discord server