Skip to main content
Glama
prabhattripathi9351

leetcode-github-assistant

🤖 LeetCode GitHub MCP Assistant

Превратите ваш личный репозиторий решений LeetCode в инструмент ИИ с возможностью запросов — прямо внутри Claude Desktop.

Репозиторий GitHub → Индекс метаданных → MCP-сервер → Claude Desktop (запросы на естественном языке)

Python 3.x | MCP SDK | GitHub REST API | LeetCode GraphQL API | MIT License


🧠 Что это?

Этот проект подключает личный репозиторий GitHub с решёнными задачами LeetCode напрямую к Claude Desktop с помощью Model Context Protocol (MCP). Вместо ручного просмотра GitHub в поисках «всех задач по массивам, которые я решил» или поиска конкретного файла с решением, вы можете просто спросить Claude Desktop на обычном языке — и он ответит, используя живые данные, полученные прямо из вашего репозитория.

Создан как личный инструмент продуктивности, чтобы сделать практику DSA/LeetCode доступной для поиска и повторения через разговор, вместо ручного копания в файлах.

Он предоставляет:

  • Каждая решённая задача, помеченная по теме (array, dynamic-programming, graph и т.д.)

  • Сложность каждой задачи (easy/medium/hard), полученная с самого LeetCode

  • Полный код решения, получаемый в реальном времени с GitHub по запросу


Related MCP server: Company Docs MCP Server

✨ Возможности

Возможность

Описание

🔍 Поиск по темам

Запросите любую тему (например, «array», «dynamic-programming») и получите все соответствующие решённые задачи с их сложностью

📄 Получение кода в реальном времени

Получайте полный код решения для любой задачи по имени или слагу, прямо с GitHub

🏷️ Автоматическая разметка

Теги сложности и темы автоматически извлекаются из собственного GraphQL API LeetCode — ручная разметка не нужна

Быстрая параллельная индексация

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

🔌 Нативная интеграция с Claude Desktop

Работает как локальный MCP-сервер — без переключения вкладок браузера, без копирования ссылок


🏗️ Архитектура и конвейер

┌─────────────────────────┐
│   GitHub Repo            │   → your solved LeetCode .py/.cpp/.java files
│   Daily_leet_code         │
└────────────┬─────────────┘
             │  GitHub REST API (recursive file listing)
             ▼
┌─────────────────────────┐
│  build_index_github.py   │   → extracts slug from filename
│      (Indexer)            │   → queries LeetCode GraphQL for
└────────────┬─────────────┘     difficulty + topic tags (parallel)
             │  writes
             ▼
┌─────────────────────────┐
│      index.json           │   → local structured metadata store
└────────────┬─────────────┘
             │  loaded at startup
             ▼
┌─────────────────────────┐
│    mcp_server.py          │   → exposes 2 tools over stdio:
│   (MCP Server)             │     search_by_topic, get_solution_code
└────────────┬─────────────┘
             │  MCP / JSON-RPC over stdio
             ▼
┌─────────────────────────┐
│     Claude Desktop        │   → "array topic ke problems batao"
│   (spawns server locally) │   → "0877-stone-game ka code dikhao"
└─────────────────────────┘

Architecture Diagram

MCP Explained

🛠️ Технологический стек

Категория

Технология

Язык

Python 3.x

MCP-сервер

mcp SDK (mcp.server.Server, stdio transport)

Источник данных

GitHub REST API, LeetCode GraphQL API

Параллельность

concurrent.futures.ThreadPoolExecutor

HTTP-клиент

requests

Клиент

Claude Desktop (локальная конфигурация MCP-сервера)


📁 Структура проекта

Leetcode_mcp_server/
├── build_index_github.py   # Indexer: scans GitHub repo, builds index.json
├── mcp_server.py            # MCP server: exposes search_by_topic & get_solution_code
├── index.json                # Auto-generated metadata index (gitignored)
├── requirements.txt          # Python dependencies
└── .gitignore

🔌 Справочник инструментов (MCP-инструменты)

Инструмент

Входные данные

Описание

search_by_topic

topic: string (например, "array")

Возвращает все решённые задачи, помеченные этой темой, с указанием сложности

get_solution_code

problem_name: string (например, "0877-stone-game.py" или "stone-game")

Получает и возвращает полный код решения в реальном времени с GitHub


🚀 Начало работы

Предварительные требования

  • Python 3.10+

  • Репозиторий GitHub с вашими решёнными задачами LeetCode (публичный или добавьте токен для приватных репозиториев)

  • Claude Desktop установлен

1. Клонируйте и установите зависимости

git clone https://github.com/<your-username>/<this-repo>.git
cd <this-repo>
pip install -r requirements.txt

2. Настройте имя вашего репозитория

Откройте build_index_github.py и укажите:

GITHUB_REPO = "your-username/your-leetcode-repo"

3. Создайте индекс

python build_index_github.py

Это создаст index.json со сложностью и тегами тем для каждой задачи.

4. Подключите к Claude Desktop

Откройте Claude Desktop → Настройки → Разработчик → Изменить конфигурацию и добавьте:

{
  "mcpServers": {
    "leetcode-github-assistant": {
      "command": "python",
      "args": ["/absolute/path/to/mcp_server.py"]
    }
  }
}

💡 В Windows используйте двойные обратные слэши в пути (например, "D:\\Leetcode_mcp_server\\mcp_server.py"), и используйте полный путь к python.exe, если python отсутствует в системном PATH.

5. Перезапустите Claude Desktop

Полностью завершите работу (End Task в диспетчере задач, а не просто закройте окно) и откройте снова. Проверьте Настройки → Разработчик — сервер должен показывать статус running.

6. Спрашивайте

"array topic ke problems batao"
"show me the code for two-sum"

🗺️ Идеи для дорожной карты

  • Добавить инструмент фильтрации по сложности (например, «покажи все сложные задачи»)

  • Добавить инструмент «случайное предложение задачи» для практики

  • Автоматическая синхронизация индекса при каждом новом коммите в репозиторий (вебхук или плановая пересборка)

  • Поддержка приватных репозиториев через персональный токен GitHub

  • Добавить логику повторов/кэширования для вызовов GraphQL LeetCode для сокращения времени индексации


🤝 Вклад

Это личный учебный проект, но вопросы и предложения приветствуются — не стесняйтесь открывать PR или issue.


Создан, чтобы сделать личную практику LeetCode разговорной — вместо того чтобы копаться в папках GitHub, просто спросите.

F
license - not found
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Search Luogu problems, fetch statements, explore problem sets and get practice recommendations.

  • Connect AI assistants to your GitHub-hosted Obsidian vault to seamlessly access, search, and analy…

  • Code intelligence for coding agents: semantic, AST, graph, and full-text search. 279+ languages.

View all MCP Connectors

Latest Blog Posts

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/prabhattripathi9351/leetcode-mcp-assistant'

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