Visual Studio Code (VS Code) es una herramienta poderosa que, junto con Azure Container Apps y GitHub Copilot, permite configurar fácilmente servidores MCP (Machine Communication Protocol). A través de la integración de estas tecnologías, puedes consumir servicios desplegados tanto en la nube como localmente. Vamos a revisar cómo hacerlo paso a paso.
¿Cómo habilitar MCP en Visual Studio Code?
Para comenzar a consumir servidores MCP desde VS Code, es esencial activar la opción adecuada en la configuración (settings). Sigue estos pasos claramente definidos:
En VS Code, accede a File > Preferences > Settings.
Escribe "MCP" en la barra de búsqueda.
Asegúrate de activar la opción chat.MCP.discovery.enabled.
Esta característica permitirá que VS Code detecte y conecte nuevos servidores MCP.
¿Cómo comprobar que MCP está activado correctamente en settings.json?
Es posible verificar y editar esta configuración desde el archivo JSON:
"chat.MCP.discovery.enabled":true
Esta línea debe estar habilitada bajo tu perfil de usuario.
¿Cómo añadir y configurar servidores MCP en VS Code?
Al detectar MCP habilitado, VS Code generará automáticamente una plantilla de configuración. Puedes personalizar esta plantilla cambiando ciertas propiedades:
Copia la URL del servidor publicado en Azure Container Apps.
Usa una estructura como la siguiente en tu archivo de configuración JSON:
Al completar estos campos correctamente, se habilitará tu servidor MCP dentro de VS Code.
¿Qué hacer si ocurren conflictos o errores en la configuración MCP?
Durante la configuración puedes encontrar errores o conflictos, especialmente con plantillas generadas automáticamente:
Revisa que los campos inputs tengan la estructura adecuada.
Si un servidor genera conflictos (marcado en rojo en la interfaz), desactívalo temporalmente desde VS Code simplemente eliminándolo o comentándolo del JSON.
Al corregir estos detalles, garantiza un funcionamiento estable de los servidores.
¿Cómo interactuar con los servidores MCP mediante GitHub Copilot?
Una vez configurado, utiliza GitHub Copilot (modo agente) para interactuar con el servidor MCP directamente desde su interfaz chat:
Elige "modo agente" en Copilot.
Selecciona el servidor MCP específico (por ejemplo, weather SSE).
Solicita acciones específicas, como obtener información del clima o realizar cálculos.
Copilot autocompletará consultas y facilitará la interacción automatizando incluso tareas como obtener la latitud y longitud de ubicaciones específicas.
Interactuar con estos servicios a través de GitHub Copilot simplifica considerablemente las tareas rutinarias de desarrollo y administración de servidores.
¿Cuáles operaciones aritméticas has ejecutado con tu servidor MCP desde GitHub Copilot? Comparte tu experiencia en los comentarios, ¡nos interesa conocer tus prácticas favoritas!
si esta bien malo, asumen que se conoce muchas cosas. y no dan la informacion completa
De los peores cursos que he visto en platzi :(
En vscode me pidio que entrara a un archivo mcp.json dedicado, asi que hice ctrl + p y escribi "mcp.json"
Dentro configure archivo de esta forma:
{"inputs":[{"type":"promptString","id":"weather-api-key","description":"Weather api key","password":true}],"servers":{"mcp-server-time":{"command":"python","args":["-m","mcp_server_time","--local-timezone=America/Los_Angeles"],"env":{}},"calculator":{"command":"mcp","args":["run","/home/joselatino/platzi/mcp/clase9/server.py"],"cwd":"/home/joselatino/platzi/mcp/clase9"}}}
El mcp-server-time no me funciono, de hecho no encontre forma de hacer que funcionara el comando final de la clase pasada, pero el calculator si me funciono.
Utilizando MCP de la clase 9 lo configure en el editor Windsurf para que sea interpretado por el chat de cascade
Tuve muchos problemas replicando esta clase en la Container App, A continuación les dejo algunos errores de lo que tuve que modificar:
Summary of what was fixed:
✅ Fixed indentation error in main.py
✅ Set API_KEYS environment variable in Azure
✅ Fixed Dockerfile to use uv run for proper virtual environment
✅ Set minReplicas=1 to keep container always running
✅ Added timeout to mcp.json
Para esta configuracion se realiza de otra forma, con control + shif + p dentro del input se escribe lo siguiente
(Ctrl+Shift+P o Cmd+Shift+P) se llama exactamente: ahí te aparecera un archivo . json mcp.json y podras ingresar la url y el apu key que configuraste en el portal azure
Algo muy importante es para el servers , instalar paquete mcp-server-time en tu pythion yo trabaje con el Python 3.12
py -3.12 -m pip install --user mcp-server-time
!MCP Protocol Explained: Bridging Visual Studio Code and Your Database | by Samson | Medium
yo use ctrl + shift + p y en el menu MCP: Add Server... por que no me funciono en el otro JSON
Cuando utilice el tutorial de mcp-weather de anthropic pude preguntarle directamente la ciudad y el llm pasaba encontraba las coordenadas usaba las tools y me lo respondía en centigrados, sugiero jugar con esta herramienta para que se sorprendan