Skip to main content
Glama
latesh-munde

Devcon MCP Workshop 2026

by latesh-munde

🚀 Servidor MCP con Autodesk Platform Services (APS)

Node.js MCP License Status


📌 Descripción general

Este proyecto implementa un servidor de Model Context Protocol (MCP) con soporte para:

  • Exposición de herramientas para clientes LLM (p. ej., VS Code Copilot)

  • Integración con API externas

  • Conectividad con Autodesk Platform Services (APS)

  • Flujos de autenticación (OAuth de 2 y 3 pasos)

  • Arquitectura de cliente + agente personalizada

Representa un sistema backend de IA agéntica orientado a producción.


Related MCP server: RevitMCPBridge2026

🧠 Arquitectura

🔷 Flujo de alto nivel


+------------------------+
| LLM Client (VSCode)    |
| Copilot / Chat UI      |
+-----------+------------+
            |
            v
+------------------------+
| MCP Server             |
| (server.js / aps)      |
+-----------+------------+
            |
------------------------------------------------
      |                |                |
      v                v                v
+-------------+ +-------------+ +----------------+
| External    | |   APS APIs  | |  Custom Logic  |
| APIs        | | (OAuth)     | |   / Tools      |
+-------------+ +-------------+ +----------------+

🔷 Flujo del agente

User Prompt
↓
LLM decides tool
↓
MCP Server executes tool
↓
External API / APS call
↓
Structured response → LLM → User

📁 Estructura del proyecto

├── .vscode/
│ └── mcp.json # MCP configuration for VS Code client
│
├── node_modules/ # Installed dependencies
│
├── .env # Environment variables (API keys, secrets)
├── .gitignore # Git ignored files
│
├── agent.js # Agent logic (tool orchestration)
├── aps-server.js # APS integration server (OAuth + APIs)
├── client.js # Custom MCP client implementation
├── server.js # Core MCP server (tool definitions)
│
├── package.json # Project metadata & dependencies
├── package-lock.json # Dependency lock file

⚙️ Stack tecnológico

  • Node.js (Módulos ES)

  • Model Context Protocol (SDK de MCP)

  • Zod (validación de esquemas)

  • Transporte de streaming HTTP

  • Autodesk Platform Services (APS)


🔑 Componentes clave

1. server.js

  • Servidor MCP central

  • Registra herramientas

  • Gestiona las solicitudes del cliente


2. aps-server.js

  • Integra las API de Autodesk

  • Gestiona OAuth (2L + 3L)

  • Comunicación segura con la API


3. agent.js

  • Implementa comportamiento agéntico

  • Decide qué herramientas llamar

  • Habilita flujos de trabajo de varios pasos


4. client.js

  • Cliente MCP personalizado

  • Puede simular o reemplazar al cliente de VS Code


5. .vscode/mcp.json

  • Conecta VS Code → Servidor MCP


🚀 Primeros pasos

1️⃣ Instalar dependencias

npm install

2️⃣ Configurar el entorno

Cree el archivo .env:

PORT=3000

# APS Credentials
APS_CLIENT_ID=your_client_id
APS_CLIENT_SECRET=your_client_secret

# External APIs
GEMINI_API_KEY=your_key

3️⃣ Ejecutar el servidor

node server.js

Salida esperada:

MCP server running at http://localhost:3000/mcp

4️⃣ Configurar VS Code

Cree:

.vscode/mcp.json

{
  "servers": {
    "devcon-workshop": {
      "type": "http",
      "url": "http://localhost:3000/mcp"
    },
    "devcon-aps": {
      "type": "http",
      "url": "http://localhost:3001/mcp"
    }
  }
}

5️⃣ Probar herramientas

En Copilot Chat:

#add 10 and 20
#greet John in spanish
What's the weather in London?

🧩 Patrón de diseño de herramientas

server.registerTool(
"tool_name",
{
description: "Tool description",
inputSchema: {
param: z.string()
}
},
async ({ param }) => ({
content: [{ type: "text", text: "Result" }]
})
);

🔐 Autenticación

✅ OAuth de 2 pasos (2-Legged)

Servidor a servidor

Sin interacción del usuario

✅ OAuth de 3 pasos (3-Legged)

Se requiere el consentimiento del usuario

Permisos granulares

Recomendado para producción


🏗️ Consideraciones de producción

🔹 Escalabilidad

Arquitectura sin estado

Escalado horizontal posible

🔹 Seguridad

Use .env para secretos

Prefiera 3LO para datos de usuario

🔹 Fiabilidad

Validación de entrada (Zod)

Respuestas estructuradas

🔹 Observabilidad Añada registro para la ejecución de herramientas

Monitoree fallos de la API


🎯 Características

✔ Servidor compatible con MCP

✔ Integración con API externas

✔ Conectividad con APS

✔ Ejecución basada en agentes

✔ Soporte para cliente personalizado


🔮 Mejoras futuras

Dockerizar la aplicación

Desplegar en Azure / AWS

Añadir herramientas respaldadas por base de datos

Implementar capa de caché

📜 Licencia

Licencia MIT


🙌 Agradecimientos

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers