io.scanbimlabs/twinmotion

Official registry Media and design

Twinmotion rendering + video export via Datasmith pipeline.

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

Remote (streamable-http)
Claude Code
claude mcp add --transport http twinmotion 'https://mcp.scanbimlabs.io/twinmotion' --header 'Authorization: <Bearer <ScanBIM API key>>'
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "twinmotion": {
            "type": "http",
            "url": "https://mcp.scanbimlabs.io/twinmotion",
            "headers": {
                "Authorization": "<Bearer <ScanBIM API key>>"
            }
        }
    }
}

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. Twinmotion MCP
  2. Tools (5)
  3. Quick Start
  4. Architecture
  5. Part of ScanBIM Labs AEC MCP Ecosystem
  6. Authentication

Twinmotion MCP

Twinmotion rendering pipeline via APS — Import Revit models, set environments, render images, export walkthrough videos.

Tools (5)

ToolDescription
tm_import_rvtImport Revit model into Twinmotion
tm_set_environmentSet weather, time-of-day, environment
tm_render_imageRender still image (up to 8K)
tm_export_videoExport walkthrough video (MP4/MOV/WebM)
tm_list_scenesList 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:

  1. x-scanbim-api-key: <your_user_key> — value is the user_key verbatim.
  2. Authorization: Bearer sk_scanbim_<your_user_key> — value is the entire string including the sk_scanbim_ prefix; the D1 user_key column 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 includes checkout_urls for all 5 credit packs and top_up_url for the billing page.

Frequently asked questions

What is io.scanbimlabs/twinmotion?

Twinmotion rendering + video export via Datasmith pipeline.

How do I install io.scanbimlabs/twinmotion?

It runs as a remote server. In Claude Code: claude mcp add --transport http twinmotion 'https://mcp.scanbimlabs.io/twinmotion' --header 'Authorization: <Bearer <ScanBIM API key>>'. For other clients, paste the JSON configuration from this page into their MCP settings.

Does io.scanbimlabs/twinmotion need an API key?

Yes. It expects Authorization, which you set in its configuration.

Is io.scanbimlabs/twinmotion open source?

Its code is public on GitHub, but the repository does not declare a standard license.

Who maintains io.scanbimlabs/twinmotion?

It is published by ScanBIM-Labs. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.