MCP server for CAD and 3D printing

The 3D printing MCP server: design, export and slice from any AI assistant

SpeakCAD runs two remote MCP servers. The main one, https://speakcad.com/api/mcp, signs in with a SpeakCAD account and lets an assistant or agent design a functional part with SpeakCAD's own CAD AI, change it, download it as a watertight STL or 3MF, and slice it to G-code for 380+ printers with their OrcaSlicer profiles. The second, https://speakcad.com/api/mcp/slicer, needs no sign-in and turns a file someone already has into G-code. Nothing to install: Streamable HTTP, OAuth 2.1, an interactive 3D view where the host supports MCP Apps.
How it works

From a tool call to a printable file

The model gathers the requirements; SpeakCAD's tools do the CAD, the checks, the export and the slicing.
1

Add the server

Paste https://speakcad.com/api/mcp into Claude, ChatGPT, Claude Code, Cursor, VS Code or any client with Streamable HTTP and OAuth.
2

Sign in once

The client registers itself and opens SpeakCAD's sign-in page; the person allows it. No API key. Work is saved in that account and paid with its credits.
3

create_part

The model sends one complete description with every measurement. It returns at once with a project_id; SpeakCAD's AI designs the part in one to two minutes (2 credits).
4

get_part, edit_part

get_part reads the status, the size and the named dimensions; edit_part makes one change in words, a new version each time (2 credits).
5

download_part or prepare_slice

An STL or 3MF link (10 credits), or find_printer then prepare_slice for G-code with the printer's own profile (5 credits more without Pro or Unlimited).

The tools

ToolWhat it doesCredits
search_modelsSearches the library of generate-to-fit parts and the maker marketplaceNone
get_modelOne library model: dimensions, prompt, preview, shown in 3D where the host renders appsNone
create_partDesigns a new part from a description with measurements, in the account2 credits
edit_partOne change in words; a new version, earlier ones kept2 credits
get_partStatus (generating, ready, failed), size, named dimensions, version, editor linkNone
download_partSTL or 3MF download link, valid a day10 credits; free again after small fixes
find_printerSearches 380+ printers from 60+ brands: bed, nozzles, layer heights, materials, output fileNone
prepare_sliceChecks the settings against the printer's OrcaSlicer profile and opens the slicer on the part or a dropped file5 credits per slice without Pro or Unlimited
get_accountPlan, credits left, free slice leftNone
get_pricingPlans, Starter credits and what credits buyNone
search_modelsWhat it does: Searches the library of generate-to-fit parts and the maker marketplaceCredits: None
get_modelWhat it does: One library model: dimensions, prompt, preview, shown in 3D where the host renders appsCredits: None
create_partWhat it does: Designs a new part from a description with measurements, in the accountCredits: 2 credits
edit_partWhat it does: One change in words; a new version, earlier ones keptCredits: 2 credits
get_partWhat it does: Status (generating, ready, failed), size, named dimensions, version, editor linkCredits: None
download_partWhat it does: STL or 3MF download link, valid a dayCredits: 10 credits; free again after small fixes
find_printerWhat it does: Searches 380+ printers from 60+ brands: bed, nozzles, layer heights, materials, output fileCredits: None
prepare_sliceWhat it does: Checks the settings against the printer's OrcaSlicer profile and opens the slicer on the part or a dropped fileCredits: 5 credits per slice without Pro or Unlimited
get_accountWhat it does: Plan, credits left, free slice leftCredits: None
get_pricingWhat it does: Plans, Starter credits and what credits buyCredits: None

Set it up in your client

Claude (claude.ai, Desktop, phone)

Customize, Connectors, then search for SpeakCAD, or +, Add custom connector, and paste https://speakcad.com/api/mcp; this link opens the dialog already filled in. Step by step.

ChatGPT

Settings, Plugins, search for SpeakCAD, or in developer mode + with https://speakcad.com/api/mcp and OAuth. Step by step.

Claude Code

bash
claude mcp add --transport http speakcad https://speakcad.com/api/mcp

Then /mcp in a session to sign in.

Cursor

In ~/.cursor/mcp.json (or .cursor/mcp.json in a project):

json
{
"mcpServers": {
"speakcad": { "url": "https://speakcad.com/api/mcp" }
}
}

VS Code

In .vscode/mcp.json:

json
{
"servers": {
"speakcad": { "type": "http", "url": "https://speakcad.com/api/mcp" }
}
}

Any other client

Streamable HTTP transport, OAuth 2.1 with dynamic client registration: the client finds SpeakCAD's authorization server from the 401 it gets on the first call, registers itself and opens the sign-in page. No API key, no client secret. For the slicer server, https://speakcad.com/api/mcp/slicer, there is no authentication at all.

