Part 7 of 10
Estás depurando un problema y necesitas consultar la base de datos. Así que abres una terminal, te conectas a PostgreSQL, escribes una consulta, copias los resultados, los pegas en Claude, explicas el esquema... ¿No sería más fácil si Claude pudiera consultar la base de datos directamente?

Eso es exactamente lo que permiten los servidores MCP. Son puentes que conectan a Claude con servicios externos—bases de datos, GitHub, plataformas en la nube, fuentes de documentación—para que Claude pueda trabajar con todo tu ecosistema de desarrollo, no solo con tus archivos locales.
¿Qué es MCP?
Model Context Protocol (MCP) es un estándar abierto para integraciones de IA con herramientas. Piensa en ello como un adaptador universal que permite a Claude conectarse a cualquier servicio que hable el protocolo.
Claude Code ←→ MCP Server ←→ External Service│(Handles auth,data formatting,rate limiting)
El servidor MCP se encarga de toda la complejidad—autenticación, protocolos de API, transformación de datos—para que Claude pueda interactuar de forma natural. Pides "muéstrame los usuarios que se registraron la semana pasada" y Claude consulta tu base de datos directamente.
Por qué es importante:
- Sin flujos de copiar y pegar — Claude accede a los datos en su origen
- Información en tiempo real — Siempre actual, no contexto desactualizado
- Seguro por diseño — Los servidores gestionan las credenciales, no Claude
- Estándar abierto — Funciona con distintas herramientas, no solo Claude
Sobre la base de lo aprendido: Mientras que los comandos esenciales de la Parte 1 controlan el comportamiento de Claude dentro de tu proyecto local, los servidores MCP amplían lo que Claude puede acceder más allá de tu sistema de archivos—bases de datos, APIs, servicios externos y más.
La seguridad primero
Los servidores MCP ejecutan código en tu sistema. Antes de usar cualquier servidor:
- Revisa el código fuente — Comprueba qué permisos necesita
- Usa solo lectura cuando sea posible — Evita modificaciones accidentales
- Limita el acceso — Concede acceso a rutas/tablas específicas
- Confía en tus fuentes — Usa solo servidores bien mantenidos
- Protege las credenciales — Usa variables de entorno, nunca las escribas directamente en el código
Los servidores MCP de terceros no están verificados por Anthropic. Los servidores que obtienen contenido externo pueden exponerte a inyección de prompts. Ten cuidado.
Ubicaciones de configuración
Los servidores MCP se pueden configurar en diferentes ámbitos:
Ámbito de proyecto (recomendado para equipos):
.mcp.json # Bajo control de versiones, compartido con el equipo.claude/settings.local.json # Anulaciones locales, en gitignore
Ámbito de usuario (herramientas personales):
~/.claude/settings.json # Todos tus proyectos~/.claude/settings.local.json # Anulaciones personales
La configuración a nivel de proyecto (.mcp.json) es la opción más limpia—inclúyela en git y todos en tu equipo tendrán la misma configuración.
Estructura de configuración
{"mcpServers": {"server-name": {"command": "npx","args": ["-y", "@package/mcp-server"],"env": {"API_KEY": "${MY_API_KEY}"}}}}
command — El ejecutable a correr (normalmente npx para servidores basados en Node)
args — Argumentos del comando, típicamente el nombre del paquete
env — Variables de entorno, usando la sintaxis ${VAR} para secretos
El comando /mcp
Gestiona los servidores MCP desde dentro de Claude Code:
# Check server status/mcp# Output:# MCP Server Status# • github: connected# • postgres: connected# • context7: failed (connection timeout)
Desde la terminal, usa comandos CLI:
# Add a serverClaude mcp add github --scope user# List configured serversClaude mcp list# Inspect a server's configClaude mcp get github# Remove a serverClaude mcp remove github
Opciones de ámbito:
--scope local— Solo sesión, temporal--scope user— Persistente en todos los proyectos--scope project— Guardado en.mcp.jsonpara compartir con el equipo
Servidores MCP esenciales
GitHub
Integración completa con repositorios—PRs, issues, revisión de código, releases.
{"mcpServers": {"github": {"command": "npx","args": ["-y", "@modelcontextprotocol/server-github"],"env": {"GITHUB_PERSONAL_ACCESS_TOKEN": "${GITHUB_TOKEN}"}}}}
Lo que Claude puede hacer:
- Crear y revisar pull requests
- Gestionar issues y etiquetas
- Buscar código en repositorios
- Disparar workflows
Ejemplo:
"Revisa los PRs abiertos en nuestro repo y resume cuáles están listos para merge"
PostgreSQL
Acceso directo a la base de datos con conocimiento del esquema.
{"mcpServers": {"postgres": {"command": "npx","args": ["-y", "@modelcontextprotocol/server-postgres"],"env": {"DATABASE_URL": "${DATABASE_URL}","READ_ONLY": "true"}}}}
Lo que Claude puede hacer:
- Consultar tablas con lenguaje natural
- Entender relaciones del esquema
- Generar migraciones
- Depurar problemas de datos
Ejemplo:
"Encuentra todos los usuarios que se registraron en enero pero no han hecho ninguna compra"
Context7
Documentación de librerías en tiempo real y específica por versión.
{"mcpServers": {"context7": {"command": "npx","args": ["-y", "@context7/mcp-server"]}}}
Lo que Claude puede hacer:
- Obtener la documentación actual de cualquier paquete npm
- Obtener detalles de API específicos por versión
- Evitar APIs inventadas
- Mantenerse al día con cambios en librerías
Ejemplo:
"usa context7 para buscar la API correcta del hook useInfiniteQuery de React Query"
Esto es especialmente valioso porque los datos de entrenamiento de Claude tienen una fecha de corte—Context7 le da acceso a documentación publicada después del entrenamiento.

