jinzcdev/leetcode-mcp-server

jinzcdev/leetcode-mcp-server

от jinzcdev
MCP сервер для LeetCode: поиск задач, получение решений и профилей, отправка кода. Помогает разработчикам автоматизировать подготовку к собеседованиям и отслеживать прогресс в алгоритмах.

LeetCode MCP Server

NPM Version Chinese Doc NPM Downloads GitHub License LeetCode MCP Server on Glama Stars

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 programming problems, contests, solutions, and user data.

Features

  • 🌐 Multi-site Support: Support​ both leetcode.com (Global) and leetcode.cn (China) platforms
  • 🔌 Dual Transport Modes: Run as a stdio process (default) or as a Streamable HTTP server for web-based integrations
  • 📊 Problem Data Retrieval: Obtain detailed problem descriptions, constraints, examples, official editorials, and ​user-submitted solutions
  • 👤 User Data Access: Retrieve user profiles, submission history, and contest performance
  • 🔒 ​Private Data Access: Create and query user notes, manage problem lists, track problem-solving progress, and analyze submission details (AC/WA analysis)
  • 🔍 Advanced Search Capabilities: Filter problems by tags, difficulty levels, categories, and keywords
  • 📅 Daily Challenge Access: Easily access daily challenge problems

Часто задаваемые вопросы

Инструменты были проиндексированы:
get_all_submissions

Получает постраничную историю отправок для аутентифицированного пользователя на LeetCode Global (только чтение, требуется авторизация). Опционально фильтрует по слагу задачи. Используйте get_recent_submissions/get_recent_ac_submissions, чтобы просмотреть публичную недавнюю историю любого пользователя. Используйте get_problem_submission_report, когда у вас есть конкретный идентификатор отправки и нужны исходный код и результаты тестов.

Параметры
  • limitnumber

    Отправок на страницу (по умолчанию: 20)

  • offsetnumber

    Смещение пагинации - количество отправок, которые нужно пропустить (по умолчанию: 0)

  • questionSlugstring

    Фильтрует по slug задачи (например, 'two-sum'). Если не указать, вернутся все задачи.

get_daily_challenge

Получает сегодняшнюю задачу Daily Challenge с полным описанием (только чтение, без авторизации). Возвращает детали задачи для текущей даты в формате JSON. Используйте get_problem, когда вы знаете конкретный titleSlug; используйте search_problems, чтобы находить задачи по фильтрам.

Параметры

Без параметров.

get_problem

Получает одну задачу LeetCode по titleSlug (только чтение, без авторизации). Возвращает описание, примеры, ограничения и метаданные в формате JSON. Используйте search_problems для поиска задач по ключевому слову/тегу/сложности; используйте get_daily_challenge для получения сегодняшней избранной задачи.

Параметры
  • titleSlugstringобязательный

    URL-слаг задачи (например, 'two-sum', 'add-two-numbers') - сегмент пути после /problems/

get_problem_progress

Получает прогресс решения по каждой задаче аутентифицированного пользователя (только чтение, требуется аутентификация). Фильтрует по статусу ATTEMPTED/SOLVED и сложности; поддерживает пагинацию. Используется для отслеживания того, какие задачи текущий пользователь попробовал или решил. get_all_submissions используется для отдельных записей отправок с кодом и временем выполнения, а get_recent_ac_submissions - для публичного списка AC другого пользователя.

Параметры
  • difficultystring[]

    Фильтрует по сложности, например ['EASY', 'MEDIUM', 'HARD']. Не указывайте, чтобы включить все уровни.

  • limitnumber

    Максимум вопросов на страницу (по умолчанию: 100)

  • offsetnumber

    Смещение пагинации - число вопросов, которые нужно пропустить (по умолчанию: 0)

  • questionStatusenum

    'ATTEMPTED' = попытались, но не обязательно решили; 'SOLVED' = успешно завершено. Пропустите, чтобы вернуть все.

get_problem_solution

Получает полное содержимое статьи решения сообщества (только чтение, без авторизации). Требует topicId из list_problem_solutions. Возвращает текст статьи, автора и метаданные в формате JSON. Сначала используйте list_problem_solutions, чтобы найти решения и получить topicId.

Параметры
  • topicIdstringобязательный

    topicId решения из ответа list_problem_solutions

