Skip to main content
Glama
RishiSarraff

PersonalLeetcodeMCP

by RishiSarraff

Claude.ai용 LeetCode MCP 커넥터

Claude가 귀하의 LeetCode 제출 기록과 취약 영역 분석에 접근할 수 있도록 해주는 원격 MCP 서버입니다.

제공되는 도구

도구

설명

get_submission_history

상태, 언어, 다중 시도 감지가 포함된 최근 제출 내역

analyze_weak_areas

취약 영역과 강점 영역에 대한 주제별 분석 및 추천 사항 제공

get_user_stats

전체 승인/제출 횟수, 연속 사용 일수, 순위 백분위 정보

get_daily_challenge

오늘의 일일 도전 문제

Related MCP server: Interactive LeetCode MCP

설정 방법

1. 로컬에서 설치 및 실행

npm install
npm start
# → Listening on http://localhost:3000

2. 배포 (Claude.ai 사용 시 필수)

Claude.ai를 사용하려면 공개적으로 접근 가능한 HTTPS URL이 필요합니다. 다음 중 하나를 선택하세요:

옵션 A — Railway (가장 쉬움, 무료 티어)

  1. 이 폴더를 GitHub 저장소에 푸시합니다.

  2. railway.app → 새 프로젝트 → GitHub에서 배포로 이동합니다.

  3. Railway가 Node.js를 자동 감지하고 https://leetcode-mcp-xxx.railway.app과 같은 공개 URL을 제공합니다.

옵션 B — Render

  1. GitHub에 푸시합니다.

  2. render.com → 새 웹 서비스 → 저장소 연결로 이동합니다.

  3. 빌드: npm install, 시작: node server.js

  4. https://leetcode-mcp.onrender.com과 같은 URL을 받습니다.

옵션 C — Docker (모든 VPS/클라우드)

docker build -t leetcode-mcp .
docker run -p 3000:3000 leetcode-mcp
# Then point a domain + SSL at port 3000

옵션 D — Cloudflare Workers (고급)

Cloudflare는 MCP를 내장 지원합니다. 참조: https://developers.cloudflare.com/mcp/

3. Claude.ai에 추가하기

배포가 완료되면:

  1. Claude.ai → 설정 → 커넥터로 이동합니다.

  2. **"사용자 정의 커넥터 추가"**를 클릭합니다.

  3. 서버 URL을 입력합니다: https://your-deployment-url.com/mcp

  4. 추가를 클릭합니다.

끝입니다 — 이제 Claude가 LeetCode 도구에 접근할 수 있습니다.

예시 프롬프트

연결 후 Claude에게 다음과 같이 질문해 보세요:

  • "LeetCode에서 내 취약 영역을 분석해 줘 — 내 사용자 이름은 @john_doe야"

  • "내 마지막 20개 제출 내역을 보여주고 어떤 문제를 어려워했는지 알려줘"

  • "내 LeetCode 통계와 다음에 무엇을 집중해야 할지 알려줘"

  • "오늘의 일일 도전 문제는 뭐야?"

LeetCode API 관련 참고 사항

  • 공개 데이터: get_submission_history, get_user_stats, analyze_weak_areas, get_daily_challenge는 모두 공개 프로필 데이터로 작동합니다 — 대상 프로필이 공개 상태라면 로그인이 필요하지 않습니다.

  • 비공개 프로필: 사용자가 프로필을 비공개로 설정한 경우, LeetCode는 빈 데이터를 반환합니다. 사용자는 LeetCode 설정 → 개인정보 보호에서 프로필을 공개로 설정해야 합니다.

  • LeetCode는 공식 공개 API가 없습니다. 이 서버는 LeetCode 자체 프론트엔드가 사용하는 동일한 GraphQL 엔드포인트를 사용합니다. LeetCode가 API 구조를 변경하면 작동이 중단될 수 있습니다.

이 서버 확장하기

더 많은 도구를 추가하려면 server.js의 패턴을 따르세요:

server.tool("tool_name", "description", { param: z.string() }, async ({ param }) => {
  // call lcQuery() and return results
  return { content: [{ type: "text", text: "..." }] };
});

추가할 유용한 쿼리:

  • 태그/난이도별 문제 검색 (problemsetQuestionList 쿼리 사용)

  • 회사별 문제 (LeetCode Premium 세션 쿠키 필요)

  • 대회 기록 (파일에 이미 CONTEST_HISTORY_QUERY로 존재함)

Related MCP Connectors

Related MCP Servers