ACC MCP Server
A remote Model Context Protocol server that lets Claude on claude.ai browse your Autodesk Construction Cloud (ACC) hubs/projects/files and hand you a link that opens the actual model in a hosted Autodesk Viewer page.
README
ACC MCP Server (for Claude web)
A remote Model Context Protocol server that lets Claude on claude.ai browse your Autodesk Construction Cloud (ACC) hubs/projects/files and hand you a link that opens the actual model in a hosted Autodesk Viewer page.
Why this shape: Claude web only connects to remote, publicly-reachable
MCP servers (Streamable HTTP). It cannot run a local stdio server on your
Mac, and it cannot render the real Autodesk Viewer (WebGL + Autodesk's own
JS/CSS) inline in the chat — so the get_viewer_link tool gives you a URL
that opens a small hosted viewer page in your browser instead.
1. Create an APS app (3-legged)
- Go to https://aps.autodesk.com/myapps and create a new app.
- Choose app type "Traditional Web App" (this is the 3-legged OAuth type — you need this, not "Server-to-Server", because the MCP server needs to act as you to see your ACC projects).
- Set the Callback URL to:
https://YOUR-DOMAIN/aps/callback(use the same domain you'll deploy to in step 3 — you can update this later once you know it). - Note the Client ID and Client Secret.
2. Provision the app in ACC
Your APS app needs to be added as a custom integration in your ACC account before it can see any projects:
- In the ACC/BIM 360 admin panel, go to Account Admin > Custom Integrations and add your APS app (by Client ID).
- Add it to the specific projects you want visible (or give it account-wide access, depending on your admin settings).
3. Deploy the server
This is a plain Node.js/Express app — deploy it anywhere that gives you a public HTTPS URL. Render.com's free tier is the easiest for testing:
cd acc-mcp-server
npm install
Render.com (easiest):
- Push this folder to a GitHub repo.
- On Render: New > Web Service > connect the repo.
- Build command:
npm install. Start command:npm start. - Add environment variables (see
.env.example) in Render's dashboard. - Once deployed, Render gives you a URL like
https://acc-mcp.onrender.com— set that asPUBLIC_BASE_URL, redeploy, and also update the APS app's callback URL (step 1.3) tohttps://acc-mcp.onrender.com/aps/callback.
Any other host (Fly.io, Railway, a VPS, AWS): same idea — just make sure
the process is reachable over HTTPS at the domain you put in
PUBLIC_BASE_URL.
Local test only (not reachable by Claude, but useful for sanity-checking):
npm start
4. Add it as a custom connector in Claude
- In claude.ai: Settings > Connectors (or the "+" button in a chat > "Connectors").
- Click Add custom connector.
- Paste your server's MCP URL:
https://YOUR-DOMAIN/mcp - Click Add. Claude will discover the OAuth endpoints automatically
(via
/.well-known/oauth-authorization-server) and walk you through logging into Autodesk — you'll see Autodesk's real login/consent screen. - Enable the connector for your conversation (per-conversation toggle via the "+" button > Connectors).
5. Using it
Once connected, you can ask things like:
- "List my ACC hubs"
- "Show me the projects in [hub name]"
- "List the files in the Project Files folder of [project name]"
- "Give me a link to open [model name] in the viewer"
The last one returns a URL — open it in your browser to see the real Autodesk Viewer with your model loaded.
Notes on what's simplified here
-
Token storage is in-memory. Restarting the server logs everyone out and drops in-flight OAuth handshakes. For anything beyond testing, swap the
Map()s inserver.js(sessions,authCodes,mcpTokens) for a Postgres table — since you're already running Postgres locally, something like:create table mcp_sessions ( session_id uuid primary key, aps_access_token text, aps_refresh_token text, aps_expires_at timestamptz );is a drop-in replacement for the
sessionsMap. -
Single ACC integration only. This doesn't distinguish between multiple Autodesk accounts/users beyond one OAuth session per browser login — fine for personal use, would need per-user scoping for a team.
-
Tools are read/browse-only (
list_hubs,list_projects,list_top_folders,list_folder_contents,get_viewer_link). Adding ACC Issues, markups, or write actions means adding more tools that call the corresponding APS endpoints the same way — the pattern inserver.js(mcp.registerTool(...)) is copy-pasteable. -
Viewer page uses a 2-legged token (
viewables:readonly, via client credentials) scoped just to rendering geometry, not your personal 3-legged token — so the link is safe to open even though it's not tied to a login.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。