Skip to content

¿Por qué CLI en lugar de MCP?

Lo que Aprenderás

Esta lección te ayudará a entender:

  • ✅ Entender las diferencias de posicionamiento entre MCP y el sistema de habilidades
  • ✅ Comprender por qué CLI es más adecuado para cargar habilidades
  • ✅ Dominar la filosofía de diseño de OpenSkills
  • ✅ Entender los principios técnicos del sistema de habilidades

Tu Dilema Actual

Podrías estar pensando:

  • "¿Por qué no usar el protocolo MCP más avanzado?"
  • "¿La forma CLI no es demasiado antigua?"
  • "¿MCP no es más adecuada para la era de IA?"

Esta lección te ayuda a entender las consideraciones técnicas detrás de estas decisiones de diseño.


Pregunta Central: ¿Qué es una Habilidad?

Antes de discutir CLI vs MCP, primero entendamos la esencia de "habilidad".

Esencia de la Habilidad

Definición de Habilidad

Una habilidad es una combinación de instrucciones estáticas + recursos, incluyendo:

  • SKILL.md: Guía detallada de operación y prompts
  • references/: Documentación de referencia
  • scripts/: Scripts ejecutables
  • assets/: Recursos como imágenes, plantillas, etc.

Una habilidad no es un servicio dinámico, una API en tiempo real o una herramienta que necesita ejecutar un servidor.

Diseño Oficial de Anthropic

El sistema de habilidades de Anthropic está diseñado basado en el sistema de archivos:

  • Las habilidades existen como archivos SKILL.md
  • Se describen habilidades disponibles a través del bloque XML <available_skills>
  • El agente de IA lee el contenido del archivo al contexto bajo demanda

Esto determina que la selección técnica del sistema de habilidades debe ser compatible con el sistema de archivos.


MCP vs OpenSkills: Comparación de Posicionamiento

DimensiónMCP (Model Context Protocol)OpenSkills (CLI)
Escenario AplicableHerramientas dinámicas, llamadas API en tiempo realInstrucciones estáticas, documentos, scripts
Requisitos de EjecuciónRequiere servidor MCPSin servidor (pura archivo)
Soporte de AgentesSolo agentes que soportan MCPTodos los agentes que pueden leer AGENTS.md
ComplejidadRequiere despliegue y mantenimiento de servidorConfiguración cero, listo para usar
Fuente de DatosObtener del servidor en tiempo realLeer del sistema de archivos local
Dependencia de RedRequeridaNo requerida
Carga de HabilidadesA través de llamadas de protocoloA través de lectura de archivos

¿Por qué CLI es Más Adecuado para el Sistema de Habilidades?

1. Las Habilidades Son Archivos

MCP requiere servidor: Necesita desplegar un servidor MCP, procesar solicitudes, respuestas, handshake de protocolo...

CLI solo requiere archivos:

bash
# Habilidades almacenadas en el sistema de archivos
.claude/skills/pdf/
├── SKILL.md              # Archivo de instrucciones principal
├── references/           # Documentación de referencia
   └── pdf-format-spec.md
├── scripts/             # Scripts ejecutables
   └── extract-pdf.py
└── assets/              # Archivos de recursos
    └── pdf-icon.png

Ventajas:

  • ✅ Configuración cero, sin servidor necesario
  • ✅ Las habilidades pueden ser versionadas
  • ✅ Disponible sin conexión
  • ✅ Despliegue simple

2. Universalidad: Todos los Agentes Pueden Usar

Limitaciones de MCP:

Solo los agentes que soportan el protocolo MCP pueden usarlo. Si agentes como Cursor, Windsurf, Aider, etc., implementan MCP individualmente, traerá:

  • Trabajo de desarrollo repetido
  • Problemas de compatibilidad de protocolo
  • Dificultad de sincronización de versiones

Ventajas de CLI:

Cualquier agente que pueda ejecutar comandos shell puede usar:

bash
# Llamada desde Claude Code
npx openskills read pdf

# Llamada desde Cursor
npx openskills read pdf

# Llamada desde Windsurf
npx openskills read pdf

Costo de integración cero: Solo requiere que el agente pueda ejecutar comandos shell.

3. Cumple con el Diseño Oficial

El sistema de habilidades de Anthropic es inherentemente un diseño de sistema de archivos, no un diseño MCP:

xml
<!-- Descripción de habilidad en AGENTS.md -->
<available_skills>
<skill>
<name>pdf</name>
<description>Comprehensive PDF manipulation toolkit...</description>
<location>project</location>
</skill>
</available_skills>

Método de llamada:

bash
# Método de llamada del diseño oficial
npx openskills read pdf

OpenSkills sigue completamente el diseño oficial de Anthropic, manteniendo la compatibilidad.

4. Carga Progresiva (Progressive Disclosure)

Ventaja central del sistema de habilidades: Cargar bajo demanda, mantener el contexto conciso.

Implementación de CLI:

bash
# Solo cargar contenido de habilidad cuando sea necesario
npx openskills read pdf
# Salida: Contenido completo de SKILL.md a salida estándar

Desafíos de MCP:

Si se implementa con MCP, necesita:

  • Servidor gestionando la lista de habilidades
  • Implementar lógica de carga bajo demanda
  • Gestionar contexto

El método CLI soporta naturalmente la carga progresiva.


Escenarios Aplicables de MCP

Los problemas que MCP resuelve son diferentes del sistema de habilidades:

