Saltar al contenido

CrawlForge TeamEquipo de Ingeniería

10 min de lectura

El protocolo MCP explicado: una guía para desarrolladores en 2026

Todo asistente de programación con IA importante -- Claude, Cursor, Windsurf, Cline -- ahora soporta un protocolo compartido para conectarse a herramientas externas. Ese protocolo es MCP, el Model Context Protocol. Si construyes herramientas para desarrolladores, pipelines de datos o aplicaciones de IA, entender MCP ya no es opcional. Es la interfaz estándar entre los LLMs y el mundo exterior.

Esta guía explica MCP desde cero: qué es, cómo funciona a nivel de arquitectura, por qué importa y cómo construir con él.

Tabla de contenidos

¿Qué es el Model Context Protocol?

El Model Context Protocol (MCP) es un estándar abierto creado por Anthropic que define cómo los asistentes de IA se comunican con herramientas y fuentes de datos externas. Publicado en noviembre de 2024, MCP proporciona una interfaz universal para que cualquier cliente de IA pueda conectarse a cualquier servidor compatible con MCP sin código de integración personalizado.

Piensa en MCP como el USB para herramientas de IA. Antes del USB, cada periférico necesitaba su propio conector y driver. MCP hace lo mismo para la IA: estandariza cómo las herramientas describen sus capacidades, cómo los clientes las descubren y cómo fluyen las invocaciones de un lado a otro.

Datos clave sobre MCP:

  • Especificación abierta mantenida por Anthropic
  • Soportado por Claude Code, Claude Desktop, Cursor, Windsurf, Cline y Zed
  • Usa JSON-RPC 2.0 como formato de mensaje
  • Soporta dos mecanismos de transporte: stdio (local) y HTTP+SSE (remoto)
  • Los servidores exponen tres primitivas: Tools, Resources y Prompts

Por qué existe MCP

Antes de MCP, conectar un asistente de IA a una herramienta externa requería:

  1. Escribir un wrapper de API personalizado para cada herramienta
  2. Definir manualmente los esquemas de función para el LLM
  3. Manejar la autenticación, la recuperación de errores y el parseo de respuestas
  4. Repetir este trabajo para cada cliente de IA que quisieras soportar

Este enfoque no escala. Un desarrollador con 10 herramientas y 3 clientes de IA necesitaría 30 puntos de integración. MCP reduce esto a 10 servidores y 3 clientes -- cada uno hablando el mismo protocolo.

El resultado práctico: el autor de una herramienta escribe un MCP server, y funciona en todas partes. El autor de un cliente implementa MCP una vez, y todos los servidores quedan disponibles.

Arquitectura de MCP: cliente, servidor, transporte

MCP sigue una arquitectura cliente-servidor con tres componentes principales:

MCP Host

El host es la aplicación con la que el usuario interactúa -- Claude Desktop, Cursor o una aplicación de IA personalizada. El host gestiona una o más conexiones de cliente MCP y enruta las llamadas a herramientas entre el LLM y el servidor apropiado.

MCP Client

El cliente es un componente a nivel de protocolo dentro del host que mantiene una conexión 1:1 con un único MCP server. Maneja la negociación de capacidades, el descubrimiento de herramientas y la serialización de peticiones/respuestas.

MCP Server

El servidor expone herramientas, recursos y prompts a través del protocolo MCP. Cada servidor es un proceso independiente que puede escribirse en cualquier lenguaje. Los servidores declaran lo que pueden hacer durante el handshake de inicialización.

Capa de transporte

MCP soporta dos mecanismos de transporte:

TransporteCaso de usoConexiónLatencia
stdioHerramientas locales, integraciones CLIPipes de proceso (stdin/stdout)Submilisegundo
HTTP + SSEServidores remotos, despliegues en la nubeHTTP POST + Server-Sent EventsDepende de la red