Filesystem
Accede a archivos más allá de tu proyecto actual.
{"mcpServers": {"filesystem": {"command": "npx","args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/me/projects"]}}}
Lo que Claude puede hacer:
- Leer archivos de otros directorios
- Acceder a configuración compartida
- Trabajar en múltiples proyectos
Ejemplo:
"Revisa mi repo de dotfiles para ver cómo configuré ESLint"
Supabase
Integración completa con la plataforma Supabase.
{"mcpServers": {"supabase": {"command": "npx","args": ["-y", "@supabase/mcp-server"],"env": {"SUPABASE_URL": "${SUPABASE_URL}","SUPABASE_SERVICE_KEY": "${SUPABASE_SERVICE_KEY}"}}}}
Lo que Claude puede hacer:
- Consultar tablas de Supabase
- Gestionar usuarios de autenticación
- Trabajar con buckets de almacenamiento
- Generar políticas RLS
Web Fetch
Obtén y procesa contenido web.
{"mcpServers": {"fetch": {"command": "npx","args": ["-y", "@modelcontextprotocol/server-fetch"]}}}
Lo que Claude puede hacer:
- Obtener páginas web y APIs
- Procesar sitios de documentación
- Verificar el estado de servicios
- Investigar información actual
Playwright
Automatización del navegador para testing e interacción web.
{"mcpServers": {"playwright": {"command": "npx","args": ["-y", "@anthropic/mcp-server-playwright"]}}}
Lo que Claude puede hacer:
- Navegar páginas web e interactuar con elementos
- Tomar capturas de pantalla y capturar el estado de la página
- Rellenar formularios y hacer clic en botones
- Ejecutar escenarios de prueba end-to-end
- Depurar problemas de UI viendo lo que hay en pantalla
Ejemplo:
"Usa Playwright para navegar a nuestro sitio de staging y comprobar si el formulario de login funciona"
Categorías de servidores
Bases de datos
PostgreSQL — @modelcontextprotocol/server-postgres — Acceso SQL completo
MySQL — @modelcontextprotocol/server-mysql — Integración con MySQL
SQLite — @modelcontextprotocol/server-sqlite — Bases de datos locales
MongoDB — Servidores de la comunidad disponibles — Bases de datos de documentos
Cloud y DevOps
GitHub — @modelcontextprotocol/server-github — API completa de GitHub
GitLab — Servidores de la comunidad — Integración con GitLab
Cloudflare — @cloudflare/mcp-server-cloudflare — Workers, KV, D1, R2
AWS — Servidores de la comunidad — S3, Lambda, etc.
Testing y automatización
Playwright — @anthropic/mcp-server-playwright — Automatización de navegador y pruebas E2E
Documentación e investigación
Context7 — @context7/mcp-server — Documentación de librerías en tiempo real
Perplexity — Servidores de la comunidad — Búsqueda potenciada por IA
Fetch — @modelcontextprotocol/server-fetch — Contenido web
Varios servidores juntos
La mayoría de los proyectos se benefician de varios servidores MCP trabajando juntos:
{"mcpServers": {"github": {"command": "npx","args": ["-y", "@modelcontextprotocol/server-github"],"env": {"GITHUB_PERSONAL_ACCESS_TOKEN": "${GITHUB_TOKEN}"}},"postgres": {"command": "npx","args": ["-y", "@modelcontextprotocol/server-postgres"],"env": {"DATABASE_URL": "${DATABASE_URL}","READ_ONLY": "true"}},"context7": {"command": "npx","args": ["-y", "@context7/mcp-server"]}}}
Claude usa automáticamente el servidor adecuado según tu solicitud. Si preguntas sobre el esquema de la base de datos, usa PostgreSQL. Si preguntas sobre un PR, usa GitHub.
Flujos de trabajo prácticos
Desarrollo orientado a base de datos
You: "Show me the schema for the orders table"Claude: [Queries via postgres MCP]The orders table has:- id (uuid, primary key)- user_id (uuid, foreign key → users)- total_amount (decimal)- status (enum: pending, paid, shipped, delivered)- created_at (timestamp)You: "Find orders over $500 that are still pending"Claude: [Runs query]Found 23 orders matching criteria. The oldest is from 3 days ago...
Automatización entre servicios
You: "Create a GitHub issue for the bug we discussed, assign it to me"Claude: [Uses github MCP]Created issue #234: "Fix race condition in order processing"- Added label: bug, priority-high- Assigned to: @yourusername- Linked to recent commits mentioning the orders table
Programación con documentación actualizada
You: "Use context7 to check the correct way to handle optimistic updates in TanStack Query v5"Claude: [Fetches current docs via context7]In TanStack Query v5, optimistic updates use the onMutate callback...[Provides accurate, version-specific guidance]
Solución de problemas
El servidor no conecta
- Verifica el estado: Ejecuta
/mcppara ver el estado de la conexión - Activa el modo depuración:
claude --mcp-debugpara logs detallados - Verifica las credenciales: Asegúrate de que las variables de entorno estén configuradas
- Prueba manualmente: Ejecuta el comando del servidor directamente en la terminal
Problemas específicos de Windows
En Windows nativo (no WSL), npx requiere un wrapper:
{"command": "cmd","args": ["/c", "npx", "-y", "@modelcontextprotocol/server-github"]}
Sin cmd /c, obtendrás errores de "Connection closed".
Límites de tokens
Las salidas de MCP tienen límites para prevenir desbordamiento de contexto:
- Umbral de advertencia: 10.000 tokens
- Máximo por defecto: 25.000 tokens
Ajústalo con la variable de entorno MAX_MCP_OUTPUT_TOKENS si es necesario.
El servidor no responde
Algunos servidores necesitan tiempo para inicializarse. Si un servidor muestra "failed" inmediatamente después de arrancar, espera un momento y ejecuta /mcp de nuevo.
Mejores prácticas
1. Principio de mínimo privilegio
Solicita solo los permisos necesarios:
{"env": {"READ_ONLY": "true","ALLOWED_PATHS": "/specific/directory"}}
2. Variables de entorno para secretos
Nunca escribas tokens directamente en el código:
{"env": {"GITHUB_TOKEN": "${GITHUB_TOKEN}"}}
Configura las variables en tu perfil de shell o archivo .env.
3. Ámbito de proyecto vs usuario
- Ámbito de proyecto (
.mcp.json): Conexiones a bases de datos, herramientas específicas del proyecto - Ámbito de usuario (
~/.claude/settings.json): GitHub, utilidades personales
4. Revisa el código del servidor
Antes de instalar cualquier servidor MCP, verifica:
- Qué comandos puede ejecutar
- Qué acceso a red necesita
- Quién lo mantiene
- Actividad reciente e issues
Encontrar servidores MCP
Servidores oficiales:
Directorios de la comunidad:
Busca en GitHub:
- Topic:
mcp-server - Busca:
"@modelcontextprotocol"en package.json
Qué viene después
Los servidores MCP amplían el alcance de Claude a servicios externos. Combinados con todo lo que hemos cubierto—comandos, skills y subagentes—ahora tienes un potente conjunto de herramientas para el desarrollo asistido por IA.
En la Parte 8: Flujos de trabajo en producción, uniremos todas las piezas con patrones del mundo real: integración CI/CD, colaboración en equipo y flujos de trabajo que escalan desde un proyecto personal hasta un sistema en producción.
Comandos CLI
claude mcp add [name] --scope [user|project|local]
claude mcp list
claude mcp get [name]
claude mcp remove [name]
En sesión — /mcp (verificar estado)
Depuración — claude --mcp-debug
Ubicaciones de archivos
.mcp.json — Proyecto (bajo control de versiones)
.claude/settings.local.json — Proyecto (en gitignore)
~/.claude/settings.json — Usuario (todos los proyectos)
Stay Updated
Get notified about new posts on automation, productivity tips, indie hacking, and web3.
No spam, ever. Unsubscribe anytime.

