返回技能列表

analyze-codebase-for-mcp

pjt222
更新于 2 days ago
6 次查看
17
2
17
在 GitHub 上查看
设计aiapimcpdesign

关于

This skill analyzes existing codebases to identify functionality that can be exposed as MCP tools for Claude. It evaluates APIs, functions, and services to determine integration candidates and helps design schemas and access patterns. Use it when planning to connect an existing codebase with Claude via MCP or when deciding what functionality to expose.

快速安装

Claude Code

推荐
主要方式
npx skills add pjt222/agent-almanac -a claude-code
插件命令备选方式
/plugin add https://github.com/pjt222/agent-almanac
Git 克隆备选方式
git clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/analyze-codebase-for-mcp

在 Claude Code 中复制并粘贴此命令以安装该技能

技能文档


name: analyze-codebase-for-mcp locale: es source_locale: en source_commit: 6f65f316 translator: claude-sonnet-4-6 translation_date: 2026-03-16 description: > Analizar un repositorio de código existente para identificar funcionalidad que puede exponerse como herramientas MCP. Evaluar APIs, funciones, y servicios para determinar candidatos de integración MCP, incluyendo diseño de esquemas y patrones de acceso. Usar cuando se quiera conectar una base de código existente con Claude vía MCP, cuando se necesite identificar qué funcionalidad exponer, o cuando se planifique una estrategia de integración MCP. license: MIT allowed-tools: Read Write Edit Bash Grep Glob metadata: author: Philipp Thoss version: "1.0" domain: mcp-integration complexity: intermediate language: multi tags: mcp, analysis, codebase, tools, integration

Analizar Base de Código para MCP

Analizar un repositorio existente para identificar funcionalidad exponer como herramientas MCP.

Cuándo Usar

  • Planificando integración MCP para una base de código existente
  • Identificando qué funciones o APIs exponer como herramientas MCP
  • Evaluando la viabilidad de integración MCP
  • Diseñando la estrategia de herramientas MCP para un proyecto
  • Priorizando funcionalidad para exposición vía MCP

Entradas

  • Requerido: Repositorio de código a analizar
  • Requerido: Lenguaje(s) de programación del proyecto
  • Opcional: Documentación existente de la API
  • Opcional: Casos de uso previstos para la integración MCP
  • Opcional: Restricciones de seguridad o acceso

Procedimiento

Paso 1: Catalogar la Funcionalidad del Proyecto

Escanear el repositorio para identificar funciones, APIs, y servicios exportados.

# Encontrar funciones exportadas (JavaScript/TypeScript)
grep -rn "export function\|export const\|export class" src/ --include="*.ts" --include="*.js"

# Encontrar funciones públicas (Python)
grep -rn "^def \|^class " src/ --include="*.py" | grep -v "^.*:.*_"

# Encontrar funciones exportadas (R)
grep -rn "#' @export" R/ --include="*.R"

# Encontrar endpoints de API
grep -rn "app\.get\|app\.post\|app\.put\|app\.delete\|@app\.route" --include="*.py" --include="*.ts" --include="*.js"

Esperado: Lista de funciones, clases, y endpoints candidatos para exposición MCP.

En caso de fallo: Revisar la documentación del proyecto, examinar los archivos de entrada principales (main, index, app).

Paso 2: Clasificar Candidatos por Tipo MCP

Categorizar la funcionalidad identificada:

Tipo MCPCandidatos
HerramientasFunciones que realizan acciones (CRUD, cálculos, transformaciones)
RecursosDatos que se pueden leer (configuración, estado, catálogos)
PromptsPlantillas de interacción reutilizables

Criterios de selección:

  • Incluir: Funciones bien definidas con entradas/salidas claras
  • Incluir: Operaciones que se benefician del contexto de lenguaje natural
  • Excluir: Funciones internas de infraestructura
  • Excluir: Operaciones que requieren interacción visual
  • Excluir: Funciones con efectos secundarios peligrosos sin confirmación

Esperado: Funcionalidad clasificada en herramientas, recursos, y prompts con justificación.

En caso de fallo: Comenzar con las funciones más simples y de menor riesgo, agregar más iterativamente.

Paso 3: Diseñar Esquemas de Herramientas

