MCP Server LeetCode について
MCP Server LeetCode は LeetCode 向けの MCP サーバーで、GraphQL を通じて問題、ユーザー情報、コンテストデータにアクセスできます。AI アシスタントから LeetCode の情報を照会したい開発者に向いており、コマンドラインとライブラリの両方で利用できます。
主な機能
- 01問題の詳細とデイリーチャレンジの取得
- 02タグと難易度による問題検索
- 03ユーザープロフィールと提出履歴の照会
- 04コンテストの詳細とユーザーのランキング取得
- 05コマンドラインとプログラムから使える API
活用シーン
- 01指定したタグや難易度に合う問題の検索
- 02ユーザーの提出履歴やコンテストランキングの確認
- 03スクリプトやアプリケーションからの LeetCode データ呼び出し
MCP 対応
本プロジェクトは MCP サーバーとして動作し、get-problem や search-problems などのツール、leetcode://daily-challenge などのリソースを MCP クライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
7掲載時のツール一覧 · 3 週間前に更新
このツールにパラメーターはありません。
詳細
MCP Server LeetCode
AI アシスタントが LeetCode の問題、ユーザー情報、コンテストデータにアクセスできるようにする、LeetCode 向けの Model Context Protocol(MCP)サーバーです。
特長
- 🚀 LeetCode API にすばやくアクセス
- 🔍 問題の検索、今日のチャレンジの取得、ユーザープロフィールの確認
- 🏆 コンテストデータとランキングの照会
- 🧩 MCP のツールとリソースを完全サポート
- 📦 CLI とプログラムから利用できる API の両方を提供
インストール
Smithery 経由でのインストール
Smithery 経由で mcp-server-leetcode を Claude Desktop に自動インストールするには:
npx -y @smithery/cli install @doggybee/mcp-server-leetcode --client claude
グローバルインストール
npm install -g @mcpfun/mcp-server-leetcode
インストール後は、コマンドラインから直接実行できます:
mcp-server-leetcode
ローカルインストール
npm install @mcpfun/mcp-server-leetcode
使用方法
Claude for Desktop との連携
以下を Claude for Desktop の claude_desktop_config.json ファイルに追加します:
{
"mcpServers": {
"leetcode": {
"command": "mcp-server-leetcode"
}
}
}
ローカル開発の場合:
{
"mcpServers": {
"leetcode": {
"command": "node",
"args": ["/path/to/dist/index.js"]
}
}
}
ライブラリとして使用
import { LeetCodeService } from '@mcpfun/mcp-server-leetcode';
// Initialize the service
const leetcodeService = new LeetCodeService();
// Get daily challenge
const dailyChallenge = await leetcodeService.getDailyChallenge();
// Search problems
const problems = await leetcodeService.searchProblems({
difficulty: 'MEDIUM',
tags: 'array+dynamic-programming'
});
利用可能なツール
問題関連のツール
| ツール名 | 説明 | パラメーター |
|---|---|---|
get-daily-challenge | 今日のチャレンジを取得します | なし |
get-problem | 特定の問題の詳細を取得します | titleSlug(文字列) |
search-problems | 条件に基づいて問題を検索します | tags(任意)、difficulty(任意)、limit(デフォルト 20)、skip(デフォルト 0) |
ユーザー関連のツール
| ツール名 | 説明 | パラメーター |
|---|---|---|
get-user-profile | ユーザー情報を取得します | username(文字列) |
get-user-submissions | ユーザーの提出履歴を取得します | username(文字列)、limit(任意、デフォルト 20) |
get-user-contest-ranking | ユーザーのコンテストランキングを取得します | username(文字列) |
コンテスト関連のツール
| ツール名 | 説明 | パラメーター |
|---|---|---|
get-contest-details | コンテストの詳細を取得します | contestSlug(文字列) |
利用可能なリソース
問題リソース
leetcode://daily-challenge:今日のチャレンジleetcode://problem/{titleSlug}:問題の詳細leetcode://problems{?tags,difficulty,limit,skip}:問題一覧
ユーザーリソース
leetcode://user/{username}/profile:ユーザープロフィールleetcode://user/{username}/submissions{?limit}:ユーザーの提出履歴leetcode://user/{username}/contest-ranking:ユーザーのコンテストランキング
ローカル開発
リポジトリをクローンし、依存関係をインストールします:
git clone https://github.com/doggybee/mcp-server-leetcode.git
cd mcp-server-leetcode
npm install
開発モードで実行します:
npm run dev
プロジェクトをビルドします:
npm run build
ライセンス
MIT
関連プロジェクト
- Model Context Protocol - MCP の仕様とドキュメント
- Claude for Desktop - MCP に対応した AI アシスタント
謝辞
- このプロジェクトは alfa-leetcode-api に着想を得ています
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。