MCP HubMCP Hub
Retour aux compétences

analyze-codebase-for-mcp

pjt222
Mis à jour 6 days ago
17 vues
17
2
17
Voir sur GitHub
Métawordaiapimcpdesigndata

À propos

Cette compétence analyse n'importe quelle base de code pour identifier les fonctions, API et sources de données pouvant être exposées en tant qu'outils du Model Context Protocol (MCP), en générant un document de spécification structuré. Elle est utilisée lors de la planification d'un serveur MCP, de l'audit d'une base de code pour l'encapsulation d'outils d'IA, ou de la comparaison des capacités existantes avec l'exposition MCP actuelle. La sortie est conçue pour être transmise directement à des outils de génération de structure comme `scaffold-mcp-server`.

Installation rapide

Claude Code

Recommandé
Principal
npx skills add pjt222/agent-almanac -a claude-code
Commande PluginAlternatif
/plugin add https://github.com/pjt222/agent-almanac
Git CloneAlternatif
git clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/analyze-codebase-for-mcp

Copiez et collez cette commande dans Claude Code pour installer cette compétence

Documentation

析碼庫為 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 )?functionexport defaultmodule.exports
  • Python:未以 _ 前之函、@app.route@router
  • R:NAMESPACE 所列或 #' @export roxygen 注之函
  • 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/Desktop
  • troubleshoot-mcp-connection — 部後調連
  • review-software-architecture — 工具面設之審
  • security-audit-codebase — 外露函之前安審

Dépôt GitHub

pjt222/agent-almanac
Chemin: i18n/wenyan/skills/analyze-codebase-for-mcp
0
agentsagentskillsai-assisted-developmentclaude-codeskillsteams

Compétences associées

content-collections

Méta

Cette compétence propose une configuration éprouvée en production pour Content Collections, un outil axé sur TypeScript qui transforme des fichiers Markdown/MDX en collections de données typées de manière sûre avec une validation Zod. Utilisez-la lors de la création de blogs, de sites de documentation ou d'applications Vite + React riches en contenu pour garantir la sécurité de typage et la validation automatique du contenu. Elle couvre tout, de la configuration du plugin Vite et de la compilation MDX à l'optimisation des déploiements et la validation des schémas.

Voir la compétence

polymarket

Méta

Cette compétence permet aux développeurs de créer des applications avec la plateforme de marchés prédictifs Polymarket, incluant l'intégration d'API pour le trading et les données de marché. Elle fournit également une diffusion de données en temps réel via WebSocket pour surveiller les transactions en direct et l'activité du marché. Utilisez-la pour mettre en œuvre des stratégies de trading ou pour créer des outils traitant les mises à jour de marché en direct.

Voir la compétence

creating-opencode-plugins

Méta

Cette compétence aide les développeurs à créer des plugins OpenCode qui s'interconnectent avec plus de 25 types d'événements tels que les commandes, les fichiers et les opérations LSP. Elle fournit la structure du plugin, les spécifications de l'API événementielle et les modèles d'implémentation pour les modules JavaScript/TypeScript. Utilisez-la lorsque vous avez besoin d'intercepter, de surveiller ou d'étendre le cycle de vie de l'assistant IA OpenCode avec une logique personnalisée pilotée par les événements.

Voir la compétence

sglang

Méta

SGLang est un framework de service LLM haute performance spécialisé dans la génération rapide et structurée pour les workflows JSON, regex et agentiques grâce à son cache de préfixe RadixAttention. Il offre une inférence nettement plus rapide, particulièrement pour les tâches avec des préfixes répétés, ce qui le rend idéal pour les sorties complexes et structurées ainsi que les conversations multi-tours. Choisissez SGLang plutôt que des alternatives comme vLLM lorsque vous avez besoin d'un décodage contraint ou que vous construisez des applications avec un partage étendu de préfixes.

Voir la compétence