Skip to main content
Glama

MCP Server Bootcamp

by elparchetipk

🚀 MCP Server Bootcamp: De Zero a Hero

Un bootcamp completo y gratuito para dominar la creación de servidores MCP

Open Source GitHub Stars License: MIT PRs Welcome

📚 Comenzar Bootcamp🎯 Módulos🛠️ Instalación🤖 Automatización📑 GitHub Templates y Configuración🤝 Contribuir💬 Comunidad

🎯 ¿Qué Aprenderás?

Transforma tu comprensión de los Model Context Protocol (MCP) Servers desde conceptos básicos hasta arquitecturas empresariales avanzadas en solo 7 semanas:

  • 🔧 Fundamentos Sólidos: Arquitectura, configuración y primer servidor funcional

  • Herramientas Avanzadas: Recursos dinámicos, prompts inteligentes e integración de APIs

  • 🗄️ Persistencia: Bases de datos, ORMs y optimización de performance

  • 🔐 Seguridad: Autenticación, autorización y auditoría empresarial

  • 🧪 Calidad: Testing, CI/CD y observabilidad

  • 🏗️ Arquitecturas: Microservicios, escalabilidad y resilencia

  • 🎯 Proyecto Real: Aplicación completa lista para producción

🚀 Comenzar el Bootcamp

Prerrequisitos

  • Node.js 18+ y pnpm 8+

  • Python 3.11+ (para ejemplos FastAPI)

  • Docker y Docker Compose

  • Git para control de versiones

  • Editor como VS Code (configuración incluida)

Instalación Rápida

# Clonar el repositorio git clone https://github.com/tu-usuario/mcp-server-bootcamp.git cd mcp-server-bootcamp # Configurar workspace pnpm install pnpm run setup # Verificar instalación pnpm run verify-setup # Iniciar el primer módulo cd ejemplos/modulo-01/calculadora-basica pnpm run dev

🐳 Desarrollo con Docker

Configuración Inicial

  1. Copiar las variables de entorno:

# Crear el archivo de configuración local cp .env.example .env
  1. Iniciar los servicios:

# Levantar todos los servicios en background docker compose up -d # Ver el estado de los contenedores docker compose ps
  1. Acceder al entorno de desarrollo:

# Entrar al contenedor de desarrollo docker compose exec bootcamp-dev bash # Una vez dentro del contenedor, instalar dependencias pnpm install # Verificar que todo funciona pnpm run verify-setup

Comandos Útiles de Docker

# Ver logs de todos los servicios docker compose logs -f # Ver logs específicos del servicio de desarrollo docker compose logs -f bootcamp-dev # Ver logs de la base de datos docker compose logs -f db # Reiniciar los servicios docker compose restart # Detener todos los servicios docker compose down # Detener y eliminar volúmenes (¡CUIDADO! Esto borra los datos de la BD) docker compose down -v

Conectar a la Base de Datos

Desde tu máquina local, puedes conectarte a PostgreSQL usando:

  • Host: localhost

  • Puerto: 5432

  • Usuario: bootcamp_user (definido en .env)

  • Contraseña: supersecretpassword (definido en .env)

  • Base de datos: mcp_bootcamp_db (definido en .env)

Desarrollo en el Contenedor

# Ejecutar comandos específicos en el contenedor docker compose exec bootcamp-dev pnpm install docker compose exec bootcamp-dev pnpm run dev docker compose exec bootcamp-dev pnpm test # Trabajar de forma interactiva docker compose exec bootcamp-dev bash # Ahora estás dentro del contenedor y puedes ejecutar cualquier comando

🛠️ Instalación Local (Alternativa)

Si prefieres no usar Docker, puedes configurar el entorno localmente instalando las dependencias directamente en tu máquina. Asegúrate de tener instalados Node.js, Python, y PostgreSQL.

# Instalar dependencias de Node.js npm install # Instalar dependencias de Python (si es necesario) pip install -r requirements.txt # Iniciar el servidor npm run dev

📋 Módulos

📖 Módulo 1: Fundamentos y Conceptos Base

Semana 1 • Comprensión conceptual, configuración y primer servidor

  • 🎯 Días 1-2: Arquitectura MCP y casos de uso

  • 🛠️ Días 3-4: Entorno y calculadora inteligente

  • 🔍 Días 5-7: Anatomía completa de servidores MCP

Módulo 2: Herramientas Avanzadas y Recursos

Semana 2 • Recursos dinámicos y contexto inteligente

  • 📊 Días 8-10: Sistema de recursos y gestión de datos

  • 🧠 Días 11-12: Prompts dinámicos y contexto adaptativo

  • 🌐 Días 13-14: Integración con APIs externas

