RocketSmith
Let agents design, simulate, and build your rocket.
RocketSmith is an end-to-end model-rocket toolchain exposed as an MCP extension. It orchestrates OpenRocket (flight simulation), build123d (parametric CAD), and PrusaSlicer (FDM slicing) behind a single agent, and closes the loop by feeding real printed-part weights back into the simulation for post-build stability verification.
Install
Prerequisites (all platforms):
- uv — RocketSmith uses
uvto manage its Python environment. Install it before proceeding. - A GitHub SSH key added to your account — required to clone the plugin repository. See Generating a new SSH key.
Claude Code (plugin)
Inside a Claude Code session, add the marketplace and install the plugin at user scope:
/plugin marketplace add ppak10/RocketSmith
/plugin install rocketsmith@rocketsmith --scope user
After installing, reload plugins and verify the MCP server is connected with /reload-plugins and /mcp
Updating to a new version: Uninstall the existing plugin first, then reinstall:
/plugin uninstall rocketsmith@rocketsmith
/plugin install rocketsmith@rocketsmith --scope user
Gemini CLI (extension)
gemini extensions install https://github.com/ppak10/RocketSmith
Requirements
- Java runtime — required by OpenRocket
- OpenRocket 23.09 — uses orhelper, which targets the
net.sf.openrocketpackage in OpenRocket 23.09 and earlier. OpenRocket 24+ is not supported. - PrusaSlicer (optional — needed for the full CAD → print → mass calibration loop)
See Installation for platform-specific setup and troubleshooting.
Troubleshooting
Windows — OpenRocket calls are very slow or appear to hang
OpenRocket runs on a JVM. On Windows, the first openrocket_* call in a session pays a JVM cold-start cost of 67 seconds to 6 minutes. This is normal — the tool will eventually return. Do not cancel the call or retry early; let it finish. Subsequent calls in the same session are faster once the JVM is warm.
Windows — rocketsmith_setup fails with [WinError 87] The parameter is incorrect
This was a bug in path resolution on Windows where Path.resolve() raised OSError for certain path types. It is fixed in the current version. If you hit it on an older version, call rocketsmith_setup(action="check") first (no project_dir), confirm ready: true, then call again with project_dir.
Claude Code — agent continuation fails ("SendMessage not found")
Claude Code requires v2.1.77 or later for inter-agent SendMessage to work. On older versions, attempting to continue a spawned subagent by agentId will fail because the tool doesn't exist yet. Update Claude Code to the latest release to resolve this.
MCP server disconnects mid-session
Rejecting a pending rocketsmith tool call can cause the MCP server to disconnect, disabling all rocketsmith tools for the rest of the session. If this happens, restart the MCP server: in Claude Code run /mcp, find the rocketsmith server, and reconnect. In Gemini CLI, restart the session.
Documentation
- Home — pipeline overview, domain agents, MCP tool list
- GUI — dashboard, offline mode, navigation, Agent Feed
- OpenRocket — component tree, stability, dimension models
- Manufacturing — DFAM rules, component tree annotations
- CADSmith — script execution, part extraction, preview pipeline, assembly
- Skills — stability analysis, motor selection, print preparation, mass calibration
- Installation — setup and dependency troubleshooting
- Hooks — Gemini CLI session hooks
Development
Local setup
git clone https://github.com/ppak10/RocketSmith
cd RocketSmith
uv sync
Claude Code
claude --plugin-dir .
Gemini CLI
gemini extensions install .
License
See LICENSE.
No comments yet
Be the first to share your take.