Token导航 LogoToken导航TokenDH.com
Algo Kit MCP logo
开发工具未说明官方级别未说明来源级核验

Algo Kit MCP

MCP Server

提供AI生成提示、问题分析、复习模板等功能,支持高效算法学习的AI代理工具包。

工具数

15

提示词数

0

GitHub Stars

1

资源数

0
TypeScriptClaude代码分析Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

itsme-shawn

提供方

itsme-shawn

最后核验

2026/5/17 20:21

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

AlgoKit mcp

与AI代理一起学习算法MCP工具包(白俊,程序员支持)

着陆页 | ** | **

通过提供基于AI的提示生成、问题分析和复习模板,帮助您高效学习算法。

主要功能

  • 🔍 搜索问题:通过难度、标签、关键字搜索问题
  • 💡 分步提示:生成Level 1~3级别的自定义提示
  • 📊 问题分析:算法分类、难度分析、学习指南
  • 📝 复习模板:自动生成的标记复习文档
  • 🧪 代码分析:分析和改进提交代码的时间/空间复杂度

安装

安装方法因平台而异。Claude Code支持Plugin市场,Codex和Gemini需要手动设置。

克劳德代码(插件市场)

注册市场并安装插件:

/plugin marketplace add itsme-shawn/AlgoKit-mcp
/plugin install algokit-mcp@algokit-plugin
/reload-plugins

使用此命令 同时安装MCP服务器和6个Skills可以。

安装自然语言

您可以在Claude Code中直接输入以下句子:

algokit-mcp 플러그인을 마켓플레이스에서 설치해줘

单独安装MCP(无技能)

claude mcp add --scope user algokit -- npx -y algokit-mcp@latest

______________________________________________________________________

法典

请在Codex中输入以下句子:

이 지시사항 대로 설치해줘 : https://raw.githubusercontent.com/itsme-shawn/AlgoKit-mcp/refs/heads/master/.codex/INSTALL.md

______________________________________________________________________

双子星命令行工具

请向Gemini CLI输入以下句子:

이 지시사항 대로 설치해줘 : https://raw.githubusercontent.com/itsme-shawn/AlgoKit-mcp/refs/heads/master/.gemini/INSTALL.md

______________________________________________________________________

手动安装(所有平台)

MCP 설정 직접 편집하기

克劳德代码 (~/.claude.json):

{
  "mcpServers": {
    "algokit": {
      "command": "npx",
      "args": ["-y", "algokit-mcp@latest"]
    }
  }
}

法典 (~/.codex/config.toml):

[mcp.servers.algokit]
command = "npx"
args = ["-y", "algokit-mcp@latest"]

双子星命令行工具 (~/.gemini/settings.json):

{
  "mcpServers": {
    "algokit": {
      "command": "npx",
      "args": ["-y", "algokit-mcp@latest"]
    }
  }
}

技能

Skill名称: algo: (BOJ/程序员自动选择)

Claude Code、Codex和Gemini CLI都是相同的 algo: 支持Skills。 MCP服务器首次启动时,将自动安装到检测到的代理上。

Skill功能使用示例 |-------|------|----------| | algo:search |搜索问题| /algo:search 골드 DP 문제 추천해줘 | | algo:fetch |滚动问题正文| /algo:fetch 11726 | | algo:hint |分步提示| /algo:hint 11726 | | algo:code-review |代码分析/反馈| /algo:code-review @11726.py | | algo:blank 生成空格练习代码 /algo:blank @11726.py | | algo:review |生成复习文档| /algo:review 11726 |

即使用自然语言提问,AI也会掌握脉络,自动调用Skill。 技能(/algo:*)使您的意图更加明确,从而获得准确的响应。

Skills 상세 설명

algo:search -搜索问题

通过难度、标签和关键字搜索白俊/程序员问题。平台关键字(백준, 프로그래머스)则反问是什么平台。

  • BOJ:Tier(青铜~红宝石),TAG(dp, graph 等),支持排序选项
  • 程序员:级别(1~5),支持按人气排序/按最新排序
  • 搜索后 /algo:hint, /algo:review 等后续技能联系提案

algo:fetch -滚动问题正文

获取问题全文(说明、I/O格式、示例、限制条件)。输入URL时自动识别平台,输入数字时确认平台后进行。

  • 工程量清单: acmicpc.net 滚动(包括时间/内存限制)
  • 程序员: school.programmers.co.kr 滚动(包括限制)
  • 缓存30天,重试最多2次

algo:hint -逐步提示

分析问题并根据您的情况 只有一个级别的提示 提供。不一次性显示所有提示,而是通过对话逐步引导。