🗄️ Módulo 3: Persistencia y Bases de Datos

Semana 3 • Almacenamiento y optimización

  • 💾 Días 15-17: SQLite, PostgreSQL y patrones de acceso

  • 🔄 Días 18-19: Prisma ORM y modelado de datos

  • Días 20-21: Cache distribuido y optimización

🔐 Módulo 4: Seguridad y Autenticación

Semana 4 • Seguridad empresarial

  • 🛡️ Días 22-24: Fundamentos y autenticación robusta

  • 👥 Días 25-26: RBAC/ABAC y control granular

  • 📋 Días 27-28: Auditoría y logging estructurado

🧪 Módulo 5: Testing y Calidad

Semana 5 • Calidad y automatización

  • Días 29-31: Testing integral y mocking

  • 🔄 Días 32-33: CI/CD y deployment automatizado

  • 📊 Días 34-35: Monitoreo y observabilidad

🏗️ Módulo 6: Arquitecturas Avanzadas

Semana 6 • Escalabilidad empresarial

  • 🔗 Días 36-38: Microservicios y sistemas distribuidos

  • 🚀 Días 39-40: Performance y escalabilidad extrema

  • 🛡️ Días 41-42: Resilencia y alta disponibilidad

🎯 Módulo 7: Proyecto Final

Semana 7 • Aplicación tu expertise

  • 📋 Días 43-45: Diseño de arquitectura completa

  • 💻 Días 46-47: Implementación con mentoría

  • 🚀 Días 48-49: Deployment y presentación

🛠️ Tecnologías Principales

Tecnología

Uso

Versión

TypeScript

Desarrollo principal

5.0+

Node.js

Runtime JavaScript

18+

Python

Ejemplos FastAPI

3.11+

Docker

Contenedorización

Latest

PostgreSQL

Base de datos

15+

Prisma

ORM

5.0+

🤖 Sistema de Automatización

Este bootcamp incluye un sistema completo de automatización para garantizar calidad y facilitar el desarrollo:

⚡ Autocommit Inteligente

# El sistema ejecuta automáticamente cada 10 minutos: - Detección inteligente de cambios por módulo - Commits con Conventional Commits estándar - Actualización automática del CHANGELOG.md - Logs detallados con rotación automática

Características:

  • 🧠 Detección Inteligente: Categoriza cambios por tipo y módulo

  • 📝 Conventional Commits: Mensajes semánticos automáticos

  • 📋 Changelog Automático: Generación basada en commits

  • 🔒 Ejecución Segura: Sistema de locks y manejo de errores

  • 📊 Logging Completo: Auditoría detallada con rotación

🔧 Scripts de Automatización

Script

Propósito

Uso

scripts/setup.sh

Configuración inicial completa

./scripts/setup.sh

scripts/autocommit.sh

Commits automáticos inteligentes

Ejecuta vía cron

scripts/update-changelog.sh

Actualización del CHANGELOG

./scripts/update-changelog.sh

scripts/build-all.sh

Build de todos los módulos

./scripts/build-all.sh

scripts/lint.sh

Linting y formato de código

./scripts/lint.sh

📋 Control y Configuración

# Gestión del sistema de autocommit ./scripts/setup-autocommit.sh # Activar autocommit ./scripts/remove-autocommit.sh # Desactivar autocommit ./scripts/autocommit-config.sh # Configurar parámetros # Logs y monitoreo tail -f .autocommit/autocommit.log # Ver logs en tiempo real tail -f .autocommit/changelog-generator.log # Ver logs de changelog

📑 GitHub Templates y Configuración

Este proyecto está equipado con un conjunto completo de templates y archivos de configuración para estandarizar las contribuciones, facilitar la gestión y mantener una alta calidad en el código y la documentación.

📂 Estructura de .github

La carpeta .github centraliza toda la configuración relacionada con la comunidad y las contribuciones en GitHub.

🔧 Configuración del Proyecto

Archivo

Propósito

Ubicación

.gitignore

Exclusiones de Git para todo el stack

Raíz del proyecto

pnpm-workspace.yaml

Configuración del workspace

Raíz del proyecto

tsconfig.json

Configuración TypeScript global

Raíz del proyecto

.github/copilot-instructions.md

Directrices para GitHub Copilot

.github/

📋 Templates de Issues

Template

Propósito

Ubicación

🐛 Bug Report

Reportar errores técnicos

.github/ISSUE_TEMPLATE/

✨ Feature Request

