LABORATORIO
.claude/settings.json Avanzado

MCP: Conectar Claude Code con el Mundo

Lección 05: Model Context Protocol, Servidores y Integraciones

Puntos Clave
  • MCP (Model Context Protocol) es un estándar abierto que conecta modelos de IA con servicios externos mediante un protocolo unificado.
  • La arquitectura sigue un patrón de tres capas: Host (Claude Code) → ClientServerServicio Externo.
  • Tres primitivas fundamentales: tools (acciones ejecutables), resources (datos consultables) y prompts (plantillas reutilizables).
  • Los servidores MCP se configuran en .claude/settings.json y se ejecutan localmente, dando control total sobre el flujo de datos.

Hasta ahora, Claude Code ha trabajado dentro de los límites de tu terminal: lee archivos, ejecuta comandos y edita código. Pero el desarrollo real involucra decenas de servicios externos: GitHub, bases de datos, Slack, APIs internas, buscadores web. MCP es el puente que conecta Claude con todo ese ecosistema sin salir de la terminal.

Qué es MCP (Model Context Protocol)

MCP es un estándar abierto creado por Anthropic y adoptado por la industria. Piensa en él como el USB-C de la inteligencia artificial: un conector universal que permite a cualquier modelo de IA comunicarse con cualquier servicio externo a través de una interfaz estandarizada.

Antes de MCP, cada integración requería código personalizado: parsear la API de GitHub de una forma, la de Slack de otra, la de Postgres de otra completamente distinta. MCP unifica todo bajo un solo protocolo con tres primitivas:

  1. Tools (Herramientas): Acciones que el modelo puede ejecutar. Crear un PR en GitHub, enviar un mensaje a Slack, insertar un registro en la base de datos.
  2. Resources (Recursos): Datos que el modelo puede consultar. El contenido de un fichero, los resultados de una query SQL, el estado de un pipeline de CI.
  3. Prompts (Plantillas): Templates reutilizables que encapsulan flujos complejos. Un prompt para revisar PRs que incluye las guías de estilo del equipo.

Arquitectura de MCP

La comunicación sigue una cadena de cuatro componentes. Haz clic en cada nodo del diagrama para explorar su rol:

Arquitectura MCP
Host
Claude Code
MCP Server
Servidor Local
Servicio
API Externa
Host: Claude Code
Claude Code actúa como host MCP. Descubre los servidores configurados, establece conexiones y expone las herramientas disponibles al modelo. Cuando Claude decide que necesita datos externos o ejecutar una acción, el host enruta la solicitud al servidor MCP correspondiente a través del cliente integrado.
🔌

USB-C para IA

Antes de USB-C, cada fabricante tenía su propio conector. MCP elimina ese problema para la IA: un protocolo, cualquier servicio, cualquier modelo. Los servidores MCP que escribes para Claude funcionan con cualquier host compatible.

Configurar Servidores MCP

Los servidores MCP se registran en el archivo .claude/settings.json de tu proyecto o en la configuración global. Cada servidor se define con su comando de ejecución y variables de entorno necesarias.

Estructura básica de configuración

.claude/settings.json
{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxxxxxxxxxx"
      }
    },
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/dev/projects"]
    },
    "brave-search": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-brave-search"],
      "env": {
        "BRAVE_API_KEY": "BSAxxxxxxxxxxxx"
      }
    },
    "postgres": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-postgres", "postgresql://user:pass@localhost:5432/mydb"]
    }
  }
}

Verificar servidores activos

Una vez configurados, Claude Code detecta automáticamente los servidores al iniciar una sesión. Puedes verificar cuáles están disponibles:

terminal
$ claude

> MCP: 4 servers connected
>   github       - 12 tools available
>   filesystem   - 8 tools available
>   brave-search - 2 tools available
>   postgres     - 5 tools available
> Ready.

Tú: /mcp

> MCP Server Status:
> github       [connected]  tools: create_pr, list_issues, ...
> filesystem   [connected]  tools: read_file, write_file, ...
> brave-search [connected]  tools: brave_search, ...
> postgres     [connected]  tools: query, list_tables, ...