El transporte stdio se usa para MCP servers locales como CrawlForge. El host lanza el servidor como un proceso hijo y se comunica a través de flujos de E/S estándar. Esto elimina la sobrecarga de red y mantiene todo ejecutándose en la máquina del desarrollador.

HTTP+SSE se usa para servidores remotos. El cliente envía peticiones JSON-RPC vía HTTP POST y recibe respuestas en streaming a través de una conexión Server-Sent Events.

Cómo funciona el descubrimiento de herramientas en MCP

Cuando un cliente MCP se conecta a un servidor, lo primero que hace es descubrir las herramientas disponibles. Esto ocurre a través del método tools/list:

Typescript
// The client sends a tools/list request
const request = {
  jsonrpc: '2.0',
  id: 1,
  method: 'tools/list',
  params: {}
};

// The server responds with its complete tool catalog
const response = {
  jsonrpc: '2.0',
  id: 1,
  result: {
    tools: [
      {
        name: 'fetch_url',
        description: 'Fetch content from a URL with optional headers and timeout',
        inputSchema: {
          type: 'object',
          properties: {
            url: { type: 'string', format: 'uri', description: 'The URL to fetch' },
            headers: { type: 'object', description: 'Custom HTTP headers' },
            timeout: { type: 'number', default: 10000 }
          },
          required: ['url']
        }
      },
      {
        name: 'extract_content',
        description: 'Extract and analyze main content from web pages',
        inputSchema: {
          type: 'object',
          properties: {
            url: { type: 'string', format: 'uri' }
          },
          required: ['url']
        }
      }
      // ... more tools
    ]
  }
};

El asistente de IA lee estas descripciones de herramientas y esquemas para entender qué hace cada herramienta y qué parámetros acepta. Por eso importan las buenas descripciones de herramientas -- influyen directamente en lo bien que el LLM selecciona y parametriza las herramientas.

Cómo funciona la invocación de herramientas en MCP

Una vez que el LLM decide usar una herramienta, el cliente envía una petición tools/call:

Typescript
// Client sends a tool invocation request
const callRequest = {
  jsonrpc: '2.0',
  id: 2,
  method: 'tools/call',
  params: {
    name: 'fetch_url',
    arguments: {
      url: 'https://news.ycombinator.com',
      timeout: 5000
    }
  }
};

// Server executes the tool and returns results
const callResponse = {
  jsonrpc: '2.0',
  id: 2,
  result: {
    content: [
      {
        type: 'text',
        text: '<!DOCTYPE html><html>...' // Full HTML content
      }
    ]
  }
};

El LLM luego procesa la respuesta y puede encadenar llamadas adicionales a herramientas. Por ejemplo, después de obtener una página, podría llamar a extract_content para limpiar el HTML, y luego a analyze_content para extraer los temas clave.

MCP frente a las APIs REST

Los desarrolladores suelen preguntar cómo se compara MCP con las APIs REST tradicionales. Aquí hay una comparación directa:

AspectoMCPAPI REST
DescubrimientoAutomático vía tools/listManual (leer documentación, escribir código de cliente)
EsquemaAutodescriptivo (JSON Schema)Especificación OpenAPI (archivo aparte)
AutenticaciónManejada por el host/transporteCabeceras/tokens por petición
Integración con IANativa -- el LLM lee las descripciones de herramientasManual -- el desarrollador escribe los esquemas de función
Flujos de varias herramientasEl LLM encadena herramientas de forma autónomaEl desarrollador programa la lógica de orquestación
Transportestdio o HTTP+SSESolo HTTP

La diferencia clave: MCP hace que las herramientas sean nativas para la IA. Una API REST requiere que un desarrollador lea la documentación, escriba código de cliente y defina esquemas de función para el LLM. Un MCP server se describe a sí mismo, y la IA averigua cómo usarlo.

Para una comparación técnica más profunda, lee nuestro análisis de MCP frente a REST.

Construir un MCP server

Aquí hay un MCP server mínimo en TypeScript usando el @modelcontextprotocol/sdk oficial:

