AutoDeskR AutoDeskR website

Lifecycle: stable CRAN status R-CMD-check Codecov test coverage

Introduction

AutoDeskR is an R package that provides an interface to the:

Quick Start

To install AutoDeskR in R:

install.packages("AutoDeskR")

Or to install the development version:

devtools::install_github("paulgovan/AutoDeskR")

Basic workflow

library(AutoDeskR)

# 1. Authenticate
tok <- getToken(id = Sys.getenv("APS_CLIENT_ID"), secret = Sys.getenv("APS_CLIENT_SECRET"))
is_expired(tok)  # FALSE

# 2. Upload a file
makeBucket(token = tok, bucket = "mybucket")
uploadFile(file = "aerial.dwg", token = tok, bucket = "mybucket")

# 3. Translate and wait
resp <- translateSvf2(urn = myEncodedUrn, token = tok)
done <- waitForFile(urn = myEncodedUrn, token = tok)

# 4. Tidy output (requires tibble)
library(tibble)
listBuckets(token = tok) |> as_tibble()

MCP Tools

AutoDeskR exposes its functions to AI models via the Model Context Protocol (MCP). Use autodeskr_mcp_tools() to start an MCP server that AI assistants can call directly — no token argument required; credentials are read from the APS_CLIENT_ID and APS_CLIENT_SECRET environment variables.

# Requires the ellmer and mcptools packages
install.packages(c("ellmer", "mcptools"))

Sys.setenv(APS_CLIENT_ID = "your_id", APS_CLIENT_SECRET = "your_secret")
tools <- autodeskr_mcp_tools()
mcptools::mcp_server(tools = tools)

The server exposes tools for all five APIs: Authentication, Data Management, Model Derivative, Design Automation, and Reality Capture.

Code of Conduct

Please note that the AutoDeskR project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.

Acknowledgements

Many thanks to the developers at AutoDesk for providing this great set of tools and for the support needed to learn and implement these APIs.