aps-mcp-server-nodejs

autodesk-platform-services/aps-mcp-server-nodejs

3.4

If you are the rightful owner of aps-mcp-server-nodejs and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.

The aps-mcp-server-nodejs is a Model Context Protocol server built with Node.js, designed to provide access to Autodesk Platform Services API with secure and fine-grained access control.

aps-mcp-server-nodejs

Simple Model Context Protocol server built with Node.js, providing access to Autodesk Platform Services API, with fine-grained access control using Secure Service Accounts.

Screenshot

YouTube Video

Development

Prerequisites

Setup

Secure Service Account

Our MCP server will need a secure service account and a private key. Instead of implementing the logic in this code sample, we will use https://ssa-manager.autodesk.io:

  • Go to https://ssa-manager.autodesk.io, and log in with your APS client ID and secret
  • Create a new secure service account using the Create Account With Name: button; don't forget to specify the first name and last name
  • Make sure the new account is selected in the Accounts list
  • Make note of the serviceAccountId and email values under Account Details
  • Create a new private key using the Create Key button; a *.pem file will be automatically downloaded to your machine
  • Make sure the new private key is selected in the Keys list
  • Make note of the kid value under Key Details
Autodesk Construction Cloud
  • Make sure you've provisioned access to ACC for your APS application
  • Invite the secure service account (the email value from earlier) as a new member to your selected ACC projects
Server
  • Clone this repository
  • Install dependencies: yarn install
  • Create a .env file in the root folder of this project, and define the following environment variables:
    • APS_CLIENT_ID - your APS application client ID
    • APS_CLIENT_SECRET - your APS application client secret
    • SSA_ID - your service account ID (the serviceAccountId field from earlier)
    • SSA_KEY_ID - your private key ID (the kid field from earlier)
    • SSA_KEY_PATH - full path to your downloaded *.pem file
  • The .env file might look something like this:
APS_CLIENT_ID="AhH9..."
APS_CLIENT_SECRET="1FS4..."
SSA_ID="ZCU2TJH5PK8A5KQ9"
SSA_KEY_ID="8a4ee790-3378-44f3-bbab-5acb35ec35ce"
SSA_KEY_PATH="/Users/brozp/aps-mcp-server-nodejs/8a4ee790-3378-44f3-bbab-5acb35ec35ce.pem"

Usage

MCP Inspector

Claude Desktop

  • Make sure you have Claude Desktop installed
  • Create a Claude Desktop config file if you don't have one yet:
    • On macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • On Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Add this MCP server to the config, using the absolute path of the server.js file on your system, for example:
{
    "mcpServers": {
        "aps-mcp-server-nodejs": {
            "command": "node",
            "args": [
                "/path/to/aps-mcp-server-nodejs/server.js"
            ]
        }
    }
}
  • Open Claude Desktop, and try some of the following test prompt:
    • What ACC projects do I have access to?
    • Give me a visual dashboard of all issues in project XYZ

For more details on how to add MCP servers to Claude Desktop, see the official documentation.

Visual Studio Code & GitHub Copilot

{
    "servers": {
        "aps-mcp-server-nodejs": {
            "type": "stdio",
            "command": "node",
            "args": [
                "/path/to/aps-mcp-server-nodejs/server.js"
            ]
        }
    }
}

For more details on how to add MCP servers to Visual Studio Code, see the documentation

Cursor

  • Create .cursor/mcp.json file in your workspace, and add the following JSON to it:
{
  "mcpServers": {
    "aps-mcp-server-nodejs": {
      "command": "node",
      "args": [
        "/path/to/aps-mcp-server-nodejs/server.js"
      ]
    }
  }
}

For more details on how to add MCP servers to Cursor, see the documentation