Problemas que MCP ResuelveEjemplo
Llamadas API en Tiempo RealLlamar a OpenAI API, consultas a base de datos
Herramientas DinámicasCalculadora, servicios de conversión de datos
Integración de Servicios RemotosOperaciones Git, sistemas CI/CD
Gestión de EstadoHerramientas que necesitan mantener el estado del servidor

Estos escenarios requieren servidor y protocolo, MCP es la elección correcta.


Sistema de Habilidades vs MCP: No Es una Relación Competitiva

Punto clave: MCP y el sistema de habilidades resuelven diferentes problemas, no es una elección exclusiva.

Posicionamiento del Sistema de Habilidades

[Instrucciones Estáticas] → [SKILL.md] → [Sistema de Archivos] → [Carga CLI]

Escenarios aplicables:

  • Guías de operación y mejores prácticas
  • Documentación y materiales de referencia
  • Scripts estáticos y plantillas
  • Configuración que necesita control de versiones

Posicionamiento de MCP

[Herramientas Dinámicas] → [Servidor MCP] → [Llamada de Protocolo] → [Respuesta en Tiempo Real]

Escenarios aplicables:

  • Llamadas API en tiempo real
  • Consultas a base de datos
  • Servicios remotos que necesitan estado
  • Cálculos y conversiones complejos

Relación Complementaria

OpenSkills no excluye MCP, sino que se enfoca en la carga de habilidades:

Agente IA
  ├─ Sistema de habilidades (OpenSkills CLI) → Cargar instrucciones estáticas
  └─ Herramientas MCP → Llamar servicios dinámicos

Son complementarios, no sustitutos.


Casos Prácticos: ¿Cuándo Usar Cada Uno?

Caso 1: Llamar Operaciones Git

No adecuado para sistema de habilidades:

  • Las operaciones Git son dinámicas, necesitan interacción en tiempo real
  • Dependiente del estado del servidor Git

Adecuado para MCP:

bash
# Llamar a través de herramienta MCP
git:checkout(branch="main")

Caso 2: Guía de Procesamiento PDF

No adecuado para MCP:

  • La guía de operación es estática
  • No necesita ejecutar servidor

Adecuado para sistema de habilidades:

bash
# Cargar a través de CLI
npx openskills read pdf
# Salida: Pasos detallados de procesamiento PDF y mejores prácticas

Caso 3: Consulta a Base de Datos

No adecuado para sistema de habilidades:

  • Necesita conectar a base de datos
  • El resultado es dinámico

Adecuado para MCP:

bash
# Llamar a través de herramienta MCP
database:query(sql="SELECT * FROM users")

Caso 4: Normas de Revisión de Código

No adecuado para MCP:

  • Las normas de revisión son documentos estáticos
  • Necesita control de versiones

Adecuado para sistema de habilidades:

bash
# Cargar a través de CLI
npx openskills read code-review
# Salida: Lista detallada de revisión de código y ejemplos

Futuro: Fusión de MCP y Sistema de Habilidades

Direcciones Posibles de Evolución

MCP + Sistema de Habilidades:

bash
# Habilidades que hacen referencia a herramientas MCP
npx openskills read pdf-tool

# Contenido de SKILL.md
Esta habilidad necesita usar herramientas MCP:

1. Usar mcp:pdf-extract para extraer texto
2. Usar mcp:pdf-parse para analizar estructura
3. Usar scripts proporcionados por esta habilidad para procesar resultados

Ventajas:

  • Las habilidades proporcionan instrucciones avanzadas y mejores prácticas
  • MCP proporciona herramientas dinámicas subyacentes
  • Combinando ambos, la funcionalidad es más poderosa

Etapa Actual

OpenSkills eligió CLI porque:

  1. El sistema de habilidades ya es un diseño maduro de sistema de archivos
  2. El método CLI es simple de implementar y fuertemente universal
  3. No es necesario esperar que cada agente implemente soporte MCP

Resumen de Esta Lección

Las razones principales por las que OpenSkills eligió CLI en lugar de MCP:

Razones Principales

  • Las habilidades son archivos estáticos: Sin servidor necesario, almacenamiento en sistema de archivos
  • Mayor universalidad: Todos los agentes pueden usar, sin depender del protocolo MCP
  • Cumple con el diseño oficial: El sistema de habilidades de Anthropic es inherentemente un diseño de sistema de archivos
  • Despliegue de configuración cero: Sin servidor necesario, listo para usar

MCP vs Sistema de Habilidades

MCPSistema de Habilidades (CLI)
Herramientas dinámicasInstrucciones estáticas
Requiere servidorSistema de archivos puro
API en tiempo realDocumentos y scripts
Requiere soporte de protocoloCosto de integración cero

No Es Competencia, Es Complementariedad

  • MCP resuelve el problema de herramientas dinámicas
  • El sistema de habilidades resuelve el problema de instrucciones estáticas
  • Ambos pueden ser usados juntos

Lecturas Relacionadas


Apéndice: Referencia de Código Fuente

Clic para expandir ver ubicación del código fuente

Hora de actualización: 2026-01-24

FuncionalidadRuta del ArchivoLínea
Entrada CLIsrc/cli.ts39-80
Comando Leersrc/commands/read.ts1-50
Generación AGENTS.mdsrc/utils/agents-md.ts23-93

Decisiones de Diseño Clave:

  • Método CLI: Cargar habilidades a través de npx openskills read <name>
  • Almacenamiento en sistema de archivos: Habilidades almacenadas en .claude/skills/ o .agent/skills/
  • Compatibilidad universal: Salida en formato XML completamente consistente con Claude Code