Skip to main content
Glama
latesh-munde

Devcon MCP Workshop 2026

by latesh-munde

šŸš€ MCP Server with Autodesk Platform Services (APS)

Node.js MCP License Status


šŸ“Œ Overview

This project implements a Model Context Protocol (MCP) server with support for:

  • Tool exposure for LLM clients (e.g., VS Code Copilot)

  • External API integration

  • Autodesk Platform Services (APS) connectivity

  • Authentication flows (2-legged & 3-legged OAuth)

  • Custom client + agent architecture

It represents a production-oriented agentic AI backend system.


Related MCP server: RevitMCPBridge2026

🧠 Architecture

šŸ”· High-Level Flow


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

šŸ”· Agent Flow

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

šŸ“ Project Structure

ā”œā”€ā”€ .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

āš™ļø Tech Stack

  • Node.js (ES Modules)

  • Model Context Protocol (MCP SDK)

  • Zod (schema validation)

  • HTTP Streaming Transport

  • Autodesk Platform Services (APS)


šŸ”‘ Key Components

1. server.js

  • Core MCP server

  • Registers tools

  • Handles client requests


2. aps-server.js

  • Integrates Autodesk APIs

  • Handles OAuth (2L + 3L)

  • Secure API communication


3. agent.js

  • Implements agentic behavior

  • Decides which tools to call

  • Enables multi-step workflows


4. client.js

  • Custom MCP client

  • Can simulate or replace VS Code client


5. .vscode/mcp.json

  • Connects VS Code → MCP server


šŸš€ Getting Started

1ļøāƒ£ Install Dependencies

npm install

2ļøāƒ£ Setup Environment

Create .env file:

PORT=3000

# APS Credentials
APS_CLIENT_ID=your_client_id
APS_CLIENT_SECRET=your_client_secret

# External APIs
GEMINI_API_KEY=your_key

3ļøāƒ£ Run Server

node server.js

Expected output:

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

4ļøāƒ£ Configure VS Code

Create:

.vscode/mcp.json

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

5ļøāƒ£ Test Tools

In Copilot Chat:

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

🧩 Tool Design Pattern

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

šŸ” Authentication

āœ… 2-Legged OAuth

Server-to-server

No user interaction

āœ… 3-Legged OAuth

User consent required

Fine-grained permissions

Recommended for production


šŸ—ļø Production Considerations

šŸ”¹ Scalability

Stateless architecture

Horizontal scaling possible

šŸ”¹ Security

Use .env for secrets

Prefer 3LO for user data

šŸ”¹ Reliability

Input validation (Zod)

Structured responses

šŸ”¹ Observability Add logging for tool execution

Monitor API failures


šŸŽÆ Features

āœ” MCP-compliant server

āœ” External API integration

āœ” APS connectivity

āœ” Agent-based execution

āœ” Custom client support


šŸ”® Future Enhancements

Dockerize the application

Deploy on Azure / AWS

Add database-backed tools

Implement caching layer

šŸ“œ License

MIT License


šŸ™Œ Acknowledgements

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers