Fabworks MCP Server
The Fabworks MCP server connects AI agents to Fabworks online laser cutting. An agent can search the manufacturing catalog, upload STEP files, create quotes, review pricing and DFM results, update quote parts, weld bent parts, and check orders. It works with Claude Code, Codex, Cursor, and any client that supports remote MCP servers.
Quotes cover laser-cut flat sheet, bent sheet, and tube parts. Signed uploads keep STEP file bytes out of the agent context.
Connect an agent
Copy this prompt into an agent that supports remote MCP servers:
Add the Fabworks remote MCP server to this agent.
Name: Fabworks
URL: https://api.fabworks.com/mcp
Transport: Streamable HTTP
Authentication: OAuth
Configure the server and start OAuth. If you cannot edit your MCP
configuration, give me the exact steps for this client. Then list
the Fabworks tools to verify the connection.
OAuth opens a Fabworks sign-in page. MCP clients that support custom headers can also use a Fabworks user or organization API key:
Authorization: Bearer $FABWORKS_API_KEY
Keep API keys in an environment variable or secret store. Do not paste a key into chat or commit it to a repository.
Generate an API key
Use OAuth when your client supports it. For an automated client that requires a Bearer token, create and manage a Fabworks API key below.
If an organization is active in Fabworks, Clerk creates an organization API key. Otherwise, it creates a personal API key.
Set up your client
Claude Code
Add Fabworks for your user so it is available in every project:
claude mcp add --transport http --scope user fabworks https://api.fabworks.com/mcp
Open /mcp in Claude Code, select Fabworks, and complete the browser sign-in. Use /mcp again to confirm that the Fabworks tools are connected.
Codex
Add the remote server, then start OAuth:
codex mcp add fabworks --url https://api.fabworks.com/mcp
codex mcp login fabworks
After sign-in, start a new Codex session and ask it to list the Fabworks tools.
OpenClaw
Save Fabworks as a Streamable HTTP server and start OAuth:
openclaw mcp add fabworks \
--url https://api.fabworks.com/mcp \
--transport streamable-http \
--auth oauth
openclaw mcp login fabworks
openclaw mcp doctor fabworks --probe
The final command checks the connection and lists any authorization problem.
Hermes Agent
Add Fabworks and sign in:
hermes mcp add fabworks --url https://api.fabworks.com/mcp --auth oauth
hermes mcp login fabworks
hermes mcp test fabworks
Hermes adds the Fabworks tools to later agent sessions after the connection test succeeds.
Agent Guidance
The Agent Guidance page is where agents start: the rules, the quoting workflow, and links to the Fabworks pages that hold the details. The server tells every client to load it with get_agent_guidance before quoting.
Quote STEP files
Use this workflow:
- Call
find_materialsto get exact material and finish IDs. - Call
create_uploadfor each STEP file and upload the file to the returned signed URL. - Call
create_quotewith the upload IDs, quantities, names, material ID, and finish ID. - If processing continues, call
get_quote. It waits for a result by default. - Review the price, manufacturing configuration, DFM results, and checkout URL with the user.
Do not send STEP files as base64. The signed upload keeps file bytes out of the agent context. Do not select a suggested material without user confirmation. Exact tube searches treat box, square, and rectangular as the same profile family.
What a quote returns
A ready quote includes the price of each part, the subtotal, and the checkout URL. It also runs the same DFM checks as checkout:
dfm.errorsanddfm.warningscount the problems across the quote. Each part lists its owndfm_issues, for example a flange shorter than the minimum for its thickness or a cutout inside a bend's distortion zone.dfm.checkout_blockedistruewhile any error remains. Fix the model or change the material, then quote again.- Warnings do not block checkout. The agent should still show them before you order.
Bent parts also list each bend with its angle, inside radius, flange length, and the limits for the selected material: minimum flange, distortion zone, and tooling radius. A failing bend names the check it failed, so the agent can tell you which flange to lengthen and by how much.
Each part has a review_url that opens the quote scrolled to that part. Bent parts also have a bending_url that opens the press brake simulation for that part. Add &step=N to hold the simulation after step N, which lets an agent with a browser screenshot a specific bend. The simulation page carries a hidden status block ([data-press-brake-summary]) with the search result, the step order, and a data-settled flag that turns true once playback stops. The bend sequence simulation runs only in the browser, so bent parts get one more check there. The subtotal does not include shipping or tax.
Weld bent parts
Fabworks welds the seams where two flanges of a bent sheet part meet, such as the corners of a box. An agent can weld them without opening the 3D viewer:
- Call
find_weld_seamswith the quote ID to see which bent parts can be welded. - Call it again with a
part_idto list that part's seams. Seams are numbered longest first, with their length and end points in the STEP file's coordinates, and show any welds already on them. - Call
update_quote_partswithwelds, for example[{ "seam": 1 }, { "seam": 2, "stitch": { "length": 1, "gap": 2 }, "ground": true }]. A seam withoutstitchgets one continuous weld.groundgrinds the weld flush. The quote comes back repriced. - Give the user the
welding_url. It opens the part in the weld editor so they can check the welds before checkout.
Welding a seam replaces the welds already on it and leaves other seams alone. remove clears one seam and clear_welds clears the part. Galvanized steel and material thicker than 0.25 in cannot be welded. Welds between parts of an assembly are placed in the dashboard.
The checkout URL opens the quote in the Fabworks account that owns it. Sign in to that account before you open the link. An API key belongs to the account or organization that created it.
Tools
The server covers what the Fabworks dashboard does. Checkout, payment, and ownership changes stay in the dashboard: the agent hands you a link and you finish there.
| Tool | Use |
|---|---|
get_account | Show the user and organizations the connection acts for, and where new quotes go. |
find_materials | Find exact sheet, tube, and finish IDs. |
find_hole_operations | List taps, countersinks, and hardware that fit a material and thickness. |
find_weld_seams | List which bent parts can be welded, and the numbered seams on one part. |
create_upload | Create a temporary signed upload URL for one STEP file. |
create_quote | Create and price a quote from one or more uploaded files, in a personal or organization account. |
add_quote_parts | Upload more STEP files into an existing quote. |
get_quote | Read status, prices, DFM, bend data, configurable holes, and price breaks at other quantities. |
get_delivery_options | Delivery dates and shipping cost per tier for a ZIP code. |
list_quotes | Find quotes by name or number, including archived ones. |
update_quote_parts | Change quantities, names, materials, finishes, hole operations, and welds, or remove parts. |
update_quote | Rename a quote, set its ZIP code or local pickup, archive or restore it. |
update_quote_assemblies | Change how many sets of an assembly are ordered, or split it into standalone parts. |
duplicate_quote | Copy a quote before trying changes. |
share_quote | Create a read-only link for a purchaser or teammate. |
get_link | Link to a quote, part, bend simulation step, checkout, order, or list in the dashboard. |
list_orders | List orders with status and tracking. |
check_order_status | Read one order's jobs, totals, shipments, and tracking. |
reorder | Start a new quote from a past order at current prices. |
search_docs | Search Fabworks guidelines, materials, services, FAQs, and policies. |
read_doc | Read a Fabworks docs page as markdown. |
get_agent_guidance | Read the Agent Guidance playbook as markdown. |
The server also provides the same guidance as the resource://fabworks/agent-guide resource and a quote_step_files prompt.
Choose toolsets
Clients that can't turn individual tools on and off can pick toolsets in the server URL. The toolsets are catalog, quotes, orders, docs, and account. Add read_only=true to leave out every tool that changes data:
https://api.fabworks.com/mcp?toolsets=quotes,docs&read_only=true
Example requests
Quote 25 of bracket.step in 0.125-inch 5052 aluminum.
Quote these square-tube STEP files in A513 steel and name the parts.
Open my latest quote and explain its price and DFM results.
Change every part in this quote to quantity 50 and show the new total.
Check order 26-12345 and summarize its production and shipping status.
How much are these parts at 1, 10, and 100, and when would they arrive in 93003?
Tap the four small holes in the bracket for 8-32 and show me the new price.
Weld the four corners of the enclosure and grind them flush.
Show me step 2 of the bend sequence for the channel.