Topologies
Try every topology
Every suspension, steering, actuation and anti-roll option in the catalog, drawn in 3D and badged with the plan that includes it.
Full kinematics and static load analysis. Roll center, anti-squat, bump steer, scrub radius — in the browser, no install, no license key.
solver
A constraint-based multibody kinematics and statics solver — the same class of formulation commercial MBS packages use.
Kinematics
Nothing is flattened to a sketch. A step with no solution fails loudly instead of guessing.
Anti-geometry
Anti-geometry and motion ratios come from the real mechanism, never estimated.
Pinned to references
Roll center, instant centers, anti-geometry and statics — pinned against published values and known formulas.
mcp
bellcrank exposes a remote MCP server. Connect Claude Code, Cursor or any MCP client that can send an API key header, and your agent builds the axle, runs the sweep and reads roll center, camber gain and toe back. The agent writes the requests. The solver computes every channel it reads.
https://api.bellcrank.io/mcp You: On "FS26 front", raise both upper-wishbone inner pivots by 5 mm. Compare roll center height, camber gain and bump steer over ±50 mm of heave, before and after.
whoami() list_assets(kind="axle") # "FS26 front" list_assets(kind="motion") # "Heave ±50 mm", two_post_rig run_kinematics(runs=[{type:"two_post_rig", assembly_id:"3f2c…", motion_id:"9a41…"}]) wait_for_result(result_id="c07e…") # complete — baseline get_asset(kind="axle", id="3f2c…") # definitions + revision_checksum update_axle(id="3f2c…", patch={ definitions:{suspension:{…, values:{…, "double_wishbone.point.uca_inner_fore_l.position": [x, y, z+0.005], …}}}, parent_checksum:"e81b…"}) # all four uca_inner points, +5 mm in z run_kinematics(runs=[{type:"two_post_rig", assembly_id:"3f2c…", motion_id:"9a41…"}]) wait_for_result(result_id="d5a2…") # complete — revision 2 get_result(result_id="c07e…", channels=[ "axle.roll_center_z", "front.wheel.camber_gain_wheel_l_post_l", "front.wheel.toe_wheel_l", "front.wheel.wheel_travel_wheel_l"]) get_result(result_id="d5a2…", channels=[…same four…]) Agent: Roll center height, camber gain and bump steer (toe against wheel travel), for both revisions, side by side.
Build
The agent picks a topology from the catalog, builds the axle and the motion, and patches hardpoints. With a checksum guard, a concurrent edit is refused instead of overwritten.
Solve
Every run goes to the same solver through the same /v1 API the app uses. Roll center, camber gain and toe gain come from its
post-processor, never from the language model.
Read
A result arrives as a compact summary with up to three sampled steps per channel. The agent then pulls full values only for the channels and steps it names.
One contract
A key carries the same scope, rate limit, credit pool and plan through MCP as over REST. Every plan can mint one.
the incumbents
The tools the industry still designs suspension with are desktop software from another era — installed per machine, licensed per seat, barely changed in decades. Your car deserves software from this decade.
Exhibit 001
Desktop suspension software
Once the state of the art. Installed from a CD, tied to a dongle, exported to spreadsheet. Typically found on a single laptop in the shop — the one nobody is allowed to update.
explore
Three closer looks: the topology catalog with plan badges, two front suspensions compared over one sweep, and a solved 1 g load case.
Topologies
Every suspension, steering, actuation and anti-roll option in the catalog, drawn in 3D and badged with the plan that includes it.
Results
The full channel list, plus the Sample front against an edited copy over one heave-and-roll sweep — camber and toe side by side.
Loads
Joint reactions, per-body loads and steering torque, solved for a 1 g corner and drawn in 3D — the add-on module desktop tools charge extra for.
revisions
Axles, vehicles, motions and load cases carry a git-style, append-only history — checksummed, authored, automatic. No "final_v3_FINAL" files, no versioning ceremony.
History
Every design change appends an immutable revision — number, checksum, author, timestamp. Load any revision back into the editor and save it to restore; the chain is never rewritten.
Provenance
Every new run records the revision checksum of the assembly and the motion or load case that produced it — so you know which geometry made which curve.
teams
Create a team and switch into its shared space: every axle, vehicle, motion, load case, result and workspace in one place — with revision history naming the teammate behind every change.
Shared space
Flip between personal and team context from the sidebar's team switcher. In team mode every asset type is the team's shared copy — created, edited and simulated by any member.
Invites & seats
Invite by e-mail or share a copyable invite link. Invitations reserve a seat and are bound to the invited address; owners manage seats, revoke invites and transfer ownership.
Student teams
A dedicated student team type: three seats on a shared university e-mail domain, verified by us. Formula Student and Baja teams run the same solver the pros do.
pricing
Start free with no payment details. The free tier is permanent; paid plans unlock the full template catalog and exports.
Free
€ 0 /mo
Permanent — not a countdown
Pro
€ 129 /mo
VAT included
Teams
BEST SELLER€ 89 /seat/mo
3-seat minimum, VAT included
Student Teams
€ 39 /mo
3 seats included, domain-verified
Create an account, model a suspension from your own hardpoints, and run it on the rig. No download, no license, no payment details — and the free tier is permanent.