Para cada herramienta candidata, diseñar el esquema de entrada/salida:

// Ejemplo: convertir una función existente
// Original: function buscarProductos(query: string, categoria?: string, limite?: number)
// Esquema MCP:
{
  name: "buscar-productos",
  description: "Buscar productos en el catálogo por nombre o categoría",
  inputSchema: {
    query: z.string().describe("Término de búsqueda"),
    categoria: z.string().optional().describe("Filtrar por categoría"),
    limite: z.number().optional().default(10).describe("Resultados máximos"),
  }
}

Esperado: Esquemas diseñados con descripciones claras, validación de tipos, y valores predeterminados.

En caso de fallo: Simplificar esquemas complejos, dividir herramientas grandes en operaciones más pequeñas.

Paso 4: Evaluar Consideraciones de Seguridad

Revisar cada herramienta candidata por riesgos de seguridad:

  • ¿La herramienta modifica datos? -> Requiere confirmación
  • ¿Accede a datos sensibles? -> Requiere autorización
  • ¿Ejecuta código arbitrario? -> Requiere sandboxing
  • ¿Tiene efectos secundarios irreversibles? -> Requiere protección

Esperado: Cada herramienta evaluada con controles de seguridad apropiados identificados.

En caso de fallo: Errar del lado de la precaución. Comenzar con herramientas de solo lectura.

Validación

  • Todas las funciones principales del proyecto identificadas y catalogadas
  • Candidatos clasificados como herramientas, recursos, o prompts
  • Esquemas de entrada/salida diseñados con descripciones claras
  • Consideraciones de seguridad evaluadas para cada candidato
  • Priorización basada en valor y riesgo documentada
  • Plan de implementación con fases definido

Errores Comunes

  • Exponer demasiada funcionalidad: Comenzar con un conjunto pequeño de herramientas de alto valor.
  • Descripciones vagas: Los clientes MCP dependen de las descripciones para decidir cuándo usar herramientas.
  • Ignorar seguridad: Las herramientas MCP son accesibles por el modelo. Evaluar riesgos cuidadosamente.
  • Esquemas demasiado complejos: Simplificar entradas. El modelo trabaja mejor con parámetros simples.
  • No considerar idempotencia: Las herramientas pueden ser invocadas múltiples veces. Diseñar para idempotencia cuando sea posible.

Habilidades Relacionadas

  • build-custom-mcp-server - Implementar el servidor MCP después del análisis
  • scaffold-mcp-server - Generar estructura del proyecto MCP
  • configure-mcp-server - Configurar el servidor resultante
  • review-software-architecture - Revisión de arquitectura complementaria

GitHub 仓库

pjt222/agent-almanac
路径: i18n/es/skills/analyze-codebase-for-mcp
0
agentsagentskillsai-assisted-developmentclaude-codeskillsteams

相关推荐技能

executing-plans

设计

该Skill用于当开发者提供完整实施计划时,以受控批次方式执行代码实现。它会先审阅计划并提出疑问,然后分批次执行任务(默认每批3个任务),并在批次间暂停等待审查。关键特性包括分批次执行、内置检查点和架构师审查机制,确保复杂系统实现的可控性。

查看技能

requesting-code-review

设计

该Skill可在完成任务、实现主要功能或合并代码前自动调度代码审查子代理,确保实现符合需求和计划。它支持通过指定git SHA范围进行精准的代码变更审查,帮助开发者在关键节点及时发现潜在问题。核心原则是"早审查、勤审查",适用于开发流程的各个关键阶段。

查看技能

connect-mcp-server

设计

这个Skill指导开发者如何将MCP服务器连接到Claude Code,支持HTTP、stdio和SSE三种传输协议。它涵盖了从安装配置到认证安全的完整流程,适用于集成GitHub、Notion、数据库等外部服务。当开发者需要添加集成、配置外部工具或提及MCP相关功能时,这个Skill能提供实用的操作指南。

查看技能

web-cli-teleport

设计

该Skill帮助开发者根据任务特性选择Claude Code的Web或CLI界面,并指导如何在两种环境间无缝迁移会话。它能分析任务复杂度、迭代需求等要素,推荐最优工作界面和工作流。关键特性包括会话状态管理、环境切换指导和上下文优化建议。

查看技能