get_problem_submission_report

Получает полные сведения об одной отправке по идентификатору (только для чтения, требуется авторизация). Возвращает исходный код, время выполнения, память и результаты тестов в формате JSON. Используйте, когда у вас есть идентификатор отправки из get_all_submissions или get_recent_submissions. Используйте get_all_submissions для просмотра или перечисления отправок; не используйте его, когда вам нужны код и результаты только одной отправки.

Параметры
  • idnumberобязательный

    Числовой ID посылки (например, из ответа get_all_submissions или get_recent_submissions)

get_recent_ac_submissions

Получает недавние принятые (AC) решения пользователя (только для чтения, без авторизации). Доступно как на Global, так и на CN. Используйте get_recent_submissions (только Global), чтобы включить неудачные попытки, или get_all_submissions (авторизация, текущий пользователь) для полной истории с постраничной разбивкой.

Параметры
  • limitnumber

    Максимальное количество AC-посылок для возврата (по умолчанию: 10)

  • usernamestringобязательный

    Имя пользователя LeetCode, чьи публичные недавние AC-отправки нужно получить

get_recent_submissions

Получает историю недавних отправок пользователя на LeetCode Global (только чтение, без авторизации). Включает как принятые, так и неудачные отправки. Только глобальная версия, недоступна на CN. Используйте get_recent_ac_submissions для результатов только с принятыми отправками, или get_all_submissions (авторизация, текущий пользователь) для постраничной полной истории с фильтрами.

Параметры
  • limitnumber

    Максимум отправок для возврата (по умолчанию: 10). Увеличьте, чтобы получить больше истории в пределах недавнего окна.

  • usernamestringобязательный

    Имя пользователя LeetCode, чьи последние публичные отправки нужно получить

get_user_contest_ranking

Получает рейтинг пользователя в соревнованиях и историю участия (только чтение, без авторизации). Возвращает общий рейтинг, место и результаты по каждому соревнованию в формате JSON. Используйте get_user_profile для общих статистических данных и рейтинга; используйте этот инструмент специально для данных о результатах соревнований.

Параметры
  • attendedboolean

    true = только контесты, в которых участвовал пользователь (по умолчанию); false = включать все контесты из истории

  • usernamestringобязательный

    Имя пользователя LeetCode, для которого нужно запросить рейтинг в контестах.

get_user_profile

Получает публичный профиль любого пользователя по имени пользователя (только чтение, без аутентификации). Возвращает рейтинг, аватар, биографию, статистику отправок и прогресс по конкретной платформе. Используйте это для поиска других пользователей или публичной статистики. Вместо этого используйте get_user_status (требуется аутентификация), чтобы проверить состояние входа текущего пользователя сессии, а не для поиска произвольных пользователей.

Параметры
  • usernamestringобязательный

    Имя пользователя LeetCode (с учётом регистра). Поиск публичного профиля; аутентификация не требуется.

get_user_status

Проверяет сеанс входа аутентифицированного пользователя в LeetCode (только чтение, требуется авторизация). Возвращает isSignedIn, username, avatar и флаг admin в формате JSON. Доступен только при настроенных учётных данных. Используйте это для проверки состояния входа или определения текущего пользователя, а не для поиска других пользователей (для этого используйте get_user_profile). Если учётные данные отсутствуют или недействительны, возвращается ошибка { error: message }.

Параметры

Без параметров.

list_problem_solutions

Перечисляет статьи с решениями сообщества для задачи (только чтение, без авторизации). Возвращает только метаданные (topicId), а не полное содержимое. Используйте get_problem_solution с возвращённым topicId, чтобы прочитать полную статью. Не вызывайте этот инструмент, когда у вас уже есть topicId и нужен текст решения.

Параметры
  • limitnumber

    Максимум решений на странице (по умолчанию: 10)

  • orderByenum

    Порядок сортировки: 'HOT' (по умолчанию), 'MOST_VOTES' или 'MOST_RECENT'

  • questionSlugstringобязательный

    URL-слаг задачи (например, 'two-sum') - тот же, что и в /problems/{slug}

  • skipnumber

    Сколько решений пропустить при пагинации (по умолчанию: 0)

  • tagSlugsstring[]

    Фильтрует по тегам языка или алгоритма, например ['python', 'dynamic-programming']

  • userInputstring

    Фильтр по ключевому слову в заголовке решения, содержимом или авторе (без учёта регистра)

