- SDK .NET: 10.0 o superior
- IDE: Visual Studio 2022 o VS Code con C# Dev Kit
- PowerShell: 7.0 o superior
- Git: Para clonar el repositorio
# 1. Clonar el repositorio
git clone <url-repositorio>
cd mcp-workshop
# 2. Verificar el entorno
.\scripts\verify-setup.ps1
# 3. Generar datos de ejemplo
.\scripts\create-sample-data.ps1
# 4. Construir la solución
dotnet build McpWorkshop.slnNota: Los datos de ejemplo se generan mediante el script
create-sample-data.ps1, que crea archivos JSON endata/(customers.json, products.json, orders.json, sessions.json, abandoned-carts.json, cart-events.json).
Salida esperada del script de verificación:
✓ [REQUERIDO] .NET SDK - Versión correcta instalada
✓ [REQUERIDO] PowerShell - PowerShell 7+ instalado
✓ [REQUERIDO] Puertos TCP - Puertos 5000-5003 disponibles
✓ [REQUERIDO] NuGet Sources - NuGet.org configurado correctamente
✓ [REQUERIDO] Azure CLI - Azure CLI 2.80.0+ instalado
✓ [REQUERIDO] Git - Git instalado
========================================
Estado general: PASS
========================================
✅ El entorno está listo para el taller MCP
# Limpiar y reconstruir
dotnet clean
dotnet restore
dotnet build
# Ejecutar tests
dotnet test
# Ejecutar con logs detallados
dotnet run --verbosity detailed
# Detener todos los servidores dotnet
Get-Process dotnet | Stop-Process -Force| Servidor | Puerto |
|---|---|
| Exercise1Server | 5000 |
| Exercise2Server | 5001 |
| Exercise3Server | 5002 |
| Exercise4Server | 5003 |
| Exercise5Agent | N/A |
| SqlMcpServer (backend) | 5010 |
| CosmosMcpServer (backend) | 5011 |
| RestApiMcpServer (backend) | 5012 |
Formato de Solicitud:
{
"jsonrpc": "2.0",
"method": "resources/list | resources/read | tools/list | tools/call",
"params": {
/* parámetros específicos del método */
},
"id": 1
}Formato de Respuesta:
{
"jsonrpc": "2.0",
"result": {
/* datos de respuesta */
},
"id": 1
}- resources/list: Obtener recursos disponibles
- resources/read: Leer contenido de un recurso
- tools/list: Obtener herramientas disponibles
- tools/call: Ejecutar una herramienta con argumentos
# Buscar proceso usando el puerto
netstat -ano | findstr :5001
# Eliminar proceso (reemplazar PID)
taskkill /PID <PID> /FAsegúrate de que los 3 servidores backend están ejecutándose:
- SqlMcpServer (5010)
- CosmosMcpServer (5011)
- RestApiMcpServer (5012)
# Limpiar y reconstruir
dotnet clean
dotnet restore
dotnet build- Asegúrate de que el servidor está ejecutándose (
dotnet run) - Espera 5 segundos para el inicio del servidor
- Verifica que el puerto no esté bloqueado por el firewall
- Documentación Completa: docs/README.md
- Agenda: docs/AGENDA.md
- Referencia Rápida: docs/QUICK_REFERENCE.md
- Solución de Problemas: docs/TROUBLESHOOTING.md
- Guía del Instructor: docs/INSTRUCTOR_HANDBOOK.md
- Explora el despliegue en Azure: docs/AZURE_DEPLOYMENT.md
- Revisa las notas del instructor para obtener conocimientos más profundos
- Experimenta con herramientas y recursos personalizados
- Únete a las discusiones de la comunidad MCP
- Reporta problemas: GitHub Issues
- Sugiere mejoras: Pull Requests
- Comparte tus servidores MCP: Escaparate de la comunidad