Skip to main content
Glama

LeetCode MCP Server

Servidor MCP de LeetCode

El servidor MCP de LeetCode es un servidor de protocolo de contexto de modelo (MCP) que proporciona una integración perfecta con las API de LeetCode, lo que permite una automatización avanzada y una interacción inteligente con los problemas de programación, concursos, soluciones y datos de usuario de LeetCode.

Características

  • 🌐 Soporte para múltiples sitios : compatible con las plataformas leetcode.com (Global) y leetcode.cn (China)
  • Recuperación de datos de problemas : obtenga descripciones detalladas de problemas, restricciones, ejemplos, editoriales oficiales y soluciones enviadas por los usuarios.
  • 👤 Acceso a datos de usuario : recupera perfiles de usuario, historial de envíos y rendimiento del concurso
  • 🔒 Acceso a datos privados : cree y consulte notas de usuario, realice un seguimiento del progreso de la resolución de problemas y analice los detalles de los envíos (análisis AC/WA)
  • 🔍 Capacidades de búsqueda avanzada : filtre problemas por etiquetas, niveles de dificultad, categorías y palabras clave
  • 📅 Acceso a desafíos diarios : accede fácilmente a los problemas de desafíos diarios

Prerrequisitos

  1. Entorno de ejecución de Node.js
  2. (Opcional) Cookie de sesión de LeetCode para acceso a API autenticado

Instalación

Instalación mediante herrería

Para instalar leetcode-mcp-server para Claude Desktop automáticamente a través de Smithery :

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

Instalación manual

# 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>

Alternativamente, puede clonar el repositorio y ejecutarlo localmente:

# 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

Uso

Integración de Visual Studio Code

Agregue la siguiente configuración JSON a su archivo de configuración de usuario (JSON). Para acceder a ella, presione Ctrl/Cmd + Shift + P y busque Preferences: Open User Settings (JSON) .

Opción 1: Uso de variables de entorno
{ "mcp": { "servers": { "leetcode": { "type": "stdio", "command": "npx", "args": ["-y", "@jinzcdev/leetcode-mcp-server"], "env": { "LEETCODE_SITE": "global", "LEETCODE_SESSION": "<YOUR_LEETCODE_SESSION_COOKIE>" } } } } }
Opción 2: Uso de argumentos de la línea de comandos
{ "mcp": { "servers": { "leetcode": { "type": "stdio", "command": "npx", "args": [ "-y", "@jinzcdev/leetcode-mcp-server", "--site", "global", "--session", "<YOUR_LEETCODE_SESSION_COOKIE>" ] } } } }

Para el sitio LeetCode China, modifique el parámetro --site a cn .

[!CONSEJO]

El servidor admite las siguientes variables de entorno:

  • LEETCODE_SITE : Punto final de la API de LeetCode ('global' o 'cn')
  • LEETCODE_SESSION : cookie de sesión de LeetCode para acceso a API autenticado

Nota de prioridad : Los argumentos de la línea de comandos prevalecen sobre las variables de entorno cuando se especifican ambas. Por ejemplo:

  • Si se configura LEETCODE_SITE=cn pero ejecuta leetcode-mcp-server --site global , el servidor utilizará global .
  • Si LEETCODE_SESSION existe pero usted proporciona --session "new_cookie" , se utilizará el valor de la sesión de la línea de comandos.

Herramientas disponibles

Problemas

HerramientaGlobalCNSe requiere autorizaciónDescripción
obtener_desafío_diarioRecupera el problema del Desafío diario de LeetCode de hoy
obtener_problemaRecupera detalles de un problema específico de LeetCode
problemas de búsquedaBusca problemas de LeetCode con múltiples criterios de filtro

Usuarios

HerramientaGlobalCNSe requiere autorizaciónDescripción
obtener_perfil_de_usuarioRecupera información de perfil de un usuario de LeetCode
obtener_clasificación_del_concurso_de_usuariosObtiene estadísticas de clasificación del concurso para un usuario
obtener_envíos_ac_recientesRecupera los envíos aceptados recientes de un usuario
obtener_envíos_recientesRecupera el historial de envíos recientes de un usuario.
obtener_estado_del_usuarioRecupera el estado actual del usuario actual
obtener_informe_de_envío_de_problemasProporciona un análisis detallado del envío para un problema específico.
obtener_progreso_del_problemaRecupera el progreso de resolución de problemas del usuario actual.
obtener_todos_los_envíosRecupera el historial de envíos del usuario actual

Notas