run_code

Запускает код на тестовых случаях без отправки (побочный эффект: создаёт запрос interpret на LeetCode, требуется авторизация). Опрашивает /check/ до завершения; возвращает стартовый ответ и финальный JSON проверки. Поддерживает пользовательский ввод через dataInput. Используйте submit_solution для официальной проверки; используйте run_code только для тестирования и отладки.

Параметры
  • dataInputstring

    Пользовательский тестовый ввод. Оставьте пустым, чтобы использовать стандартные тестовые примеры LeetCode.

  • langenumобязательный

    Слаг языка (например, 'python3', 'cpp', 'java')

  • pollIntervalMsinteger

    Интервал опроса в миллисекундах (по умолчанию: 1500)

  • timeoutMsinteger

    Максимальное время ожидания результата в мс (по умолчанию: 120000)

  • titleSlugstringобязательный

    URL-слаг задачи (например, 'two-sum')

  • typedCodestringобязательный

    Исходный код для запуска (не логируется этим сервером)

search_problems

Ищет задачи LeetCode по категории, тегам, сложности и ключевым словам (только чтение, без авторизации). Поддерживает пагинацию через limit/offset. Возвращает список подходящих задач в формате JSON. Используйте get_problem, когда вы уже знаете titleSlug; используйте этот инструмент для просмотра или нахождения задач.

Параметры
  • categoryenum

    Категория набора задач (например, 'algorithms', 'database'). По умолчанию: 'all-code-essentials'.

  • difficultyenum

    Фильтр сложности. Пропускать для всех уровней.

  • limitnumber

    Максимум результатов на странице (1-50, по умолчанию 20)

  • offsetnumber

    Количество результатов, пропускаемых при постраничной навигации (по умолчанию: 0)

  • searchKeywordsstring

    Поиск по ключевым словам в названиях и описаниях задач

  • tagsenum[]

    Теги тем для фильтрации, например ['array', 'dynamic-programming']. Без указания фильтр по тегам не применяется.

submit_solution

Отправляет код на официальную проверку (побочный эффект: создаёт решение на LeetCode, требует авторизации). Опрашивает /check/ до завершения; возвращает начальный ответ и финальный JSON проверки. Учитывается в истории отправок. Используйте run_code для пробного прогона с необязательными пользовательскими входными данными; используйте submit_solution, когда будете готовы к финальной проверке.

Параметры
  • langenumобязательный

    Слаг языка (например, 'python3', 'cpp', 'java')

  • pollIntervalMsinteger

    Интервал опроса в миллисекундах (по умолчанию: 1500)

  • timeoutMsinteger

    Максимальное время ожидания результата в мс (по умолчанию: 120000)

  • titleSlugstringобязательный

    URL-слаг задачи (например, 'two-sum')

  • typedCodestringобязательный

    Исходный код для отправки (не логируется этим сервером)

1.4.0основная
1.3.0
1.2.0
1.1.0
1.0.1
0.1.1

Выберите клиент, чтобы установить jinzcdev/leetcode-mcp-server:

Любой клиент

Конфиг добавления MCP сервера стандартный, обычно он не меняется вообще, поэтому подходит практически к любому ИИ клиенту, поддерживающему MCP.

{
  "mcpServers": {
    "jinzcdev-leetcode-mcp-server-amqq1rnrkn": {
      "command": "npx",
      "args": [
        "-y",
        "@jinzcdev/leetcode-mcp-server"
      ],
      "env": {
        "LEETCODE_SITE": "global",
        "LEETCODE_SESSION": "<YOUR_LEETCODE_SESSION_COOKIE>"
      }
    }
  }
}
CursorCursor

Перейдите по ссылке и сервер автоматически будет добавлен в Cursor. Либо откройте/создайте файл ~/.cursor/mcp.json(%USERPROFILE%\.cursor\mcp.json на Windows) и добавьте конфиг сервера:

{
  "mcpServers": {
    "jinzcdev-leetcode-mcp-server-amqq1rnrkn": {
      "command": "npx",
      "args": [
        "-y",
        "@jinzcdev/leetcode-mcp-server"
      ],
      "env": {
        "LEETCODE_SITE": "global",
        "LEETCODE_SESSION": "<YOUR_LEETCODE_SESSION_COOKIE>"
      }
    }
  }
}
VS Code

