Back to Skills

analyze-codebase-for-mcp

pjt222
Updated 2 days ago
8 views
17
2
17
View on GitHub
Designaiapimcpdesign

About

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.

Quick Install

Claude Code

Recommended
Primary
npx skills add pjt222/agent-almanac -a claude-code
Plugin CommandAlternative
/plugin add https://github.com/pjt222/agent-almanac
Git CloneAlternative
git clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/analyze-codebase-for-mcp

Copy and paste this command in Claude Code to install this skill

Documentation


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 Repository

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

Related Skills

executing-plans

Design

Use the executing-plans skill when you have a complete implementation plan to execute in controlled batches with review checkpoints. It loads and critically reviews the plan, then executes tasks in small batches (default 3 tasks) while reporting progress between each batch for architect review. This ensures systematic implementation with built-in quality control checkpoints.

View skill

requesting-code-review

Design

This skill dispatches a code-reviewer subagent to analyze code changes against requirements before proceeding. It should be used after completing tasks, implementing major features, or before merging to main. The review helps catch issues early by comparing the current implementation with the original plan.

View skill

connect-mcp-server

Design

This skill provides a comprehensive guide for developers to connect MCP servers to Claude Code using HTTP, stdio, or SSE transports. It covers installation, configuration, authentication, and security for integrating external services like GitHub, Notion, and custom APIs. Use it when setting up MCP integrations, configuring external tools, or working with Claude's Model Context Protocol.

View skill

web-cli-teleport

Design

This skill helps developers choose between Claude Code Web and CLI interfaces based on task analysis, then enables seamless session teleportation between these environments. It optimizes workflow by managing session state and context when switching between web, CLI, or mobile. Use it for complex projects requiring different tools at various stages.

View skill