Solicitar nuevas funcionalidades

.github/ISSUE_TEMPLATE/

❓ Question

Hacer preguntas técnicas o conceptuales

.github/ISSUE_TEMPLATE/

📚 Educational Improvement

Mejorar contenido pedagógico

.github/ISSUE_TEMPLATE/

📖 Documentation

Mejorar o agregar documentación

.github/ISSUE_TEMPLATE/

⚙️ Config

Configuración de templates

.github/ISSUE_TEMPLATE/

🔄 Templates de Pull Request

Template

Propósito

Ubicación

📝 Pull Request Template

Guía para contribuciones de calidad

.github/

📋 Gobernanza del Proyecto

Documento

Propósito

Ubicación

🤝 Code of Conduct

Normas de convivencia en la comunidad

.github/

📋 Contributing Guidelines

Guía completa para contribuir

.github/

📊 Changelog

Historial de cambios del proyecto

Raíz del proyecto

🔒 Security Policy

Política de seguridad y vulnerabilidades

Raíz del proyecto

🏗️ Plantillas de Desarrollo

Plantilla

Propósito

Ubicación

servidor-base/

Estructura base para nuevos servidores MCP

plantillas/

testing-setup/

Configuración de testing completa

plantillas/

docker-compose-templates/

Templates para Docker Compose

plantillas/

deployment-configs/

Configuraciones de deployment

plantillas/

🐳 Configuración Docker

Archivo

Propósito

Ubicación

node.Dockerfile

Imagen base para Node.js

herramientas/docker/

python.Dockerfile

Imagen base para Python

herramientas/docker/

compose-templates/

Templates de Docker Compose

herramientas/docker/

🔍 Validadores y Herramientas

Herramienta

Propósito

Ubicación

validators/

Scripts de validación de código

herramientas/


💡 Consejo: Todos los templates están diseñados para ser pedagógicamente efectivos y técnicamente robustos, siguiendo las mejores prácticas de la industria y adaptados al contexto educativo del bootcamp.

📊 Evaluación y Certificación

Cada módulo incluye:

  • Rúbricas detalladas con criterios claros

  • 🎯 Ejercicios prácticos con soluciones

  • 🏆 Proyectos incrementales que construyen expertise

  • 📈 Auto-evaluación y peer review

🤝 Contribuir

¡Tu contribución hace que este bootcamp sea mejor para todos!

Formas de Contribuir

  • 🐛 Reportar bugs o mejoras en el contenido

  • 📝 Mejorar documentación y ejemplos

  • 💡 Proponer nuevos módulos o ejercicios

  • 🌍 Traducir contenido a otros idiomas

  • Compartir y dar estrella al repositorio

Proceso de Contribución

  1. Fork el repositorio

  2. Crea una rama para tu feature: git checkout -b feature/nueva-funcionalidad

  3. Commits descriptivos: git commit -m 'feat: agregar ejercicio de WebSockets'

  4. Push a tu fork: git push origin feature/nueva-funcionalidad

  5. Pull Request con descripción detallada

Lee nuestra Guía de Contribución para más detalles.

📜 Licencia

Este proyecto está licenciado bajo la MIT License - mira el archivo LICENSE para detalles.

💬 Comunidad

Discord GitHub Discussions Twitter

¿Tienes preguntas? Únete a nuestras discusiones o crea un issue.

¿Quieres mantenerte actualizado? Síguenos y dale ⭐ al repositorio.


Hecho con ❤️ para la comunidad de desarrolladores MCP

⬆️ Volver arriba

Related MCP Servers

  • A
    security
    A
    license
    A
    quality
    A beginner-friendly Model Context Protocol (MCP) server that helps users understand MCP concepts, provides interactive examples, and lists available MCP servers. This server is designed to be a helpful companion for developers working with MCP. Also comes with a huge list of servers you can install.
    Last updated -
    3
    24
    63
    Apache 2.0
  • -
    security
    A
    license
    -
    quality
    An educational implementation of a Model Context Protocol server that demonstrates how to build a functional MCP server integrating with various LLM clients.
    Last updated -
    2
    MIT License
  • -
    security
    F
    license
    -
    quality
    A comprehensive tutorial project that teaches Model Context Protocol (MCP) development from beginner to advanced levels, covering both server-side and client-side development.
    Last updated -
  • -
    security
    F
    license
    -
    quality
    A tutorial MCP server for learning the Model Context Protocol by building file and system tools. Provides hands-on experience creating custom tools that enable AI models to interact with files and execute system commands.
    Last updated -

View all related MCP servers

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/elparchetipk/bc-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server