Создайте .vscode/mcp.json в проекте (ключ верхнего уровня — servers):

{
  "servers": {
    "jinzcdev-leetcode-mcp-server-amqq1rnrkn": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@jinzcdev/leetcode-mcp-server"
      ],
      "env": {
        "LEETCODE_SITE": "global",
        "LEETCODE_SESSION": "<YOUR_LEETCODE_SESSION_COOKIE>"
      }
    }
  }
}

Либо добавьте сервер через терминал:

code --add-mcp "{\"name\":\"jinzcdev-leetcode-mcp-server-amqq1rnrkn\",\"type\":\"stdio\",\"command\":\"npx\",\"args\":[\"-y\",\"@jinzcdev/leetcode-mcp-server\"],\"env\":{\"LEETCODE_SITE\":\"global\",\"LEETCODE_SESSION\":\"<YOUR_LEETCODE_SESSION_COOKIE>\"}}"
ClaudeClaude Desktop

Откройте Settings → Developer → Edit Config — это откроет файл claude_desktop_config.json:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Впишите сервер и полностью перезапустите Claude Desktop:

{
  "mcpServers": {
    "jinzcdev-leetcode-mcp-server-amqq1rnrkn": {
      "command": "npx",
      "args": [
        "-y",
        "@jinzcdev/leetcode-mcp-server"
      ],
      "env": {
        "LEETCODE_SITE": "global",
        "LEETCODE_SESSION": "<YOUR_LEETCODE_SESSION_COOKIE>"
      }
    }
  }
}
Claude CodeClaude Code

Добавьте сервер одной командой в терминале:

claude mcp add jinzcdev-leetcode-mcp-server-amqq1rnrkn --env LEETCODE_SITE=global --env LEETCODE_SESSION=<YOUR_LEETCODE_SESSION_COOKIE> -- npx -y @jinzcdev/leetcode-mcp-server

Либо через JSON-конфиг:

claude mcp add-json jinzcdev-leetcode-mcp-server-amqq1rnrkn "{\"command\":\"npx\",\"args\":[\"-y\",\"@jinzcdev/leetcode-mcp-server\"],\"env\":{\"LEETCODE_SITE\":\"global\",\"LEETCODE_SESSION\":\"<YOUR_LEETCODE_SESSION_COOKIE>\"}}"
CodexCodex

Добавьте сервер командой в терминале:

codex mcp add jinzcdev-leetcode-mcp-server-amqq1rnrkn --env LEETCODE_SITE=global --env LEETCODE_SESSION=<YOUR_LEETCODE_SESSION_COOKIE> -- npx -y @jinzcdev/leetcode-mcp-server

Либо вручную в ~/.codex/config.toml(%USERPROFILE%\.codex\config.toml на Windows):

[mcp_servers.jinzcdev-leetcode-mcp-server-amqq1rnrkn]
command = "npx"
args = ["-y", "@jinzcdev/leetcode-mcp-server"]

[mcp_servers.jinzcdev-leetcode-mcp-server-amqq1rnrkn.env]
LEETCODE_SITE = "global"
LEETCODE_SESSION = "<YOUR_LEETCODE_SESSION_COOKIE>"
PerplexityPerplexity

MCP доступен подписчикам Perplexity Pro / Max / Enterprise. Локальные серверы — только в приложении для macOS.

  1. Откройте Настройки аккаунта → Connectors.
  2. Установите вспомогательное приложение PerplexityXPC (один раз).
  3. Нажмите Add Connector → вкладка Simple.
  4. В поле Server Name укажите jinzcdev/leetcode-mcp-server, а в поле команды запуска — строку ниже:
npx -y @jinzcdev/leetcode-mcp-server

Нажмите Save и дождитесь статуса Running.

WindsurfWindsurf

Откройте Windsurf Settings → Cascade → MCP Servers или отредактируйте файл ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "jinzcdev-leetcode-mcp-server-amqq1rnrkn": {
      "command": "npx",
      "args": [
        "-y",
        "@jinzcdev/leetcode-mcp-server"
      ],
      "env": {
        "LEETCODE_SITE": "global",
        "LEETCODE_SESSION": "<YOUR_LEETCODE_SESSION_COOKIE>"
      }
    }
  }
}
ClineCline