Level时间内容 |-------|------|------| Level 1第一次堵塞时没有算法名,只暗示结构特征 Level 2请求“告诉我更多”算法类型+核心想法 Level 3要求“告诉我答案”分阶段战略+议事代码级别说明

algo:blank -生成空格练习代码

完成的池代码的核心逻辑 ____创建遮蔽的练习文件。不修改原始文件。 _blank 创建新的后缀文件。

  • 空格对象:点燃式、初始化数据结构、核心条件语句、访问处理等
  • // TODO N: 설명 介绍应该用注释填充什么(答案未提供)
  • import、类签名和main块保持不变

algo:code-review -代码分析/反馈

池分析代码的准确性、时间/空间复杂度,并提出改进建议。

分析类型内容
full (基本)准确性+复杂度+增强功能+风格
debug 错误原因、逻辑错误、边缘案例
hint核心概念、方法方向
review 风格、可读性、命名、结构

algo:review -生成复习文档

完成解答后整理学习内容的Markdown复习文档(_REVIEW.md)。MCP服务器提供模板和指南提示,AI与用户对话并按部分创建。

  • 包括:问题摘要、事件流程、核心思想、解决方案代码+逻辑描述、数据流跟踪、错误点、相关问题
  • 基于用户代码的定制分析

______________________________________________________________________

使用方案

所有结果都是通过实际调用AlgoKit MCP服务器获得的数据。

关于一个问题 从探索到复习 全程支持。

步骤功能Skill |:---:|------|-------| |1|搜索问题| algo:search | |2|问题摘要| algo:fetch | 第3步提示 algo:hint | |4|空格提示| algo:blank | |5|代码评论| algo:code-review | 复习整理 algo:review |

______________________________________________________________________

1.搜索问题

用户:

BOJ에서 실버상위~골드 난이도 DP 문제 찾아줘

使用Skill时,

/algo:search BOJ에서 실버상위~골드 난이도 DP 문제 찾아줘

AI代理:

⏺ Skill(algo:search)
  ⎿  Successfully loaded skill

⏺ BOJ에서 실버 상위~골드 난이도 DP 문제를 검색하겠습니다.

⏺ algokit - search_problems_boj (MCP)
  (tags: "dp", level_min: "8", level_max: "15", sort: "level", direction: "asc")

     **총 1909개 문제** (1페이지)

⏺ 총 1,909개의 DP 문제가 Silver III ~ Gold I 범위에 있습니다.

  Silver III (실버 3)

  ┌───────┬────────────────┬──────────┐
  │ 번호  │      제목      │  해결자  │
  ├───────┼────────────────┼──────────┤
  │ 1463  │ 1로 만들기     │ 87,355명 │
  ├───────┼────────────────┼──────────┤
  │ 9095  │ 1, 2, 3 더하기 │ 72,673명 │
  ├───────┼────────────────┼──────────┤
  │ 11726 │ 2×n 타일링     │ 65,411명 │
  ├───────┼────────────────┼──────────┤
  │ 2579  │ 계단 오르기    │ 64,700명 │
  ├───────┼────────────────┼──────────┤
  │ 14501 │ 퇴사           │ 42,532명 │
  └───────┴────────────────┴──────────┘

  다음 페이지에서 Silver II ~ Gold 난이도 문제도 볼까요?

______________________________________________________________________

2.问题摘要

用户:

BOJ 11726 문제 내용 요약해줘

使用Skill时,

/algo:fetch 11726

AI代理:

⏺ algokit - fetch_problem_content_boj (MCP)(problem_id: 11726)

⏺ BOJ 11726 - 2×n 타일링

  2×n 크기의 직사각형을 1×2, 2×1 타일로 빈틈없이 채우는 방법의 수를
  구하는 문제입니다.

  ┌─────────────┬──────────────────────────────────┐
  │    항목     │               내용               │
  ├─────────────┼──────────────────────────────────┤
  │ 입력        │ 정수 n (1 ≤ n ≤ 1,000)           │
  ├─────────────┼──────────────────────────────────┤
  │ 출력        │ 방법의 수를 10,007로 나눈 나머지 │
  ├─────────────┼──────────────────────────────────┤
  │ 시간/메모리 │ 1초 / 256MB                      │
  └─────────────┴──────────────────────────────────┘

  예제: n=2 → 2, n=9 → 55

______________________________________________________________________

3.分阶段提示

用户:

이 문제, 접근에 대한 힌트를 줘

使用Skill时,

/algo:hint 11726

AI代理:

⏺ algokit - analyze_problem_boj (MCP)(problem_id: 11726)