Typescript
import { Server } from '@modelcontextprotocol/sdk/server/index.js';
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';

const server = new Server(
  { name: 'my-mcp-server', version: '1.0.0' },
  { capabilities: { tools: {} } }
);

// Define a tool
server.setRequestHandler('tools/list', async () => ({
  tools: [{
    name: 'get_weather',
    description: 'Get current weather for a city',
    inputSchema: {
      type: 'object',
      properties: {
        city: { type: 'string', description: 'City name' }
      },
      required: ['city']
    }
  }]
}));

// Handle tool invocation
server.setRequestHandler('tools/call', async (request) => {
  if (request.params.name === 'get_weather') {
    const { city } = request.params.arguments as { city: string };
    // Fetch real weather data here
    return {
      content: [{ type: 'text', text: `Weather in ${city}: 22C, partly cloudy` }]
    };
  }
  throw new Error(`Unknown tool: ${request.params.name}`);
});

// Start the server on stdio
const transport = new StdioServerTransport();
await server.connect(transport);

Este servidor expone una única herramienta get_weather. Cuando se conecta a Claude Code o Cursor, la IA puede descubrirla e invocarla automáticamente.

Ejemplo real de MCP: web scraping

CrawlForge implementa MCP de forma nativa con 31 herramientas. Así es como se ve una interacción real cuando un desarrollador le pide a Claude que investigue un tema:

Prompt del usuario: "Research the top 5 vector databases and compare their pricing."

Lo que hace Claude entre bastidores:

  1. Llama a search_web para encontrar páginas de comparación de bases de datos vectoriales
  2. Llama a extract_content en los 3 mejores resultados para obtener texto limpio
  3. Llama a batch_scrape para obtener las páginas de precios de Pinecone, Weaviate, Qdrant, Milvus y ChromaDB
  4. Llama a analyze_content para extraer datos de precios y comparaciones de características
  5. Sintetiza todo en una comparación estructurada

Cada uno de estos pasos usa una herramienta de CrawlForge diferente, seleccionada automáticamente por el LLM según la tarea en cuestión. El desarrollador escribe cero código de integración.

Este es el poder de MCP: el protocolo maneja el descubrimiento, las descripciones de herramientas guían la selección, y la IA orquesta el flujo de trabajo.

El ecosistema MCP en 2026

El ecosistema MCP ha crecido rápidamente desde la publicación del protocolo:

Clientes (Hosts):

  • Claude Code y Claude Desktop (Anthropic)
  • Cursor (Anysphere)
  • Windsurf (Codeium)
  • Cline (extensión de VS Code)
  • Zed (editor)
  • Aplicaciones personalizadas vía SDK

MCP Servers destacados:

  • CrawlForge -- 31 herramientas de web scraping e investigación
  • GitHub MCP -- gestión de repositorios y búsqueda de código
  • Postgres MCP -- consultas a bases de datos y exploración de esquemas
  • Filesystem MCP -- operaciones con archivos y gestión de directorios

SDKs:

  • TypeScript/JavaScript: @modelcontextprotocol/sdk
  • Python: paquete mcp
  • Implementaciones de la comunidad en Rust, Go y Java

La especificación oficial de MCP es mantenida por Anthropic y evoluciona hacia características como estándares de autenticación, negociación de capacidades y resultados de herramientas en streaming.

Preguntas frecuentes

¿Qué es MCP en términos simples?

MCP (Model Context Protocol) es un estándar que permite a los asistentes de IA como Claude conectarse a herramientas externas. Funciona como un enchufe universal -- cualquier cliente de IA que hable MCP puede usar cualquier MCP server, sin código de integración personalizado. Las herramientas se describen a sí mismas, y la IA averigua cómo usarlas.

¿Quién creó el Model Context Protocol?

Anthropic creó MCP y lo publicó como una especificación abierta en noviembre de 2024. El protocolo se mantiene como un estándar abierto con contribuciones de la comunidad.