Two servers

SpeakCADSpeakCAD Slicer
Addresshttps://speakcad.com/api/mcphttps://speakcad.com/api/mcp/slicer
AuthenticationOAuth 2.1 with the person's SpeakCAD accountNone required (signing in slices on the account)
Toolsthe ten above, plus two the in-chat app calls (set_dimensions, authorize_slice)find_printer, prepare_slice, authorize_slice
ForDesigning, changing, exporting and slicing partsG-code for an STL or 3MF someone already has
CostThe account's credits, as on the site3 free slices a day in Claude and ChatGPT, then a free account

Every tool has a title and annotations that say whether it only reads or writes to the account (nothing is ever deleted: a change is a new version), so a client can ask before a call that spends credits.

The 3D view in the conversation

The design, part and slicing tools point to an MCP App: in hosts that render them (Claude, ChatGPT) the part appears in a card, in 3D, while it is designed and after, with its named dimensions as number fields, the STL and 3MF buttons, and a slicer for the person's printer. In hosts without apps, every tool still returns text: the status, the size, the dimensions and the links.

Why a CAD tool behind the model

A language model can write OpenSCAD or describe a shape, and it cannot compile, look at or print-check what it wrote. The SpeakCAD server gives it a CAD loop: a parametric program written by SpeakCAD's AI with design rules for printable parts, compiled into exact geometry, FDM rules applied (wall thickness, clearances of 0.2 to 0.4 mm where parts mate, a flat base), a watertight mesh out, and G-code from the unmodified OrcaSlicer with each printer's bundled profile. The assistant keeps the conversation; the tools keep the geometry honest.

Good for agents too

A coding agent wiring up an ESP32 or a Raspberry Pi can ask for the enclosure in the same session: "design a case for this board, 2 mm walls, USB-C on the short side, M3 standoffs on its mounting holes". The part lands in the person's SpeakCAD models with a link to the editor, and the STL or G-code comes back as a link.

Limits

  • Functional parts, not sculptures. Brackets, enclosures, mounts, adapters, organizers. For figurines, a generative mesh tool fits better.
  • STL, 3MF and G-code. No STEP and no .scad download.
  • One model per slice, standard profiles. No multi-colour painting, modifiers or custom G-code; a desktop slicer stays the tool for those.
  • Files never travel through the model. Uploads for slicing go from the person's browser to the slicer; downloads are links.

What it costs

Connecting is free. The main server spends the signed-in account's credits at the site's prices: 2 credits per AI request (the first design or a change), 10 credits per STL or 3MF download (a paid design re-downloads free after small fixes), and 5 credits more for G-code sliced for your printer (included in Pro and Unlimited). Unlimited also includes the requests and downloads. Typing new dimensions in the card and turning the part around in 3D spend nothing. The slicer server gives 3 free slices a day in Claude and ChatGPT without an account; after that, the online slicer gives every account 1 free slice, its first (a free account, no card). After that, a slice uses one slice from a Slicer pack (20 slices for $3, once, never expire) or 5 credits, and slicing is included in Pro and Unlimited. Re-slicing the same file with other settings within 10 minutes is free.

Questions

Yes. SpeakCAD works inside ChatGPT and Claude as a plugin (an MCP server): ask the assistant for a part with its measurements and SpeakCAD's own CAD AI designs it, shows it in 3D in the chat and hands over a print-ready STL, 3MF or G-code sliced for your printer. Its address is https://speakcad.com/api/mcp (Streamable HTTP, OAuth). A second server, https://speakcad.com/api/mcp/slicer, needs no sign-in and slices an STL or 3MF for 380+ printers.

SpeakCAD's is remote: nothing to install, no CAD program running on your computer. The model sends a description, SpeakCAD's CAD AI writes and compiles a parametric model on its side, and the tools return the part's dimensions and download links. Local MCP servers for FreeCAD, OpenSCAD or Blender drive a desktop program you install and run yourself.

Any client with the Streamable HTTP transport and OAuth: Claude (web, Desktop, phone), ChatGPT, Claude Code, Cursor and VS Code among them. The 3D card shows in hosts that render MCP Apps, such as Claude and ChatGPT; elsewhere the tools return text and links.

No. The main server uses OAuth 2.1 with dynamic client registration: the client registers itself and the person signs in with their SpeakCAD account. The slicer server needs no authentication at all.

Reading tools (search, part status, printers, account, pricing) spend nothing. create_part and edit_part spend 2 credits each, a download 10 credits, and G-code 5 credits more without Pro or Unlimited, from the signed-in account, as on the site.

Give your assistant a CAD tool

Create the SpeakCAD account it signs in with, add Starter credits or a plan, and paste https://speakcad.com/api/mcp into your client.