⏺ BOJ 11726 — 2×n 타일링 (Silver III)

  Level 1 힌트: 문제 분석

  작은 경우부터 직접 그려보세요. n=1, n=2, n=3, n=4일 때 2×n 직사각형을
  채우는 방법이 각각 몇 가지인지 손으로 나열해 보면, 이전 결과들이 다음
  결과를 만드는 데 재활용되는 패턴이 보일 겁니다.

  "n번째를 채우려면 직전에 어떤 상태에서 올 수 있는가?"를 생각해 보세요.

  ---
  더 구체적인 힌트가 필요하면 말씀해 주세요!
当MCP服务器返回结构化数据+指南提示时, Claude生成符合问题的自然语言分析。

______________________________________________________________________

获得更多提示

用户:

잘 안 풀리네. 힌트를 좀 더 줘

AI代理:

⏺ Level 2 힌트: 핵심 아이디어

  이 문제는 다이나믹 프로그래밍(DP) 문제입니다.

  핵심은 2×n 직사각형의 맨 오른쪽 열을 채우는 방법이 딱 두 가지뿐이라는
  점입니다:

  1. 세로 타일 1개 (2×1) → 나머지는 2×(n-1) 채우기
  2. 가로 타일 2개 (1×2 두 개) → 나머지는 2×(n-2) 채우기

  즉, f(n)을 구하려면 f(n-1)과 f(n-2)만 알면 됩니다.

  ---
  더 상세한 풀이 가이드가 필요하면 말씀해 주세요.

根据您的情况 一次只需要一个等级 提供:

Level时间点提供内容 |-------|------|----------| Level 1第一次尝试时只暗示结构特征,没有算法名 |Level 2|如果要求“告诉我更多”,请说明算法类型+核心想法| |Level 3|如果要求“告诉我答案”,请说明分步策略+代码级别|

______________________________________________________________________

4.空格提示

用户:

정답 코드에 빈 칸을 뚫어서 힌트를 줘
11726_blank.py 에 작성해줘

使用Skill时,

/algo:blank @11726.py

AI代理:

⏺ algokit - fetch_problem_content_boj (MCP)(problem_id: 11726)

⏺ Write(11726_blank.py)
  ⎿  Wrote 26 lines to 11726_blank.py
       1 # BOJ 11726 - 2×n 타일링
       2 # https://www.acmicpc.net/problem/11726
       3 #
       4 # 점화식 힌트:
       5 #   - 맨 오른쪽에 세로 타일 1개 → f(n-1)
       6 #   - 맨 오른쪽에 가로 타일 2개 → f(n-2)
       7
       8 n = int(input())
       9
      10 # TODO 1: dp 배열 초기화 (크기: n+1, 초깃값: 0)
      11 dp = ____
      12
      13 # TODO 2: 기저 조건 설정
      14 dp[1] = ____
      15 dp[2] = ____
      16
      17 # TODO 3: 점화식을 이용해 dp[3] ~ dp[n] 채우기
      18 for i in range(3, n + 1):
      19     dp[i] = ____
      20
      21 # TODO 4: 결과 출력 (10007로 나눈 나머지)
      22 print(____)

⏺ 11726_blank.py에 빈칸 버전을 작성했습니다. 총 4개의 TODO가 있습니다:

  ┌──────┬─────────────────────────────────────────────────┐
  │ TODO │                      힌트                       │
  ├──────┼─────────────────────────────────────────────────┤
  │ 1    │ dp 배열을 어떤 크기로, 어떻게 초기화할지        │
  ├──────┼─────────────────────────────────────────────────┤
  │ 2    │ dp[1]과 dp[2]의 기저값 (직접 손으로 세어보세요) │
  ├──────┼─────────────────────────────────────────────────┤
  │ 3    │ dp[i] = ? — Level 2 힌트에서 알려드린 점화식!   │
  ├──────┼─────────────────────────────────────────────────┤
  │ 4    │ 최종 출력 시 모듈러 연산을 어디서 적용할지      │
  └──────┴─────────────────────────────────────────────────┘

  빈칸을 ____ 부분에 채워보세요. 막히면 말씀해 주세요!

______________________________________________________________________

5.代码评论

用户:

@BOJ/10000~/11726/11726.py
내 풀이를 보고 리뷰해줘

使用Skill时,

/algo:code-review @11726.py

AI代理:

⏺ Skill(algo:code-review)
  ⎿  Successfully loaded skill

⏺ algokit - analyze_code_submission_boj (MCP)
  (problem_id: 11726, language: "python", analysis_type: "review")

