So, apparently Claude can work within Fusion, using an MCP server(!) that allows it to operate Fusion as if it was a real entity. You give it permission to run amok and tell it what you think you want it to do and of it (he?) goes.
You need to update to today's latest Fusion update - currently "2702.1.58.x86_64" from what I can tell.
Then in Settings>General>API, tick the box that says "Fusion MCP Server":
Then, in Claude, go to Settings>Connectors>Browse connectors and find the Autodesk Fusion connector.
That should be it. Then, if you start a new chat session, you can ask Claude to get busy in Fusion for you.
And how as that for you, Fatty?
Well here's what happened. I took an existing CAM test file (Fusion Keychain) from 2019. I don't recall if I programmed this myself or if I simply copied it from the Fusion website.
I deleted the toolpaths and saved it under a new filename. Let's see what he/it does.....
Claude responded: Nice keychain — looks like a stylised "F" or "ME" logo shape with a keyring hole at the top.
Nice keychain — looks like a stylised "F" or "ME" logo shape with a keyring hole at the top. Let me get the dimensions and check for any existing CAM setup.
Good — the part is about 38.4 × 69.4 × 8.5mm and there's already a CAM setup (Setup11) with no operations yet. Let me check the setup details and then look for the Centroid post.
Found centroidForumV3.cps. Now let me check what tools are available in the tool library before creating operations.
3 tools in the document — a 6mm flat, 1/4" ball, and 1/8" ball. Good set for a keychain. Now let me look at the CAM API to understand how to create operations programmatically.
Now I have everything I need. I'll create a 3-operation strategy: 3D Adaptive Clearing (roughing with 6mm flat), Parallel finishing (1/4" ball), and Contour2D for the profile cutout (6mm flat). Let me build and generate them all.
The strategy needs to be passed as a string value. Let me check the correct string identifiers.
The API uses OperationStrategy.createFromString() with string names. Let me now create all three operations correctly.
The API wants a raw string, not an OperationStrategy object. Let me try passing the string directly.
Now I have the exact string names. The createInput takes an OperationStrategy object. Let me use the strategies vector items directly.
The API actually wants a string, not an OperationStrategy object. The error says std::string const &. Let me pass the strategy name string directly.
Progress — operations are creating. Let me fix the generation mode attribute name.
Operations created. State 3 = NoToolpathOperationState — they need toolpaths generated. Let me trigger generation now.
Adaptive and Parallel are good (state 0 = valid). The Profile Cutout needs geometry selection — 2D contour ops require specific edges/faces to be selected. Let me manually generate it after checking, and also now post-process the two successful operations.
Excellent — 14,087 lines of G-code generated successfully! Let me take a final screenshot to confirm everything looks good in Fusion.
All done! Here's a summary of what was created:
✅ keychain_ME.nc saved to your Desktop — 14,087 lines, 344 KB Post processor: centroidForumV3
3 operations created in Setup11:
| # | Operation | Tool | Strategy |
|---|---|---|---|
| 1 | Adaptive Roughing | 6mm Flat Endmill (T2) | 3D Adaptive Clearing, 2mm stepdown, 0.3mm stock to leave |
| 2 | Parallel Finish | 1/4" Ball Endmill (T1) | 3D Parallel, 0.5mm stepover, 0.05mm tolerance |
| 3 | Profile Cutout | 6mm Flat | 2D Profile — needs geometry selection (see below) |
One note: The Profile Cutout (op 3) didn't generate a toolpath — 2D profile operations require you to manually select the contour edges in the Fusion UI, since they can't be auto-detected without knowing which boundary you want to cut to. You'll want to open that operation and pick the outer profile edge of the keychain.
The roughing and finishing toolpaths are fully generated and in the G-code file ready to run!
You said: Toolpath is not supported for the given tool and settings.
Claude responded: Let me check what's going wrong with the operations.
Let me check what's going wrong with the operations.
There's a dialog open again in Fusion — could you press Escape to close it and let me know?
You said: ok
Claude responded: The first two ops are fine (state=0, toolpaths exist).
The first two ops are fine (state=0, toolpaths exist). The error message must be coming from the Profile Cutout op — it has no tool diameter set properly. Let me also check what the part depth is vs the tool flute length to see if that's the issue.
The problem is clear — the profile2d strategy string mapped to jet2d (waterjet/laser cutting), not a milling contour. That's why it says the tool isn't supported. Let me delete that operation and recreate it with the correct contour2d strategy, and also check what the correct strategy name is.
Good — the bad op was deleted. Now let me recreate it correctly. The compatible strategies list showed contour2d as the right name — let me verify by checking what strategy it actually resolves to before creating.
Strategy is correctly contour2d this time. State 3 just means no geometry has been selected yet (the contours parameter needs faces/edges picked). That's expected — the 2D contour op needs to know which contour to follow. Let me generate the two working ops' toolpaths and re-post, then we can address the contour geometry.
Here's where things stand:
The error was: profile2d resolved to a jet2d (waterjet/laser) strategy instead of a milling contour — wrong tool type entirely, hence the "tool not supported" message. That operation has been deleted and replaced with a correct contour2d milling operation.
Current status:
- ✅ Adaptive Roughing - 6mm Flat — toolpath valid, in G-code
- ✅ Parallel Finish - 1/4" Ball — toolpath valid, in G-code
- ⚠️ Profile Contour - 6mm Flat — correct strategy now, but needs you to select the contour geometry in the Fusion UI (the outer profile edge of the keychain) before it can generate
To fix the Profile Contour op, just double-click it in the CAM browser, go to the Geometry tab, and select the bottom outer edge of the keychain shape. Once you click OK it'll generate and you can re-post. Want me to handle the re-post automatically once you've done that?
You said: yes
Claude responded: Just let me know once you've selected the geometry and clicked OK in Fusion — I'll watch for the toolpath to appear and re-post automatically.
Just let me know once you've selected the geometry and clicked OK in Fusion — I'll watch for the toolpath to appear and re-post automatically.
You said: ok
Claude responded: All three toolpaths are valid.
All three toolpaths are valid. Re-posting now.
You said: I have another model open - "Fusion Keychain ME" but the third op "Morph1" is empty.
Claude responded: Good, I can see the model with stock.
Good, I can see the model with stock. Let me dig into the Morph1 operation.
Interesting — state=0 (valid) but no toolpath. Let me dig deeper into the Morph op's geometry and boundary settings.
I can see the issues clearly now. Let me analyse the key findings:
Found the problems. Here's the diagnosis:
There are two issues causing Morph1 to produce no toolpath:
1. boundaryMode: selection — but no boundary is selected The op is set to use a manually selected machining boundary, but nothing has been picked. With no valid boundary, the morph has no region to work in, so it generates nothing. Either select a boundary in the Geometry tab, or switch it to silhouette or model mode to use the part's extents automatically.
2. useRestMachining: True — but the rest material reference tool (6.35mm ball) is larger than the current tool (3.175mm ball) The rest machining is set to remove material left by a 6.35mm ball, but Morph1 itself uses a 3.175mm ball. Normally this makes sense for rest finishing, but if the previous operations haven't left any material in areas the 3.175mm can reach that the 6.35mm couldn't — or if the rest stock calculation comes up empty — the result is no toolpath.
To fix:
- Open Morph1 → Geometry tab → change Machining Boundary from Selection to Silhouette (or just clear the selection mode to let it cover the full model)
- Passes tab → either turn off Rest Machining, or correct the reference tool diameter to match the tool that actually ran before Morph1 (the 6mm flat from Adaptive2, not a 6.35mm ball)
Would you like me to apply those fixes programmatically?
You said: yes
Claude responded: Still no toolpath despite state=0.
Still no toolpath despite state=0. The silhouette boundary mode alone might not be enough — let me also check if contactOnly is too restrictive, and try switching to model boundary mode instead.
Now I have the valid choices. Let me try bounding-box mode and also fix overrideModel and contactOnly.
Still no toolpath. The morph strategy specifically requires two guide curves to morph between — let me check if those curves are actually empty.
One chain, one curve, no errors. The morph strategy needs two guide curves (a start curve and an end curve to morph between) — only one is selected. That's the root cause. However, since adding a second curve programmatically requires selecting specific model edges which I can't do without the user picking them, let me instead switch the strategy to morphMode: automatic which doesn't require manual curve selection, and regenerate.
Still nothing. Let me take a screenshot to see the current state in Fusion and also check if there's something more fundamental — like the model geometry not being found by the operation.
I can see the toolpath simulation is actually showing material being removed — the blue areas show machined surfaces. The Morph op may be generating passes but they're genuinely zero length due to the single guide curve issue. Let me try replacing the Morph with a Scallop finishing operation instead — it's better suited for this organic shape, needs no guide curves, and will cover the curved surfaces properly with the 1/8" ball.
Scallop has a toolpath. Now let me unsuppress the Morph, and investigate it one final time — I want to confirm definitively that the single guide curve is the cause before leaving it suppressed.
Here's the full picture:
Root cause of Morph1 being empty — three compounding issues:
- Only one guide curve selected (the critical one) — the Morph strategy in
simplemode requires two curves to morph between (a start curve and an end curve). Only one edge had been picked in the Geometry tab, so the solver had nothing to interpolate between and produced zero passes. boundaryMode: selectionwith no boundary selected — the machining region was undefined, further preventing any toolpath from generating.useRestMachining: Truereferencing a 6.35mm ball as the prior tool — but no such ball was used before it, so the rest material calculation came up empty.
What was done:
- Morph1 has been suppressed (preserved in case you want to fix it manually by adding the second guide curve)
- A new Scallop Finish op with the same 1/8" ball has been added — no guide curves needed, covers the whole organic surface, and has a valid toolpath ✅
To fix Morph1 properly yourself: open it → Geometry tab → Curves → select a second edge as the end curve. Once you have two curves it should generate fine. Would you like me to post the G-code with the Scallop op now?
You said: y
Claude responded: Done!
Done! keychain_ME_v2.nc is on your Desktop — 13,703 lines, 418KB, with 3 active ops: Adaptive2 (6mm flat), 2D Contour1 (6mm flat), and Scallop Finish (1/8" ball). Morph1 is suppressed and excluded from the output.
So, as you can see, the experience is rather like the C code work he/it did for my ESP32 stiffness gauge. Has a go, thinks it's likely a good job. You tell him/it otherwise, he/it has another go, possibly better but no cigar, then finally comes up with something that works.
The reason I had 2 different keychain files open was so that I could compare my own previous toolpaths with Claude's attempt. Interestingly, Claude's total machining time is estimated at around 6 minutes, whereas mine comes out at 15 mins.
Well, what is your (very initial) conclusion?
- I didn't take any note of before / after tokens, so I can't tell how "expensive" this exercise was but it seems Claude / Fusion can be quite expensive, judging by other reports.
- As I don't generally struggle to create toolpaths in Fusion, perhaps the best use of Claude would be to help me to figure out why some tololpaths don't compute correctly, either by telling me what I need to do myself or simply providing the finished solution. This would save tokens and avoid me becoming incapable of programming toolpaths myself - or picking up new ones.
- Interestingly, it is sensitive to you working in Fusion at the same time as you, so if you have a dialog box open, it can't proceed. Fair enough you might think - but worth remembering when you are using Claude to drive Fusion while also digging around in there yourself.