Home / MCP / Sketchup MCP Server

Sketchup MCP Server

Bridges Sketchup and Claude via MCP to control and script Sketchup scenes and components.

python
Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
    "mcpServers": {
        "sketchup": {
            "command": "uvx",
            "args": [
                "sketchup-mcp"
            ]
        }
    }
}

SketchupMCP connects Sketchup to Claude AI through the Model Context Protocol (MCP), enabling Claude to directly interact with and control Sketchup for prompt-assisted 3D modeling, scene creation, and manipulation. This MCP server implementation uses a local stdio command to bridge Claude with the Sketchup extension over a TCP-based protocol.

How to use

This MCP server is designed to be used with an MCP client (such as Claude) that supports the MCP protocol. The Sketchup extension runs a TCP server inside Sketchup to receive and execute commands, while the MCP server implementation connects via a local runtime command. A typical workflow is to start Sketchup and then run the MCP client configuration so Claude can issue commands to inspect scenes, select components, create or transform components, apply materials, and even evaluate Ruby code inside Sketchup.

How to install

Prerequisites and steps required to install this MCP server and the Sketchup extension are described here. Follow the steps to enable the local bridge between Claude and Sketchup.

{
  "mcpServers": {
    "sketchup": {
      "command": "uvx",
      "args": [
        "sketchup-mcp"
      ]
    }
  }
}

Additional setup notes

- The Sketchup extension starts a TCP server inside Sketchup to receive commands. The MCP server connects to this bridge and exposes MCP-ready commands to Claude.

- The default Sketchup MCP server port is 9876, and the extension must be running before Claude can connect.

Troubleshooting

If you encounter connection issues, ensure both the Sketchup extension server and the MCP server are running. For command failures, check the Sketchup Ruby Console for error messages. If timeouts occur, consider simplifying requests or breaking them into smaller steps.

Technical details

The system uses a JSON-based protocol over TCP sockets where commands are sent as JSON objects with a type and optional parameters, and responses are JSON objects with a status and result or message.

Contributing

Contributions are welcome. Please feel free to submit a Pull Request.

License

MIT