⏺ BOJ 11726 - 2×n 타일링 코드 리뷰

  ✅ 정확성

  피보나치 점화식 dp[i] = dp[i-1] + dp[i-2]를 정확히 적용했고,
  모듈러 연산도 올바르게 처리했습니다. 정답 코드입니다.

  ⏱️  복잡도

  - 시간: O(n) — 최적
  - 공간: O(n) (고정 1001 크기 배열)

  💡 개선 포인트

  1. 배열 크기 고정 (1001)
  n + 1 크기로 잡는 게 의도가 더 명확합니다.

  2. 공간 최적화 가능
  이전 두 값만 사용하므로 변수 두 개로 줄일 수 있습니다:
  a, b = 1, 2
  for _ in range(3, n + 1):
      a, b = b, (a + b) % 10007

  총평

  DP 기본 문제를 깔끔하게 풀었습니다. 점화식 도출, 모듈러 처리,
  입력 최적화 모두 잘 적용되어 수정할 부분이 거의 없는 코드입니다.

______________________________________________________________________

6.复习整理

用户:

복습 문서 만들어줘

使用Skill时,

/algo:review 11726

AI代理:

⏺ Skill(algo:review)
  ⎿  Successfully loaded skill

⏺ algokit - generate_review_template_boj (MCP)
  (problem_id: 11726, user_notes: "피보나치 점화식 dp[i] = dp[i-1] +
  dp[i-2] 활용, 모듈러 연산 10007, O(n) 시간/공간")

⏺ Write(BOJ/10000~/11726/11726_REVIEW.md)
  ⎿  Wrote 142 lines to BOJ/10000~/11726/11726_REVIEW.md

생성된 복습 문서 예시 보기

#### BOJ 11726 — 2×n 타일링

https://www.acmicpc.net/problem/11726

**문제 정보**

| 항목 | 내용 |
|------|------|
| 핵심 요구사항 | 2×n 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 10,007로 나눈 나머지 출력 |
| 입력 크기 | 1 ≤ n ≤ 1,000 |
| 시간/메모리 | 1초 / 256MB |
| 티어 | Silver III |
| 태그 | 다이나믹 프로그래밍 |
| 해결자 수 | 65,411명 (평균 시도 2.7회) |

**사고흐름**

- **첫 인상**: n이 작아질수록 경우의 수가 줄어드는 구조 → 작은 문제로 분할 가능
- **자료구조/알고리즘 선택**: DP (Bottom-Up)
- **선택 근거**: dp[n]을 구하기 위해 이전 상태(dp[n-1], dp[n-2])만 필요 → 점화식 도출 가능
- **특이 조건 처리**: 모듈러 연산을 매 단계 적용하여 오버플로우 방지
- **시간 복잡도 검증**: O(n) = O(1000) → 충분

**핵심아이디어**

2×n 타일링의 마지막 열 배치를 기준으로 경우를 나누면 피보나치 점화식이 도출된다. 마지막에 세로 타일(1×2) 1개를 놓으면 dp[n-1], 가로 타일(2×1) 2개를 놓으면 dp[n-2]가 되어 **dp[n] = dp[n-1] + dp[n-2]**.

**풀이 1 (내 코드)**

import sys read = sys.stdin.readline

n = int(read()) dp = [0] * (1001)

dp[1], dp[2] = 1, 2 for i in range(3, n + 1): dp[i] = (dp[i - 1] + dp[i - 2]) % 10007 print(dp[n])


핵심 포인트:
- 배열을 1001 크기로 고정하여 n=1일 때 dp[2] 초기화 시 IndexError 방지
- 매 단계에서 % 10007 적용하여 중간 값 오버플로우 방지

**데이터 흐름 추적** (n = 9):

dp[1] = 1 dp[2] = 2 dp[3] = dp[2] + dp[1] = 3 dp[4] = dp[3] + dp[2] = 5 dp[5] = dp[4] + dp[3] = 8 dp[6] = dp[5] + dp[4] = 13 dp[7] = dp[6] + dp[5] = 21 dp[8] = dp[7] + dp[6] = 34 dp[9] = dp[8] + dp[7] = 55 ← 출력


**풀이 2 (공간 최적화)**

import sys read = sys.stdin.readline

n = int(read())

if n == 1: print(1) else: a, b = 1, 2 for _ in range(3, n + 1): a, b = b, (a + b) % 10007 print(b)


이전 두 값만 사용하므로 변수 2개로 O(1) 공간 달성.

**자주 하는 실수**

- n=1일 때 배열 크기 부족으로 IndexError
- 모듈러 연산을 마지막에만 적용 → 중간 값 오버플로우 (C++/Java)
- dp[0] 초기값 설정 혼동 (0 vs 1)

**관련 문제**

- 11727 — 2×n 타일링 2 (2×2 타일 추가)
- 1010 — 다리 놓기 (Silver V, 조합 + DP)
- 9625 — BABBA (Silver V, 피보나치 변형)

______________________________________________________________________

MCP工具

白俊(BOJ)

工具说明
search_problems_boj问题搜索(阶段、标签、关键字)
get_problem_boj查询问题详细信息
search_tags_boj搜索算法标签
fetch_problem_content_boj问题正文描述
analyze_problem_boj问题分析和提示指南
generate_hint_boj生成步骤3提示
generate_review_template_boj创建复习模板
analyze_code_submission_boj代码分析和反馈

程序员(Programmers)

工具说明
search_problems_programmers问题搜索(难度,类别)
get_problem_programmers查询问题详细信息
fetch_problem_content_programmers问题正文描述
analyze_problem_programmers问题分析
generate_hint_programmers生成提示
generate_review_template_programmers复习模板
analyze_code_submission_programmers代码分析

问答

MCP가 뭔가요?

模型上下文协议(MCP)是允许AI代理调用外部工具的标准协议。AlgoKit 本地MCP服务器以进行操作。 npx如果安装为,则在您的本地计算机上运行,不需要单独的远程服务器或帐户。

사용자 → AI 에이전트 → AlgoKit MCP 서버 (로컬) → solved.ac API / 웹 스크래핑
                ↓
        자연어 응답 생성

用户无需直接处理MCP,只需向AI请求自然语言即可。

API 키가 필요한가요?

不。AlgoKit是一款MCP服务器,充分利用您使用的AI代理(Claude Code、Codex、Gemini等),无需单独的API密钥或登录即可使用。

어떤 AI 에이전트를 지원하나요?

代理支持方式
克劳德代码 Plugin Marketplace(自动安装)
法典提供安装脚本
双子星命令行工具提供安装脚本
其他MCP兼容代理可手动设置

Skill과 MCP 도구의 차이가 뭔가요?

  • MCP工具:AlgoKit服务器提供的单个功能单元(例如: search_problems_boj, analyze_problem_boj)
  • 技能 (/algo:*:将多个MCP工具组合成一个工作流(例如: /algo:hint内部 analyze_problem + fetch_problem_content组合)

Skill让AI自动选择和组合最佳工具。用自然语言提问也可以得到相同的结果,但如果您明确说明Skill,则会更准确地传达您的意图。

프로그래머스도 지원하나요?

好的。也支持程序员。

오프라인에서도 사용할 수 있나요?

不。AlgoKit需要互联网连接,因为它可以从solved.ac API和BOJ/程序员网站实时获取数据。

ChatGPT나 Claude에 직접 물어보는 것과 뭐가 다른가요?

因为直接向AI提问算法问题依赖于学习数据,所以有时问题信息会造成不准确或不存在的问题。即使使用Web搜索,也经常从博客等非官方来源获取数据,因此无法保证准确度。

AlgoKit 官方数据源直接从(solved.ac API,BOJ/程序员网站)获取实时数据并将其传递给AI,因此始终基于准确的问题信息进行响应。

直接向AI提问使用AlgoKit
数据源学习数据或博客等非正式来源solved.ac API、BOJ/程序员官方网站
问题信息可能生成不正确或不存在的问题实时滚动(始终最新、准确)
难度/标签不准确或缺失基于solved.ac的准确数据

提供提示一次暴露整个池的风险Level 1→2→3分阶段提供 |复习支持|每次手动请求|自动生成结构化复习文档| |学习工作流|无|搜索→提示→空格→评论→复习一致流程|

______________________________________________________________________

开发

构建和测试

# 의존성 설치
npm install

# 빌드
npm run build

# 테스트
npm test

# 개발 모드
npm run dev

项目结构

src/
├── api/           # solved.ac API, BOJ/프로그래머스 scrapping
├── tools/         # MCP 도구 (15개)
├── services/      # 비즈니스 로직
├── prompts/       # 힌트 가이드 프롬프트
└── utils/         # 유틸리티 (캐싱, Rate Limiting)

技术堆栈

  • 运行时:Node.js(>=18.0.0)
  • 语言:TypeScript 5.9
  • MCP-SDK:@modelcontextprotocol/sdk v1.26.0
  • 验证:佐德
  • 测试:Vitest

许可证

麻省理工学院

______________________________________________________________________

目录标签

目录标签

TypeScriptClaude代码分析算法学习本地部署AI提示复习模板编程练习

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

15

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP