Contenido

  1. Introducción — ¿Qué es MCP?
  2. Arquitectura — Host-Client-Server, Transportes, Lifecycle, Primitivas
  3. Historia — De Anthropic a Linux Foundation
  4. SDKs Oficiales — Python, TypeScript, Go, Rust y más
  5. MCP vs REST vs A2A vs Function Calling
  6. Soporte por Plataforma — Claude Code, OpenCode, Cursor, Codex CLI
  7. Servidores Destacados — 15+ Servidores MCP
  8. Marketplaces y Hosting — Glama, Smithery, PulseMCP, Composio
  9. Herramientas y Debugging — Inspector, mcp-cli, mcp-guardian
  10. Fortalezas y Debilidades
  11. Guía de Decisión
  12. Fuentes Verificadas

1 Introducción — ¿Qué es MCP?

El Model Context Protocol (MCP) es un protocolo abierto que define cómo los modelos de lenguaje grandes (LLMs) se conectan con herramientas externas, fuentes de datos, APIs y sistemas. Su nombre completo es revelador: no es solo un protocolo de "tools" — es un protocolo de contexto. Esto significa que no solo permite ejecutar herramientas, sino también inyectar información contextual (documentos, bases de conocimiento, resultados de queries) directamente en el prompt del modelo.

🔌 Frase fundacional: MCP no compite con A2A de Google. MCP conecta LLMs con herramientas (LLM → tool). A2A conecta agentes entre sí (agent → agent). Son complementarios, no competidores.
📜

Protocolo Abierto

JSON-RPC 2.0, stateful, bidireccional. Bajo Linux Foundation, MIT license.

🌐

Agnóstico

Cualquier LLM, cualquier proveedor, cualquier lenguaje. 10 SDKs oficiales.

📈

47.8K GitHub Stars

Ecosistema más grande de servidores y herramientas para IA agentica.

Datos Clave

🧠 La Tesis Central de MCP

Así como LSP estandarizó cómo los editores de código se comunican con lenguajes de programación (un protocolo para todos los editores × todos los lenguajes), MCP estandariza cómo los LLMs se comunican con herramientas y datos (un protocolo para todos los LLMs × todas las herramientas).

Sin MCP, cada plataforma de IA necesita implementar su propio sistema de tools, cada proveedor de herramientas necesita un SDK diferente por plataforma, y los usuarios pierden portabilidad. Con MCP, escribes un server una vez y funciona con cualquier cliente compatible.


2 Arquitectura — Host-Client-Server, Transportes, Lifecycle, Primitivas

MCP tiene una arquitectura de tres capas bien definida, tomando prestados conceptos de LSP pero adaptándolos al contexto de LLMs. Es un protocolo stateful (a diferencia de REST), bidireccional (el server puede hacer solicitudes al host), y negociado (cliente y server acuerdan capacidades al iniciar).

Las 3 Capas

CapaRolEjemplos
HostAplicación de IA que inicia la conexión. Es el "usuario" del protocolo: necesita acceso a herramientas y datos.Claude Desktop, Claude Code, VS Code, OpenCode, Cursor, Windsurf, Continue.dev
ClientConexión 1:1 con un server. El host crea un client por cada server MCP al que se conecta.Cada conexión MCP en la sesión: un client para cada server configurado
ServerExpone herramientas (tools), datos (resources), y plantillas (prompts) al LLM vía el protocolo.Servidor filesystem, servidor PostgreSQL, servidor Playwright, servidor Memory
🔍 Modelo 1:1: Cada server tiene su propio client dedicado. Si tienes 5 servers MCP configurados, el host mantiene 5 conexiones client/server independientes. Esto permite aislamiento y fallos independientes.

Transportes

MCP define múltiples transportes, cada uno optimizado para un escenario distinto. La versión 2025-11-25 estabiliza Streamable HTTP como el transporte remoto recomendado, deprecando SSE.

TransporteTipoEstadoCuándo usarlo
STDIOLocalEstableServidores locales, desarrollo, herramientas de sistema (filesystem, git, shell)
Streamable HTTPRemotoEstable (v2025-11-25)Servidores remotos, APIs SaaS, despliegue en producción. Reemplaza SSE.
SSERemotoDeprecadoLegacy. Migrar a Streamable HTTP. Server-Sent Events unidireccional.
WebSocketRemotoExperimentalCasos bidireccionales de baja latencia. No oficial en spec pero soportado por SDKs.
💡 STDIO vs HTTP: STDIO es ideal para desarrollo local — el server se ejecuta como subproceso, la comunicación es por pipes. Streamable HTTP permite desplegar MCP servers como servicios web independientes, con OAuth 2.0 y descubrimiento via .well-known/mcp.

Lifecycle de una Conexión MCP

El lifecycle es simple pero estricto, y sigue el patrón JSON-RPC 2.0 con tres fases:

  1. Initialize — Cliente envía initialize con su versión y capacidades. Server responde con su versión y capacidades. Sin esto, no hay sesión.
  2. Session — Una vez inicializado, cliente y server intercambian mensajes del protocolo: tools/list, tools/call, resources/list, resources/read, prompts/get, etc.
  3. Shutdown — Cierre ordenado de la conexión. El cliente envía shutdown y cierra el transporte.
// Handshake de inicialización MCP (JSON-RPC 2.0)
{
  "jsonrpc": "2.0",
  "id": "1",
  "method": "initialize",
  "params": {
    "protocolVersion": "2025-11-25",
    "capabilities": {
      "tools": {},
      "resources": {},
      "prompts": {},
      "sampling": {}
    },
    "clientInfo": {
      "name": "my-client",
      "version": "1.0.0"
    }
  }
}

Primitivas del Protocolo

MCP define tres primitivas del lado del server y tres del lado del client. No confundir: las primitivas definen qué puede hacer cada lado, no qué debe implementar.

Primitivas Server → Host

PrimitivaMétodosDescripción
Toolstools/list, tools/callFunciones ejecutables que el LLM puede invocar. Similar a function calling, pero agnóstico al provider. El server las describe y el host (a través del LLM) decide cuándo llamarlas.
Resourcesresources/list, resources/read, resources/subscribeDatos expuestos con URI scheme. Pueden ser archivos, documentos, registros de DB, resultados de API. El host puede leerlos bajo demanda o suscribirse a cambios.
Promptsprompts/list, prompts/getPlantillas de prompt reutilizables con argumentos dinámicos. El usuario o el host pueden invocarlas para inyectar contexto estructurado.

Primitivas Host → Server

PrimitivaMétodosDescripción
Samplingsampling/createMessageEl server puede solicitar al host que genere una respuesta del LLM. Permite que un server "piense" o "complete" texto usando el modelo del host.
Elicitationelicitation/promptEl server puede pedir input al usuario a través del host. Útil para flujos que requieren confirmación humana.
Logginglogging/setLevel, notificacionesEl server puede enviar logs estructurados al host para depuración y monitoreo.
🔄 Bidireccionalidad: A diferencia de REST (solo cliente inicia), MCP permite que el server inicie comunicación hacia el host vía sampling y elicitation. Esto es clave para servidores que necesitan "preguntar" antes de ejecutar una acción peligrosa.

3 Historia — De Anthropic a Linux Foundation

La historia de MCP es inusualmente rápida para un protocolo abierto. En menos de 18 meses pasó de ser un experimento interno de Anthropic a un estándar bajo la Linux Foundation con adopción masiva.

Línea de Tiempo

FechaEvento
Nov 2024Anthropic publica MCP como draft abierto. David Soria Paria y Justin Spahr-Summers son los autores principales. Lanzan SDKs para Python y TypeScript.
Dic 2024Primeros servidores comunitarios. La especificación atrae atención de la comunidad agentica. Se crea el repo modelcontextprotocol/servers con servidores oficiales.
Mar 2025Versión 2025-03-26. Se estabilizan tools, resources, y prompts como primitivas core. Se añade soporte para Streamable HTTP como transporte remoto experimental.
Jun 2025Versión 2025-06-18. MCP se transfiere a Linux Foundation. Se forma un comité técnico multi-empresa (Anthropic, OpenAI, Microsoft, Google, AWS). Se añade sampling y logging. Primer marketplace comunitario (Smithery).
Sep 2025Streamable HTTP se estabiliza. SSE se depreca. Se añade OAuth 2.0 como mecanismo de autenticación estándar. Glama alcanza 10K servidores listados.
Nov 2025Versión 2025-11-25 — latest stable. Elicitation se añade como primitiva. WebSocket experimental. Python SDK v1 estable. TypeScript SDK v1 estable.
Jun 202647.8K GitHub followers, 31,818 servidores en Glama, 10 SDKs oficiales. Python SDK v2 en main. TypeScript SDK v2 pre-alpha (Q3 2026).
🏛️ Gobernanza: MCP bajo Linux Foundation significa que ninguna empresa controla el protocolo. El comité técnico incluye Anthropic, OpenAI, Microsoft, Google y AWS — competidores directos sentados en la misma mesa. Esto es inusual y habla de la necesidad de un estándar unificado.

El Momento LSP

MCP está viviendo su "momento LSP" — así como LSP unificó la experiencia de editores de código con lenguajes de programación, MCP está unificando la experiencia de LLMs con herramientas. La analogía es casi perfecta:

DimensiónLSP (2016)MCP (2024–2025)
ProblemaCada editor tenía su propio sistema de plugins para autocompletado, cada lenguaje su propio protocolo.Cada plataforma de IA tiene su propio sistema de tools, cada proveedor su propia integración.
SoluciónProtocolo común: cualquier editor × cualquier lenguajeProtocolo común: cualquier LLM × cualquier herramienta
CreadorMicrosoft (VS Code team)Anthropic (Claude team)
GobiernoAbierto (comité multi-empresa)Linux Foundation (comité multi-empresa)
Adopción~2 años para adopción masiva~1 año para adopción masiva (más rápida)

4 SDKs Oficiales — Python, TypeScript, Go, Rust y más

Actualmente hay 10 SDKs oficiales para MCP, cubriendo los lenguajes más populares del ecosistema de IA. La calidad y madurez varía significativamente entre ellos.

LenguajePackageStarsEstadoNotas
Pythonpip install mcp[cli]23.3Kv1 stableSDK más usado. Incluye FastMCP, CLI, y helpers de transporte. v2 en main (pre-alpha).
TypeScriptnpm i @modelcontextprotocol/sdk12.6Kv1 stableSDK oficial de referencia. v2 pre-alpha esperado Q3 2026.
Gogithub.com/mark3labs/mcp-go3.5KMaduroMantenido por mark3labs. Soporta STDIO y HTTP. Usado en producción.
Rustcrates.io/crates/mcp-core3.5KMaduroSDK oficial en Rust. Buen rendimiento. Usado para servidores de alto throughput.
JavaSpring AI MCPMaduroIntegración con Spring AI. Ideal para ecosistemas Java enterprise.
KotlinMCP Kotlin SDKBetaBasado en el SDK de Java. Funcionalidad completa.
C# (.NET)MCP .NET SDK4.3KMaduroBuena adopción en ecosistema .NET. Documentación clara.
SwiftMCP Swift SDKBetaPara macOS/iOS clients. Uso nicho.
PHPMCP PHP SDKBetaComunidad activa. Bueno para servidores web PHP.
RubyMCP Ruby SDKBetaMenor adopción pero funcional.

Python SDK: El Más Usado

El SDK de Python es, con diferencia, el más popular del ecosistema MCP. Incluye FastMCP, una abstracción de alto nivel que permite crear servidores en pocas líneas:

from mcp.server.fastmcp import FastMCP

# Crear server con FastMCP
mcp = FastMCP("Mi Servidor", port=8080)

# Tool — ejecutable por el LLM
@mcp.tool()
def calcular_precio(producto: str, cantidad: int) -> float:
    """Calcula el precio total para un producto"""
    precio_base = {"laptop": 999.99, "mouse": 29.99}
    return precio_base.get(producto, 0) * cantidad

# Resource — datos accesibles por URI
@mcp.resource("catalog://productos/{producto}")
def get_producto(producto: str) -> dict:
    """Obtiene info de un producto"""
    return {"nombre": producto, "stock": 42}

# Prompt — plantilla reutilizable
@mcp.prompt()
def revisar_pedido(pedido_id: str) -> str:
    """Prompt para revisar un pedido"""
    return f"Revisa el pedido {pedido_id} y verifica..."

if __name__ == "__main__":
    mcp.run()  # STDIO por defecto

FastMCP maneja automáticamente la serialización JSON-RPC, el descubrimiento de tools/resources/prompts, y la negociación de capacidades. El mismo server funciona con STDIO (local) y Streamable HTTP (remoto) sin cambiar código.

📦 Instalación: pip install mcp[cli] instala el SDK + CLI de MCP. El CLI incluye mcp run, mcp dev, mcp install, y mcp inspector.

5 MCP vs REST vs A2A vs Function Calling

MCP no es la única forma de conectar LLMs con el mundo exterior. Existen al menos cuatro paradigmas compitiendo. Entender sus diferencias es crucial para elegir el correcto.

DimensiónMCPREST APIA2A (Google)Function Calling (OpenAI)
FilosofíaProtocolo para LLMs → herramientasArquitectura stateless para APIs webProtocolo para agentes → agentesFormato inline para definir funciones en requests LLM
Stateful — sesión negociadaNo — stateless — cards + sesionesNo — por request
Bidireccional — server → host (sampling, elicitation)No — solo cliente inicia — agent-to-agentNo — LLM responde herramientas
Autodescubrimientotools/list, resources/list, prompts/listNo — documentación externa — Agent CardNo — las defines tú en el prompt
TransporteSTDIO, HTTP, WebSocketHTTP(S)HTTP(S) + SSEHTTP(S) — vía API de OpenAI
Provider-agnóstico — cualquier LLM — cualquier agenteNo — solo OpenAI
Servidores reusables — mismo server para cualquier cliente — misma API para cualquier cliente — mismo agente para cualquier agenteNo — definición inline en cada request
Resources + Prompts — datos y plantillas como primitivasNo — solo endpointsNo — solo skills/tasksNo — solo funciones
Madurezv2025-11-25 estable, 47.8K starsDécadas de usoDraft 2025, <5K adoptionMaduro pero propietario

¿Cuándo usar cada uno?

🔌

MCP

Cuando tu LLM necesita conectarse a herramientas y datos externos de forma agnóstica al proveedor.

🌍

REST

Cuando construyes una API web tradicional para consumo humano o machine-to-machine stateless.

🤖

A2A

Cuando necesitas que agentes autónomos colaboren entre sí (orquestación multi-agente).

🔗 MCP + A2A = Stack Completo

La combinación más potente hoy es MCP + A2A: MCP para conectar cada agente con sus herramientas y datos, A2A para conectar los agentes entre sí. MCP es la capa de "recursos", A2A la capa de "orquestación".

Ejemplo: Un agente analista financiero usa MCP para consultar datos de mercado (tool) y leer informes PDF (resource), luego usa A2A para delegar a un agente de visualización que genera gráficos, y a otro agente de reportes que redacta el informe final.


6 Soporte por Plataforma — Claude Code, OpenCode, Cursor, Codex CLI

No todas las plataformas agenticas soportan MCP por igual. Esta tabla muestra el nivel de soporte real de cada plataforma a junio 2026, basado en documentación oficial y análisis de código fuente.

PlataformaNivelTransportesPer-agentOAuth 2.0Notas
Claude CodeNativo (inventor)stdio, http, sse, wsSí nativoCompletoConfig via .mcp.json o claude mcp add. 3 scopes (local/project/user). Per-agent nativo via mcpServers en YAML frontmatter (inline o referencia). MCP servers pueden hacer elicitation. claude mcp serve expone Claude Code como MCP server.
OpenCodeNativostdio, httpParcialCompletoConfig via opencode.jsonmcp. Per-agent via glob patterns (servername_toolname) — solo habilita/deshabilita servers globales. Remote MCP defaults via .well-known/opencode. CLI: opencode mcp auth/list/logout/debug.
CursorNativostdio, httpNoLimitadoConfig via .cursor/mcp.json. Soporte básico de tools, sin resources/prompts.
WindsurfNativostdio, httpNoLimitadoConfig via .windsurf/mcp_config.json. Soporte básico.
Continue.devNativostdioNoNoConfig via continue.jsonexperimental.mcpServers. Solo STDIO. Bueno para desarrollo.
VS Code (GitHub Copilot)Extensiónstdio, httpNoLimitadoVía extensión "MCP Client" o "Continue". No nativo en Copilot.
Codex CLI (OpenAI)Soportastdio, http, sseSí nativoParcialConfig via ~/.codex/agents/*.tomlmcp_servers. Cada custom agent define sus propios MCP servers. Clientes: CLI e IDE Extension. Codex Desktop: sin soporte documentado.
ZencoderNo soportaN/AN/AN/AEcosistema cerrado. No hay soporte MCP.

Claude Code: El Más Maduro

Al ser el inventor de MCP, Claude Code tiene el soporte más completo y maduro. Algunas capacidades exclusivas:

OpenCode: Per-Agent MCP Nativo

OpenCode es la única plataforma que ofrece MCP per-agent nativo, sin necesidad de plugins. Esto significa que puedes configurar qué MCP servers están disponibles para cada agente individualmente:

// opencode.json — configuración MCP
{
  "mcp": {
    "servers": {
      "filesystem": {
        "command": "npx",
        "args": ["-y", "@modelcontextprotocol/server-filesystem", "/tmp"]
      },
      "db": {
        "command": "python",
        "args": ["mcp_server_db.py"]
      }
    }
  },
  "agents": {
    "coder": {
      "model": "anthropic/claude-sonnet-4-20250514",
      "mcp": {"filesystem": "allow"}  // solo filesystem para coder
    },
    "analyst": {
      "model": "openai/gpt-5",
      "mcp": {"db": "allow"}  // solo DB para analyst
    }
  }
}

OpenCode también soporta Remote MCP Discovery via .well-known/opencode — un estándar que permite que un proyecto declare sus MCP servers remotos automáticamente al abrirse, sin configuración manual.

⚠️ Zencoder no soporta MCP. Codex CLI sí soporta MCP (nativamente, con per-agent via mcp_servers en TOML). Zencoder tiene un ecosistema completamente cerrado. Si la portabilidad entre plataformas es importante, esto es una limitación a considerar.

7 Servidores Destacados — 15+ Servidores MCP

El ecosistema de servidores MCP es vasto y crece rápidamente. Estos son los servidores más importantes, categorizados por función. Datos verificados a junio 2026.

Navegación y Web

ServerAutorFunciónStars
Playwright MCPMicrosoftBrowser automation headless. Navegación, clicks, formularios, screenshots. El servidor MCP más popular.33.6K
Brave SearchBraveWeb search + local search. Integración con Brave Search API.
FetchOficial (modelcontextprotocol)Web fetching. Descarga y procesa URLs.

Sistema y Archivos

ServerAutorFunción
FilesystemOficialOperaciones de archivos seguras con path sandboxing. Leer, escribir, mover, copiar dentro de directorios permitidos.
GitOficialComandos git desde el LLM: status, diff, log, commit, push, pull, branch.
ShellComunitarioEjecución de comandos shell con sandboxing. Peligroso pero útil para automatización.

Bases de Datos

ServerTipoFunción
PostgreSQLOficialConsultas SQL, esquemas, migrations. El DB server más usado.
SQLiteOficialBases de datos locales embebidas. Ideal para prototipado.
RedisComunitarioOperaciones con Redis: get/set, keys, pub/sub.
Neo4jComunitarioConsultas Cypher, grafos de conocimiento.

Productividad y Colaboración

ServerFunción
Slack (Zencoder)Canales, mensajes, búsqueda, reacciones. Publicar y leer en Slack desde el LLM.
GitHubIssues, PRs, repos, code review. Gestión de repositorios completa.
GitLabAnálogo a GitHub pero para GitLab. Issues, MRs, pipelines.
JiraIssues, sprints, proyectos. Gestión de tareas.
LinearIssues, equipos, ciclos. Alternativa moderna a Jira.
NotionPáginas, bases de datos, búsqueda. Documentación.
FigmaComponentes, archivos, comentarios. Diseño.
Gmail / Google CalendarEmail y calendario. Gestión de comunicación.

Observabilidad y DevOps

ServerFunción
SentryIssues, eventos, performance. Depuración de errores.
DatadogMétricas, logs, trazas, dashboards. Monitoreo.
CloudflareDNS, Workers, Pages, KV. Gestión de infraestructura.
AWS / GCP / AzureServicios cloud: S3, EC2, Lambda, etc.

Memoria y Conocimiento

ServerFunción
Memory (Oficial)Knowledge graph persistente. El servidor MCP de memoria más usado. Almacena entidades, relaciones, y observaciones como grafo. Persistencia en archivo JSON.
Mem0 / MemobaseMemoria a largo plazo con vectores y PostgreSQL. Alternativas más escalables que Memory oficial.

Integración Multi-Servicio (Composio)

🔗 Composio: 985 toolkits, 20K+ tools SaaS. No es un servidor MCP individual sino una plataforma completa de integración que expone herramientas vía MCP. Gestiona autenticación OAuth, rate limiting, y descubrimiento. Es el puente entre MCP y el ecosistema SaaS empresarial.

8 Marketplaces y Hosting — Glama, Smithery, PulseMCP, Composio

El ecosistema MCP ha generado múltiples marketplaces y plataformas de hosting. Cada uno tiene un enfoque distinto:

PlataformaServidoresTipoCaracterísticas
Glama31,818Registry + Hosting + GatewayEl más grande. Hosting gerenciado, API gateway, quality scoring, analytics. Freemium con tiers. Ideal para producción.
MCP Registry (GitHub)vendor-neutralMetadata-only (JSON)Repositorio oficial bajo github.com/mcp. Solo metadatos — sin hosting, sin gateway. El estándar de referencia para descubrimiento.
Smithery~5,000Marketplace + DiscoveryPrimer marketplace comunitario. UI amigable, instalación con 1 click. Bueno para descubrimiento y prototipado.
PulseMCP~3,000Newsletter + DiscoveryComunidad + newsletter semanal. Reviews de servidores, tutoriales, caso de uso. Para estar al día.
Composio985 toolkitsEnterprise Integrations + AuthNo es un marketplace de servidores MCP puro, sino una plataforma de integración SaaS que expone 20K+ tools vía MCP. Auth OAuth gerenciado, rate limiting, logging.
🏆 Ganador en cantidad: Glama con 31,818 servidores. Su quality scoring (basado en tests, documentación, y estabilidad) lo hace útil para seleccionar servers confiables. Su API gateway permite usar MCP servers sin desplegar infraestructura propia.

Hosting de MCP Servers

Además de los marketplaces, existen opciones para hostear tus propios MCP servers:


9 Herramientas y Debugging — Inspector, mcp-cli, mcp-guardian

El ecosistema MCP incluye herramientas para desarrollo, debugging, testing, y seguridad en producción.

HerramientaFunciónStarsUso Principal
MCP InspectorUI browser-based para inspeccionar MCP servers. Conecta, lista tools/resources/prompts, ejecuta tools, ve logs en tiempo real.10KDebugging durante desarrollo de servidores
mcp-cliCLI para interactuar con MCP servers desde terminal. mcp-cli connect smithery.ai/playwrightTesting rápido y scripting
MCPProxyProxy intermedio que loggea, rate-limita, y transforma requests entre client y server MCP.Producción — monitoreo y seguridad
mcp-guardianSecurity layer para MCP. Políticas de permisos, whitelist de tools, validación de args, detección de anomalías.Producción — seguridad
FastMCPFramework Python de alto nivel para construir MCP servers (incluido en SDK).Desarrollo — creación rápida de servidores
FastAPI-to-MCPConvierte APIs FastAPI existentes en MCP servers automáticamente.Migración — exponer APIs REST como MCP
Spring AI MCPFramework Java/Spring para MCP servers.Desarrollo enterprise Java

MCP Inspector en Acción

El MCP Inspector es la herramienta más útil para desarrollo. Se ejecuta en el navegador y permite:

# Usar MCP Inspector vía CLI
npx @modelcontextprotocol/inspector \
  npx @modelcontextprotocol/server-filesystem /tmp

# O vía Python
mcp inspector run my_server.py

# mcp-cli: conectar a un server y listar tools
mcp-cli connect stdio --command "python my_server.py"
> tools/list

10 Fortalezas y Debilidades

MCP no es perfecto. Como protocolo joven (18 meses desde su creación), tiene áreas de mejora importantes. Este análisis balanceado cubre ambos lados.

Fortalezas

1. Estandarización real — Por primera vez, hay un protocolo común que cualquier LLM puede usar para conectarse a cualquier herramienta. Esto es análogo a lo que HTTP hizo para las APIs web y LSP para los editores de código.
2. Adopción masiva acelerada — 47.8K GitHub followers, 31,818 servidores en Glama, 10 SDKs oficiales, soporte en las principales plataformas (Claude Code, OpenCode, Cursor, Windsurf, Continue.dev) — todo en 18 meses. Comparado con LSP que tardó ~2 años en alcanzar masa crítica.
3. Gobernanza neutral — Bajo Linux Foundation con comité multi-empresa. Ningún proveedor controla el protocolo. Anthropic, OpenAI, Microsoft, Google y AWS tienen voz y voto.
4. Bidireccionalidad — MCP permite que el server inicie comunicación hacia el host (sampling, elicitation). Esto es único entre los protocolos de IA y permite flujos más ricos que REST o function calling.
5. Primitivas más allá de tools — Resources y prompts como primitivas de primera clase permiten casos de uso que function calling no cubre: inyección de documentos, plantillas reutilizables, suscripción a cambios en datos.
6. Múltiples transportes — STDIO para local, Streamable HTTP para remoto, WebSocket para baja latencia. El mismo server puede funcionar en todos sin cambiar código (con FastMCP).

Debilidades

1. Protocolo verboso — JSON-RPC 2.0 con mensajes completos de inicialización, negociación de capacidades, y notificaciones. Para servidores simples, la sobrecarga del protocolo puede ser excesiva comparada con una REST API directa.
2. Madurez desigual de SDKs — Python y TypeScript son maduros (v1 stable). Go, Rust, Java y C# son funcionales pero menos probados. Swift, PHP, Ruby están en beta. No hay SDKs para C, C++, Zig, o lenguajes de sistemas populares.
3. Sin soporte en plataformas clave — Zencoder no soporta MCP. Aunque Codex CLI (OpenAI) sí lo soporta desde 2025, su adopción no es tan amplia como en Claude Code u OpenCode. Esto divide el ecosistema entre plataformas MCP-friendly y cerradas.
4. Seguridad aún inmadura — No hay autenticación estándar entre cliente y server (OAuth 2.0 es opcional). mcp-guardian ayuda pero no es oficial. El sandboxing de paths en Filesystem server es frágil. No hay un modelo de permisos granular estándar.
5. Descubrimiento fragmentado — No hay un registro central oficial. Glama, Smithery, PulseMCP y el MCP Registry coexisten sin interoperabilidad. No hay un "npm para MCP servers".
6. Streaming limitado — MCP soporta streaming de resources pero no de tools. Si una tool necesita hacer streaming de datos (ej: un LLM generando texto), no hay soporte nativo. Esto limita casos de uso en tiempo real.
7. Dependencia de JSON-RPC — Algunos críticos argumentan que JSON-RPC 2.0 es una elección anticuada y que gRPC o WebSocket puro hubieran sido mejores para rendimiento y eficiencia.

📊 Veredicto

DimensiónPuntuaciónComentario
Estandarización★★★★★El único protocolo abierto multi-provider para LLM→tool
Adopción★★★★★47.8K stars, 31K+ servers, soporte en 5+ plataformas en 18 meses
Gobernanza★★★★★Linux Foundation, multi-empresa, MIT license
SDKs★★★★☆10 lenguajes, pero solo 2 maduros (Python, TS)
Seguridad★★★☆☆OAuth 2.0 existe pero es opcional, sin modelo de permisos estándar
Rendimiento★★★★☆JSON-RPC es verboso pero STDIO es rápido para local
Cobertura platforms★★★☆☆5+ soportan, pero Codex CLI y Zencoder no
Documentación★★★★☆Buena spec y ejemplos, pero fragmentada entre múltiples fuentes
Global★★★★☆El estándar emergente más prometedor, con debilidades propias de su juventud

11 Guía de Decisión

¿Cuándo deberías usar MCP? ¿Cuándo NO? Esta guía te ayuda a decidir.

Usa MCP cuando...

NO uses MCP cuando...

Árbol de Decisión

¿Necesitas conectar un LLM con herramientas externas?
├── Sí
│   ├── ¿Tu plataforma target soporta MCP?
│   │   ├── Sí (Claude Code, OpenCode, Cursor, Windsurf, Continue)
│   │   │   └── ✅ Usa MCP — ganas portabilidad y estandarización
│   │   └── No (Zencoder)
│   │       └── ❌ No puedes usar MCP — usa plugin system nativo
│   │
│   ├── ¿Necesitas también orquestación multi-agente?
│   │   ├── Sí → MCP + A2A (combinación ideal)
│   │   └── No → MCP solo es suficiente
│   │
│   └── ¿Necesitas solo function calling simple?
│       ├── Sí → MCP puede ser overkill; considera function calling nativo
│       │        si usas un solo proveedor
│       └── No → MCP es la mejor opción
│
└── No
    ├── ¿Necesitas API web tradicional?
    │   ├── Sí → REST
    │   └── No → No necesitas MCP ni REST
    │
    └── ¿Necesitas orquestación agent-to-agent?
        ├── Sí → A2A
        └── No → Evalúa si realmente necesitas un protocolo

📚 Fuentes Verificadas

Todas las afirmaciones en esta clase están respaldadas por documentación oficial, especificaciones, y datos de mercado verificados a junio 2026.

Especificación y Documentación Oficial

Plataformas

SDKs y Paquetes

Marketplaces y Hosting

Servidores Destacados

Herramientas

Última verificación: Junio 2026. Las especificaciones y documentación pueden cambiar; consulte las fuentes oficiales para información actualizada.