analyze-codebase-for-mcp
정보
이 스킬은 코드베이스를 분석하여 Model Context Protocol(MCP) 도구로 노출할 수 있는 함수, API, 데이터 소스를 식별하고 구조화된 명세서를 생성합니다. MCP 서버 계획 수립, AI 도구 래핑을 위한 코드베이스 감사, 또는 기존 기능과 현재 MCP 노출 상태를 비교할 때 사용됩니다. 출력물은 `scaffold-mcp-server`와 같은 스캐폴딩 도구에 직접 전달할 수 있도록 설계되었습니다.
빠른 설치
Claude Code
추천npx skills add pjt222/agent-almanac -a claude-code/plugin add https://github.com/pjt222/agent-almanacgit clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/analyze-codebase-for-mcpClaude Code에서 이 명령을 복사하여 붙여넣어 스킬을 설치하세요
문서
析碼庫為 MCP
掃碼庫以察函、REST 端點、CLI 命、數訪之式而宜 MCP 工具露出者,生結構化之工具規文。
用時
- 為既存之項謀 MCP 服而需知所露者乃用
- 將碼庫裹為 AI 可達之面前審之乃用
- 比碼庫所能與已露於 MCP 者乃用
- 生工具規文交付
scaffold-mcp-server乃用 - 察三方庫值裹為 MCP 工具乎乃用
入
- 必要:碼庫根目之徑
- 必要:碼庫之語(如 TypeScript、Python、R、Go)
- 可選:既有 MCP 服之碼以比(隙析)
- 可選:域之焦(如「數析」、「檔操」、「API 整合」)
- 可選:所薦工具最多之數(默:20)
法
第一步:掃碼庫之構
1.1. 以 Glob 繪目樹,注源目:
src/**/*.{ts,js,py,R,go,rs}為源**/routes/**、**/api/**、**/controllers/**為端點定**/cli/**、**/commands/**為 CLI 入**/package.json、**/setup.py、**/DESCRIPTION為依元
1.2. 按角分類:
- 入點:主檔、路由處、CLI 命
- 核邏:業之函、算法、數之轉
- 數訪:庫查、檔 I/O、API 客
- 雜助:助者、格者、驗者
1.3. 計總檔、碼行、導符以估項之大。
得: 按角注之檔錄。
敗則: 若碼庫過大(逾萬檔),以域焦縮掃特目或模。若無源檔,驗根徑與語參。
第二步:識已露之函與端點
2.1. 以 Grep 尋導之函與公之 API:
- TypeScript/JavaScript:
export (async )?function、export default、module.exports - Python:未以
_前之函、@app.route、@router - R:NAMESPACE 所列或
#' @exportroxygen 注之函 - Go:大寫始之函名(按約導)
2.2. 每候函,取:
- 名:函或端點之名
- 簽:參及其型與默
- 返型:函所生者
- 文:docstring、JSDoc、roxygen、godoc
- 位:檔徑與行號
2.3. 為 REST API,加取:
- HTTP 法與路之式
- 請求體之模
- 應之形
- 認證之求
2.4. 建候列,以潛益而序(公之、有文、型明之函先)。
得: 二十至百候函/端點,有取之元。
敗則: 若候少,擴搜以納可轉公之內函。若文稀,標為出之險。
第三步:評 MCP 之宜
3.1. 每候,按 MCP 工具準:
- 入約之明:參型明而有文乎?可以 JSON Schema 述乎?
- 出之可預:函返結構化之數(JSON 可序化)乎?返形恆乎?
- 副作:函改狀(檔、庫、外服)乎?副作必明標。
- 冪等:操安再試乎?非冪等需明警。
- 執行之時:可於理限內(< 30 秒)成乎?久行之操需異步式。
- 誤處:擲結構化之誤抑或默敗?
3.2. 各候以 1-5 評:
- 5:純函、型明、有文、速、無副作
- 4:型明、有文、微副作(如日誌)
- 3:I/O 約尚可而需裹(如返原物)
- 2:重副作或約不明,需重適
- 1:不宜除非大改
3.3. 濾候至 3 以上。2 者標為「未來候」需改。
得: 評且濾之候列,各有宜之由。
敗則: 若多候低於 3,碼庫或需改然後露為 MCP。書其隙薦改之具(加型、取純函、裹副作)。
第四步:設工具規
4.1. 每選候(評 >= 3),擬工具規:
- name: tool_name
description: >
One-line description of what the tool does.
source_function: module.function_name
source_file: src/path/to/file.ts:42
parameters:
param_name:
type: string | number | boolean | object | array
description: What this parameter controls
required: true | false
default: value_if_optional
returns:
type: string | object | array
description: What the tool returns
side_effects:
- description of any side effect
estimated_latency: fast | medium | slow
suitability_score: 5
4.2. 聚工具為邏類(如「數查」、「檔操」、「析」、「設」)。
4.3. 識工具間之依(如「list_datasets」宜先於「query_dataset」)。
4.4. 定工具需裹否以:
- 簡繁參為平入
- 轉原返為結構化文或 JSON
- 加安守(如庫函只讀之裹)
得: 全 YAML 工具規,含類、依、裹之注。
敗則: 若規曖昧,返第二步取更詳。若參型不可推,標為人審。
第五步:生工具規文
5.1. 書終規文,含:
- 要:碼庫概、語、大、析之日
- 薦工具:第四步全規,按類聚
- 未來候:2 者與改薦
- 排除者:1 者與排之由
- 依:工具依圖
- 實注:裹之求、認之求、傳之薦
5.2. 存為 mcp-tool-spec.yml(機讀)及可選 mcp-tool-spec.md(人讀要)。
5.3. 若給既存 MCP 服,含隙析段:
- 規中之工具未實現者
- 已實現而不在規者(或陳)
- 規實偏移者(實違規)
得: 全工具規文,備予 scaffold-mcp-server 用。
敗則: 若文過大(逾 200 工具),析為模附交參。若碼庫無宜候,代以「備度評」文與改薦。
驗
- 目庫諸源皆已掃
- 候函取名、簽、返型
- 每候有評與書之由
- 工具規含全參模與型
- 每工具副作明書
- 出之文為有效 YAML(任 YAML 庫可析)
- 工具名循 MCP 約(snake_case、述、獨)
- 類與依成貫之工具面
- 給既存 MCP 服則含隙析
- 未來候段列 2 者所需改之步
陷
- 露過多工具:AI 助最宜十至三十聚工具。重能之廣勝於深。勿露諸公函
- 忽副作:「只讀」之函亦或書日誌或緩。以
Grep察檔寫、網呼、庫改 - 假型安:動語(Python、R、JavaScript)或無型注。由用式與試推型,標疑於規
- 失認上下文:於認證網請求中行之函經 MCP 呼或無會話而敗。察隱認之依如會話 cookie、JWT 令、環注憑
- 過築裹:函需五十行之裹方合 MCP 則或非佳候。重自然映工具界之函
- 忽誤路:MCP 工具須返結構化誤。擲未型異之函需誤處之裹
- 混內外 API:他內碼所呼之內助函為劣 MCP 候。重設於外用之函或清界 API
- 跳隙析:若給既存 MCP 服,恆比規與當前實現。無隙析則冒複功或失陳工具
參
scaffold-mcp-server— 用出之規生工作之 MCP 服build-custom-mcp-server— 手實現之參configure-mcp-server— 連所生之服至 Claude Code/Desktoptroubleshoot-mcp-connection— 部後調連review-software-architecture— 工具面設之審security-audit-codebase— 外露函之前安審
GitHub 저장소
연관 스킬
content-collections
메타이 스킬은 콘텐츠 콜렉션(Content Collections)을 위한 프로덕션 검증된 설정을 제공합니다. 콘텐츠 콜렉션은 Markdown/MDX 파일을 Zod 검증이 포함된 타입 안전한 데이터 콜렉션으로 변환해주는 TypeScript 최우선 도구입니다. 블로그, 문서 사이트 또는 콘텐츠 중심의 Vite + React 애플리케이션을 구축할 때 타입 안전성과 자동 콘텐츠 검증을 보장하기 위해 사용하세요. Vite 플러그인 구성과 MDX 컴파일부터 배포 최적화 및 스키마 검증에 이르기까지 모든 것을 다룹니다.
polymarket
메타이 스킬은 개발자들이 Polymarket 예측 시장 플랫폼을 활용한 애플리케이션을 구축할 수 있도록 지원하며, 거래 및 시장 데이터를 위한 API 통합 기능을 포함합니다. 또한 WebSocket을 통한 실시간 데이터 스트리밍을 제공하여 실시간 거래와 시장 활동을 모니터링할 수 있습니다. 이를 통해 거래 전략을 구현하거나 실시간 시장 업데이트를 처리하는 도구를 생성하는 데 활용할 수 있습니다.
creating-opencode-plugins
메타이 스킬은 개발자들이 명령어, 파일, LSP 작업 등 25개 이상의 이벤트 유형에 연결되는 OpenCode 플러그인을 만들 수 있도록 돕습니다. JavaScript/TypeScript 모듈을 위한 플러그인 구조, 이벤트 API 명세, 구현 패턴을 제공합니다. OpenCode AI 어시스턴트의 라이프사이클을 사용자 정의 이벤트 기반 로직으로 가로채거나, 모니터링하거나, 확장해야 할 때 사용하세요.
sglang
메타SGLang은 RadixAttention 프리픽스 캐싱을 활용하여 JSON, 정규식, 에이전트 워크플로우를 위한 고속 구조화 생성에 특화된 고성능 LLM 서빙 프레임워크입니다. 특히 반복되는 프리픽스가 있는 작업에서 상당히 빠른 추론 속도를 제공하여 복잡한 구조화 출력 및 다중 턴 대화에 이상적입니다. 제약 디코딩이 필요하거나 광범위한 프리픽스 공유가 있는 애플리케이션을 구축할 때는 vLLM과 같은 대안보다 SGLang을 선택하십시오.