HerramientaGlobalCNSe requiere autorizaciónDescripción
notas de búsquedaBusca notas de usuario con opciones de filtrado
obtener_notaRecupera notas para un problema específico por ID de pregunta
crear_notaCrea una nueva nota para un problema específico.
nota de actualizaciónActualiza una nota existente con contenido nuevo

Soluciones

HerramientaGlobalCNSe requiere autorizaciónDescripción
lista_soluciones_de_problemasRecupera una lista de soluciones comunitarias para un problema específico
obtener_solución_del_problemaRecupera el contenido completo de una solución específica

Parámetros de la herramienta

Problemas

  • get_daily_challenge : recupera el problema del desafío diario LeetCode de hoy con detalles completos
    • No se requieren parámetros
  • get_problem : recupera detalles sobre un problema específico de LeetCode
    • titleSlug : El slug/identificador de la URL del problema (cadena, obligatoria)
  • search_problems : busca problemas de LeetCode según múltiples criterios de filtro
    • category : filtro de categoría de problema (cadena, opcional, predeterminado: "all-code-essentials")
    • tags : Lista de etiquetas de temas para filtrar problemas por (cadena[], opcional)
    • difficulty : Filtro de nivel de dificultad del problema (enumeración: "FÁCIL", "MEDIO", "DIFÍCIL", opcional)
    • searchKeywords : Palabras clave para buscar en títulos y descripciones de problemas (cadena, opcional)
    • limit : Número máximo de problemas a devolver (número, opcional, predeterminado: 10)
    • offset : Número de problemas a omitir (número, opcional)

Usuarios

  • get_user_profile : recupera información de perfil sobre un usuario de LeetCode
    • username : nombre de usuario de LeetCode (cadena, obligatorio)
  • get_user_contest_ranking : recupera la información de clasificación del concurso de un usuario.
    • username : nombre de usuario de LeetCode (cadena, obligatorio)
    • attended : si se deben incluir solo los concursos en los que el usuario ha participado (booleano, opcional, predeterminado: verdadero)
  • get_recent_submissions : recupera los envíos recientes de un usuario en LeetCode Global
    • username : nombre de usuario de LeetCode (cadena, obligatorio)
    • limit : Número máximo de envíos a devolver (número, opcional, predeterminado: 10)
  • get_recent_ac_submissions : recupera los envíos aceptados recientes de un usuario
    • username : nombre de usuario de LeetCode (cadena, obligatorio)
    • limit : Número máximo de envíos a devolver (número, opcional, predeterminado: 10)
  • get_user_status - Recupera el estado del usuario actual
    • No se requieren parámetros
  • get_problem_submission_report : recupera información detallada sobre un envío específico
    • id : El ID de envío numérico (número, obligatorio)
  • get_problem_progress : recupera el progreso de resolución de problemas del usuario actual
    • offset : Número de preguntas a omitir (número, opcional, predeterminado: 0)
    • limit : Número máximo de preguntas a devolver (número, opcional, predeterminado: 100)
    • questionStatus : Filtrar por estado de la pregunta (enumeración: "INTENTADO", "RESUELTO", opcional)
    • difficulty : Filtrar por niveles de dificultad (cadena[], opcional)
  • get_all_submissions - Recupera la lista paginada de los envíos del usuario
    • limit : Número máximo de envíos a devolver (número, predeterminado: 20)
    • offset : Número de envíos a omitir (número, predeterminado: 0)
    • questionSlug : Identificador de problema opcional (cadena, opcional)
    • lang : Filtro de lenguaje de programación (cadena, opcional, solo CN)
    • status : Filtro de estado de envío (enumeración: "AC", "WA", opcional, solo CN)
    • lastKey : Token de paginación para recuperar la página siguiente (cadena, opcional, solo CN)

Notas

  • search_notes : busca notas de usuario en LeetCode China
    • keyword : término de búsqueda para filtrar notas (cadena, opcional)
    • limit : Número máximo de notas a devolver (número, opcional, predeterminado: 10)
    • skip : Número de notas a omitir (número, opcional, predeterminado: 0)
    • orderBy : Orden de clasificación para las notas devueltas (enumeración: "ASCENDENTE", "DESCENDENTE", opcional, predeterminado: "DESCENDENTE")
  • get_note - Recupera notas de usuario para un problema específico de LeetCode
    • questionId : El ID de la pregunta del problema LeetCode (cadena, obligatoria)
    • limit : Número máximo de notas a devolver (número, opcional, predeterminado: 10)
    • skip : Número de notas a omitir (número, opcional, predeterminado: 0)
  • create_note : crea una nueva nota para un problema específico de LeetCode
    • questionId : El ID de la pregunta del problema LeetCode (cadena, obligatoria)
    • content : El contenido de la nota, admite el formato Markdown (cadena, obligatorio)
    • summary : Un resumen breve o título opcional para la nota (cadena, opcional)
  • update_note - Actualiza una nota existente con nuevo contenido o resumen
    • noteId : El ID de la nota a actualizar (cadena, obligatoria)
    • content : El nuevo contenido para la nota, admite el formato Markdown (cadena, obligatorio)
    • summary : Un nuevo resumen breve o título opcional para la nota (cadena, opcional)

