loading…
Search for a command to run...
loading…
MCP server integrating Autodesk Platform Services, exposing tools for LLM clients like VS Code Copilot, with OAuth authentication and agentic workflow support.
MCP server integrating Autodesk Platform Services, exposing tools for LLM clients like VS Code Copilot, with OAuth authentication and agentic workflow support.
This project implements a Model Context Protocol (MCP) server with support for:
It represents a production-oriented agentic AI backend system.
+------------------------+
| LLM Client (VSCode) |
| Copilot / Chat UI |
+-----------+------------+
|
v
+------------------------+
| MCP Server |
| (server.js / aps) |
+-----------+------------+
|
------------------------------------------------
| | |
v v v
+-------------+ +-------------+ +----------------+
| External | | APS APIs | | Custom Logic |
| APIs | | (OAuth) | | / Tools |
+-------------+ +-------------+ +----------------+
User Prompt
↓
LLM decides tool
↓
MCP Server executes tool
↓
External API / APS call
↓
Structured response → LLM → User
├── .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
server.jsaps-server.jsagent.jsclient.js.vscode/mcp.jsonnpm 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" }]
})
);
✅ 2-Legged OAuth
Server-to-server
No user interaction
✅ 3-Legged OAuth
User consent required
Fine-grained permissions
Recommended for production
🔹 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
✔ MCP-compliant server
✔ External API integration
✔ APS connectivity
✔ Agent-based execution
✔ Custom client support
Dockerize the application
Deploy on Azure / AWS
Add database-backed tools
Implement caching layer
MIT License
Autodesk Platform Services (APS)
https://autodesk-platform-services.github.io/mcp-devcon2026/
Model Context Protocol (MCP)
OpenAI / LLM ecosystem
Add this to claude_desktop_config.json and restart Claude Desktop.
{
"mcpServers": {
"devcon-mcp-workshop-2026": {
"command": "npx",
"args": []
}
}
}