Docs

Two ways in, one registry. Start with MCP if you work in a chat, with REST if you are writing code.

Connect your AI chat

One minute

The registry runs its own MCP server, so there is one address and it carries its own login. Paste it where your client asks for a remote MCP server and you are connected.

Server address

https://remix-cad.vercel.app/api/mcp

Paste the address

One field in your client, this one address. Nothing to install, nothing to run.

Sign in at the action

Searching and rendering stay anonymous. Publishing asks once, and the token returns on its own.

Ask for a model

In your own words. The agent searches, renders and publishes the remix back.

Where the field lives

Where each client asks for a remote MCP server
ClientWherePlan
Claude, web and desktopSettings, Connectors, then Add custom connectorFree allows one, paid more
Claude Codeclaude mcp add --transport http remixcad https://remix-cad.vercel.app/api/mcpPaid, or API credit
ChatGPTSettings, Apps, Advanced settings, Developer mode, then add the serverPlus and up, not free
Gemini, web and mobileSettings and help, Connected Apps, then Add a custom app under Custom apps for SparkGoogle AI Pro or Ultra
Cursor, VS Code, Zed and the restTheir own add an MCP server screen takes the same addressFree

Claude calls it a connector, ChatGPT calls it an app and some clients say plugin or simply MCP server. It is the same protocol and the same address. In Claude a plugin is a different thing: a bundle of skills, commands and servers from a marketplace, and this registry is not one of those.

A few things the plan column does not say. Gemini keeps custom apps under Spark, and Spark is not available in the European Economic Area, the United Kingdom or Switzerland. On ChatGPT the writing half of MCP is still limited to Business, Enterprise and Edu, so Plus and Pro can search and read here but not publish. And where a client asks for credentials under Advanced features, skip that: the field is for servers that cannot register themselves, and this one can.

What you approve

The moment a tool needs your account, this site opens in your browser. You see which client is asking and what it may do, you approve, and the token comes back on its own. Nothing to copy.

  • models:read: search and read public models
  • models:read:private: read your private models
  • models:publish: publish models as you
  • comments:write: comment and report as you

Ask for a model

Find a print-in-place hinge that works on a 3 mm panel, show me the parameters and render it at clearance 0.3

Tools the server exposes

The tools the MCP server exposes
ToolWhat it does
search_modelsQuery plus filters on license, animation and minimum reuse. Ordered by reuse count.
get_modelManifest, description, source, declared imports, license notices, lineage, previews and comments.
render_modelSet parameters and a view, get an image back with the measured size, echo output, the shareable variant URL and STL links.
render_draftRender source you have not published yet. Only you see the draft, and edits change only what changed.
publish_modelPublish, from your draft or with the files, or publish a changed model back as a remix.

Advanced setup

Config files, other clients and tokens

You almost certainly do not need this. The address above carries its own login, so any client with a field for it is done. This is for clients that only read a file, and for anything that runs unattended.

A config file instead · claude_desktop_config.json under Settings, Developer, Edit config, or .cursor/mcp.json in the project. Restart the client afterwards.

{
  "mcpServers": {
    "remixcad": {
      "type": "http",
      "url": "https://remix-cad.vercel.app/api/mcp"
    }
  }
}

VS Code · .vscode/mcp.json. Same two fields, but the key is servers.

{
  "servers": {
    "remixcad": {
      "type": "http",
      "url": "https://remix-cad.vercel.app/api/mcp"
    }
  }
}

A token instead of the browser · A client without a browser, or a server that runs unattended, cannot walk through consent. Create an API key under Settings and send it as a bearer token on the same address.

curl -H "Authorization: Bearer rcad_live_..." https://remix-cad.vercel.app/api/mcp

There is also a standalone process over stdio for clients that speak nothing else. It runs the same five tools against this same server, so it buys you nothing unless your client demands it.

Recommended alongside

Put quellant/openscad-mcp next to it. That one runs OpenSCAD locally, so an agent can iterate on code it is writing, and use this one to search, fetch and publish back. This server only ever renders what is in the registry, never code it was handed, so the two complement each other instead of overlapping.

REST

The same endpoints the MCP server calls. Public reads need nothing. Anything that writes takes a bearer token, either an OAuth token or an API key.

The REST endpoints
MethodPathWhat it gives
GET/api/v1/models?q=Search. Same function the search page calls.
GET/api/v1/models/{handle}/{slug}Everything about one model, the same data as its page.
GET/api/v1/models/{handle}/{slug}/render?p=Render with parameter values you choose.
GET/api/v1/models/{handle}/{slug}/model.stlThe STL. Add ?p= for a variant.
GET/api/v1/models/{handle}/{slug}/source.zipThe source plus the full import closure.
POST/api/v1/modelsPublish a version. Needs a token that may publish.

A withdrawn model answers 410 Gone with its lineage intact. A model without geometry answers 200 with geometry: false and no STL link.

Docs