Soluciones

  • list_problem_solutions : recupera una lista de soluciones de la comunidad para un problema específico
    • questionSlug : El slug/identificador de la URL del problema (cadena, obligatoria)
    • limit : Número máximo de soluciones a devolver (número, opcional, predeterminado: 10)
    • skip : Número de soluciones a omitir (número, opcional)
    • userInput : término de búsqueda para filtrar soluciones (cadena, opcional)
    • tagSlugs : Matriz de identificadores de etiquetas para filtrar soluciones (cadena[], opcional, predeterminado: [])
    • orderBy : Criterios de ordenación para las soluciones devueltas
      • Global: enumeración: "HOT", "MÁS_RECENT", "MÁS_VOTOS", opcional, valor predeterminado: "HOT"
      • CN: enumeración: "PREDETERMINADO", "MÁS VOTADOS A FAVOR", "DESDE EL MÁS NUEVO AL MÁS ANTIGUO", "DE EL MÁS ANTIGUO AL MÁS NUEVO", opcional, valor predeterminado: "PREDETERMINADO"
  • get_problem_solution : recupera el contenido completo de una solución específica
    • topicId : ID de tema único de la solución (cadena, obligatoria, solo global)
    • slug : slug/identificador único de la solución (cadena, obligatorio, solo CN)

Recursos disponibles

Nombre del recursoGlobalCNSe requiere autorizaciónDescripción
categorías de problemasUna lista de todas las categorías de clasificación de problemas
etiquetas de problemasUna colección detallada de etiquetas algorítmicas y de estructura de datos
lenguaje problemáticoUna lista completa de todos los lenguajes de programación compatibles
detalle del problemaProporciona detalles sobre un problema específico.
problema-soluciónProporciona el contenido completo de una solución específica.

URI de recursos

  • categorías de problemas : una lista de todas las categorías de clasificación de problemas
    • URI: categories://problems/all
  • problem-tags : una colección detallada de etiquetas algorítmicas y de estructura de datos
    • URI: tags://problems/all
  • problem-langs : una lista completa de todos los lenguajes de programación compatibles con LeetCode
    • URI: langs://problems/all
  • problem-detail : proporciona detalles sobre un problema específico de LeetCode
    • URI: problem://{titleSlug}
    • Parámetros:
      • titleSlug : Identificador del problema tal como aparece en la URL de LeetCode
  • Problema-solución : Proporciona el contenido completo de una solución específica.
    • URI global: solution://{topicId}
      • Parámetros:
        • topicId : ID de tema único de la solución
    • URI de CN: solution://{slug}
      • Parámetros:
        • slug : slug/identificador único de la solución

Autenticación

El acceso a datos específicos del usuario requiere la autenticación de sesión de LeetCode:

  1. Inicie sesión en LeetCode (sitio global o de China )
  2. Extraer la cookie LEETCODE_SESSION de las herramientas para desarrolladores del navegador
  3. Configurar el servidor con el indicador --session o la variable de entorno LEETCODE_SESSION

Formato de respuesta

Todas las herramientas devuelven respuestas en formato JSON con la siguiente estructura:

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

JSON_DATA_STRING contiene los datos solicitados o un mensaje de error para solicitudes fallidas.

Licencia

Este proyecto está licenciado bajo la licencia 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.

Un servidor de protocolo de contexto de modelo que proporciona integración con las API de LeetCode, lo que permite la interacción automatizada con problemas de programación, concursos, soluciones y datos de usuarios en las plataformas leetcode.com y leetcode.cn.

  1. Características
    1. Prerrequisitos
      1. Instalación
        1. Instalación mediante herrería
        2. Instalación manual
      2. Uso
        1. Integración de Visual Studio Code
      3. Herramientas disponibles
        1. Problemas
        2. Usuarios
        3. Notas
        4. Soluciones
      4. Parámetros de la herramienta
        1. Problemas
        2. Usuarios
        3. Notas
        4. Soluciones
      5. Recursos disponibles
        1. URI de recursos
          1. Autenticación
            1. Formato de respuesta
              1. Licencia

                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