¿Qué lenguajes de programación soportan MCP?

Existen SDKs oficiales para TypeScript/JavaScript y Python. Hay implementaciones de la comunidad disponibles para Rust, Go, Java y C#. Como MCP usa JSON-RPC 2.0 sobre transportes estándar (stdio o HTTP), cualquier lenguaje que pueda leer/escribir JSON puede implementar un MCP server.

¿En qué se diferencia MCP del function calling de OpenAI?

El function calling de OpenAI es propietario de la API de OpenAI y requiere que los desarrolladores definan esquemas de función manualmente en cada llamada a la API. MCP es un protocolo abierto donde las herramientas se describen a sí mismas, funciona en múltiples clientes de IA (no solo en un proveedor) y soporta conexiones persistentes, acceso a recursos y plantillas de prompts más allá de simples llamadas a funciones.

¿Cómo usa CrawlForge MCP?

CrawlForge está construido como un MCP server nativo. Cuando lo conectas a Claude Code o Cursor, la IA descubre automáticamente las 31 herramientas de scraping y puede invocarlas según peticiones en lenguaje natural. No se necesita código de wrapper de API. Aprende cómo configurarlo en nuestra guía de inicio rápido.


Construye tu primera integración con MCP hoy. Empieza gratis con 1.000 credits y conecta CrawlForge a Claude en menos de 60 segundos.

Pruébalo tú mismo — sin necesidad de registrarte

Explora las 31 herramientas de scraping y extracción de CrawlForge en el playground y luego empieza gratis con 1,000 credits.

1,000 credits gratis • Por única vez • No se requiere tarjeta de crédito

Etiquetas

  • mcp
  • model-context-protocol
  • ai-engineering
  • claude
  • protocol
  • developer-guide
  • tutorial

Sobre el autor

CrawlForge Team

Equipo de Ingeniería

Construimos el MCP server de web scraping más completo. Creamos herramientas que ayudan a los desarrolladores a extraer, analizar y transformar datos web para aplicaciones de IA.

Newsletter

Mantente al día con los últimos artículos

Recibe tutoriales, novedades del producto y consejos de web scraping en tu bandeja de entrada.

Sin spam. Cancela tu suscripción cuando quieras.

FAQ

Preguntas frecuentes

01¿Qué es el Model Context Protocol (MCP) en términos simples?

MCP es un estándar que permite a los asistentes de IA como Claude conectarse a herramientas externas. Funciona como un enchufe universal -- cualquier cliente de IA que hable MCP puede usar cualquier MCP server, sin código de integración personalizado. Las herramientas se describen a sí mismas, y la IA averigua cómo usarlas.

02¿Quién creó el Model Context Protocol?

Anthropic creó MCP y lo publicó como una especificación abierta en noviembre de 2024. El protocolo se mantiene como un estándar abierto con contribuciones de la comunidad.

03¿En qué se diferencia MCP del function calling de OpenAI?

El function calling de OpenAI es propietario de la API de OpenAI y requiere que los desarrolladores definan esquemas de función manualmente en cada llamada a la API. MCP es un protocolo abierto donde las herramientas se describen a sí mismas, funciona en múltiples clientes de IA (no solo en un proveedor) y soporta conexiones persistentes, acceso a recursos y plantillas de prompts más allá de simples llamadas a funciones.

04¿Cómo usa CrawlForge MCP?

CrawlForge está construido como un MCP server nativo. Cuando lo conectas a Claude Code o Cursor, la IA descubre automáticamente las 31 herramientas de scraping y puede invocarlas según peticiones en lenguaje natural. No se necesita código de wrapper de API.

Sigue leyendo

Artículos relacionados

Ingeniería de IA

11m

Cómo crear un pipeline de RAG con datos web

Crea un pipeline de RAG en producción que rastrea sitios web, extrae contenido, divide el texto en fragmentos, genera embeddings y sirve respuestas con generación aumentada por recuperación.