streamable-httpupdated 4mo ago
Twinmotion rendering pipeline via APS — Import Revit models, set environments, render images, export walkthrough videos.
What can you do with twinmotion?
Twinmotion MCP
Twinmotion rendering pipeline via APS — Import Revit models, set environments, render images, export walkthrough videos.
Tools (5)
| Tool | Description |
|---|---|
tm_import_rvt |
Import Revit model into Twinmotion |
tm_set_environment |
Set weather, time-of-day, environment |
tm_render_image |
Render still image (up to 8K) |
tm_export_video |
Export walkthrough video (MP4/MOV/WebM) |
tm_list_scenes |
List saved scenes and animations |
Quick Start
{
"mcpServers": {
"twinmotion": {
"url": "https://twinmotion-mcp.itmartin24.workers.dev/mcp"
}
}
}
Architecture
- Runtime: Cloudflare Workers
- Auth: APS OAuth2 (client_credentials)
- Cache: Cloudflare KV (token caching)
Part of ScanBIM Labs AEC MCP Ecosystem
MIT — ScanBIM Labs LLC
Authentication
Two accepted header formats. Use one, do NOT mix:
x-scanbim-api-key: <your_user_key>— value is the user_key verbatim.Authorization: Bearer sk_scanbim_<your_user_key>— value is the entire string including thesk_scanbim_prefix; the D1user_keycolumn must match this full string.
Mixing formats auto-creates a fresh free-plan row for the alternate key (you'll silently get a new 50-credit account on each switch).
Get your user_key at scanbim.app/settings/billing.
Example
curl -X POST https://mcp.scanbimlabs.io/unified/mcp \
-H "content-type: application/json" \
-H "x-scanbim-api-key: $SCANBIM_USER_KEY" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"list_models","arguments":{}}}'
Response codes
200— tool call proceeded; credits debited.401— missing or malformed auth header (middleware returns JSON-RPC error code-32001).402— insufficient credits; response body includescheckout_urlsfor all 5 credit packs andtop_up_urlfor the billing page.
Install
Add twinmotion to your client. Pick the one you use.
claude mcp add --transport http twinmotion https://mcp.scanbimlabs.io/twinmotioncodex mcp add twinmotion --url https://mcp.scanbimlabs.io/twinmotion{
"mcpServers": {
"twinmotion": {
"url": "https://mcp.scanbimlabs.io/twinmotion"
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
{
"servers": {
"twinmotion": {
"type": "http",
"url": "https://mcp.scanbimlabs.io/twinmotion"
}
}
}Add to `.vscode/mcp.json` in your workspace.
{
"mcpServers": {
"twinmotion": {
"url": "https://mcp.scanbimlabs.io/twinmotion"
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"twinmotion": {
"serverUrl": "https://mcp.scanbimlabs.io/twinmotion"
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
5 tools
twinmotion exposes 5 tools to a connected agent.
- tm_import_rvt
- Import Revit model into Twinmotion
- tm_set_environment
- Set weather, time-of-day, environment
- tm_render_image
- Render still image (up to 8K)
- tm_export_video
- Export walkthrough video (MP4/MOV/WebM)
- tm_list_scenes
- List saved scenes and animations
Score
62 / 100
Good
- Documentation22/25
- Maintenance13/25
- Trust9/20
- Capability6/15
- Install experience12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 133 days ago
- Has a release history
- Repository is not archived
- No licence detected
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 5 tool(s) documented
- Provides prompt templates
- Provides resources
- 6 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Version history
| Versions | Published |
|---|---|
| 1.1.0Latest | Apr 19, 2026 |