analyze-codebase-for-mcp
关于
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-almanacgit 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 MCP | Candidatos |
|---|---|
| Herramientas | Funciones que realizan acciones (CRUD, cálculos, transformaciones) |
| Recursos | Datos que se pueden leer (configuración, estado, catálogos) |
| Prompts | Plantillas 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álisisscaffold-mcp-server- Generar estructura del proyecto MCPconfigure-mcp-server- Configurar el servidor resultantereview-software-architecture- Revisión de arquitectura complementaria
GitHub 仓库
相关推荐技能
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界面,并指导如何在两种环境间无缝迁移会话。它能分析任务复杂度、迭代需求等要素,推荐最优工作界面和工作流。关键特性包括会话状态管理、环境切换指导和上下文优化建议。