Seguridad: Tokens en settings.json

Nunca commitees tokens o API keys directamente en .claude/settings.json. Usa variables de entorno del sistema o un gestor de secretos. Añade .claude/settings.json a tu .gitignore si contiene credenciales.

Casos de Uso Reales

MCP transforma Claude Code de un asistente de terminal a un agente conectado con toda tu infraestructura. Estos son los patrones más comunes en equipos de desarrollo:

1. Revisión de Pull Requests con GitHub

Claude accede directamente a GitHub para leer diffs, comentarios y el historial del PR. No necesitas copiar y pegar código:

claude session
Tú: Revisa el PR #142 del repo m8d/api-core.
    Enfócate en seguridad y rendimiento.

> [MCP:github] get_pull_request(owner:"m8d", repo:"api-core", number:142)
> [MCP:github] list_pull_request_files(...)
> [MCP:github] get_file_contents(path:"src/auth/middleware.ts")
> [Think] Analyzing 7 changed files...

> Revisión del PR #142:
>
> SEGURIDAD:
> - [CRÍTICO] El middleware de auth no valida el campo
>   "exp" del JWT. Un token expirado pasaría la validación.
> - [MEDIO] La conexión a Redis no usa TLS.
>
> RENDIMIENTO:
> - La query en UserService.findAll() hace N+1.
>   Recomiendo usar include/join.

Tú: Deja esos comentarios directamente en el PR.

> [MCP:github] create_review_comment(...) x3
> 3 comentarios publicados en PR #142.

2. Consultas a Base de Datos

Con el servidor MCP de Postgres, Claude puede explorar esquemas, ejecutar queries de solo lectura y analizar datos sin que salgas de la terminal:

claude session
Tú: Cuántos usuarios se registraron esta semana?
    Desglósalo por día y método de registro.

> [MCP:postgres] list_tables()
> [MCP:postgres] query("SELECT DATE(created_at) as dia,
>   auth_method, COUNT(*) as total FROM users
>   WHERE created_at >= NOW() - INTERVAL '7 days'
>   GROUP BY dia, auth_method ORDER BY dia")

> Registros de la última semana:
>
> Lunes:    OAuth: 23  |  Email: 8   |  Total: 31
> Martes:   OAuth: 19  |  Email: 12  |  Total: 31
> Miércoles: OAuth: 27 |  Email: 5   |  Total: 32
> ...
>
> Total semanal: 198 usuarios (72% OAuth, 28% Email)

3. Búsqueda Web y Herramientas Internas

Otros patrones frecuentes incluyen:

  • Brave Search: Investigar documentación, buscar soluciones a errores o comparar librerías sin abrir el navegador.
  • Slack: Enviar notificaciones al canal del equipo cuando un deploy se completa o un test falla.
  • Herramientas internas: Construir servidores MCP personalizados que conectan con APIs propietarias, dashboards internos o sistemas legacy.
🛠

Construir tu propio servidor MCP

Anthropic publica SDKs oficiales en Python y TypeScript. Un servidor MCP básico puede estar funcionando en menos de 50 líneas de código. Visita modelcontextprotocol.io para tutoriales paso a paso.

Preguntas Frecuentes

Sobre MCP y servidores de contexto

No. MCP es un estándar abierto adoptado por múltiples proveedores de IA, incluyendo OpenAI, Google y otros. Claude Code fue uno de los primeros en implementarlo, pero el protocolo está diseñado para ser universal. Los servidores MCP que construyes funcionan con cualquier host compatible.
Sí. Anthropic publica SDKs oficiales en Python y TypeScript. Un servidor MCP básico puede estar listo en menos de 50 líneas de código. El SDK maneja todo el protocolo de comunicación; tú solo defines las tools, resources o prompts que quieres exponer.
MCP se ejecuta localmente en tu máquina. No hay un intermediario cloud entre tu host y el servicio externo. Tú controlas qué servidores están activos, qué credenciales usan y qué datos fluyen. Además, Claude Code pide permiso antes de ejecutar cualquier herramienta MCP, dando visibilidad total sobre cada operación.