В панели Cline нажмите иконку MCP Servers → Configure → Configure MCP Servers (или отредактируйте ~/.cline/mcp.json) и добавьте сервер:

{
  "mcpServers": {
    "jinzcdev-leetcode-mcp-server-amqq1rnrkn": {
      "command": "npx",
      "args": [
        "-y",
        "@jinzcdev/leetcode-mcp-server"
      ],
      "env": {
        "LEETCODE_SITE": "global",
        "LEETCODE_SESSION": "<YOUR_LEETCODE_SESSION_COOKIE>"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}
Continue

Создайте файл в .continue/mcpServers/ (например jinzcdev-leetcode-mcp-server-amqq1rnrkn.yaml) или добавьте блок в config.yaml. MCP работает только в режиме agent:

mcpServers:
  - name: jinzcdev-leetcode-mcp-server-amqq1rnrkn
    command: npx
    args:
      - "-y"
      - "@jinzcdev/leetcode-mcp-server"
    env:
      LEETCODE_SITE: global
      LEETCODE_SESSION: <YOUR_LEETCODE_SESSION_COOKIE>
Zed

Выполните agent: add context server или откройте настройки (zed: open settings file) и добавьте сервер в объект context_servers:

{
  "context_servers": {
    "jinzcdev-leetcode-mcp-server-amqq1rnrkn": {
      "command": "npx",
      "args": [
        "-y",
        "@jinzcdev/leetcode-mcp-server"
      ],
      "env": {
        "LEETCODE_SITE": "global",
        "LEETCODE_SESSION": "<YOUR_LEETCODE_SESSION_COOKIE>"
      }
    }
  }
}

Похожие MCP-сервера

SunflowersLwtech/mcp_creator_growth

SunflowersLwtech/mcp_creator_growth

от sunflowerslwtech

MCP-сервер для AI-ассистентов, который помогает разработчикам учиться на изменениях кода через интерактивные викторины и сохраняет историю отладки проектов для быстрого поиска решений похожих ошибо...

TypeScript⭐ 8
r-huijts/ethics-check-mcp

r-huijts/ethics-check-mcp

от r-huijts

MCP сервер превращает ИИ в спарринг-партнера, прерывая комфортные беседы и оспаривая ваши предположения. Помогает выявлять когнитивные искажения, избегать предвзятости подтверждения и принимать осознанные решения. Для тех, кто ценит критическое мышление.

TypeScript⭐ 5
clouatre-labs/math-mcp-learning-server

clouatre-labs/math-mcp-learning-server

от clouatre-labs

Образовательный MCP сервер с 17 инструментами для математических вычислений, статистики, работы с матрицами и визуализации. Подходит студентам, преподавателям и разработчикам. Поддерживает облачный хостинг и персистентное рабочее пространство.

Python⭐ 5
anki-mcp/anki-mcp-desktop

anki-mcp/anki-mcp-desktop

от anki-mcp

Управляет колодами и карточками Anki: создаёт заметки, редактирует поля, проводит повторения по расписанию и синхронизирует с AnkiWeb.

TypeScript⭐ 521
rember/rember-mcp

rember/rember-mcp

от rember

Сервер Rember через MCP создаёт флеш-карточки для запоминания с интервальными повторениями — прямо из чатов с ИИ или PDF. Полезен студентам и всем, кто учится. Просто попросите «помоги запомнить» или «создай карточки», и инструмент сгенерирует заметки в Rember.

TypeScript⭐ 63
RohanMuppa/brightspace-mcp-server

RohanMuppa/brightspace-mcp-server

от rohanmuppa

MCP сервер для прямого доступа к курсам Brightspace через ИИ-ассистентов. Позволяет запрашивать оценки, дедлайны и объявления. Полезен студентам, работающим с Claude, ChatGPT или Cursor в вузах, использующих D2L.

TypeScript⭐ 59
© Каталог MCP, 2026. Все права защищены.
Проект не аффилирован с Anthropic и любыми упомянутыми продуктами.
Все названия и торговые марки принадлежат их владельцам.
Контакты для связи: hi@mcp-katalog.ru

Лука Никитин