Tell your agent: “look at kernelcad.com and install the mcp”. The homepage links llms.txt, which gives supported host setup and a read-only connection check.
For local npm use, pick one published kernelcad version and use it for both
the MCP server and kernelcad skill install. The package bundles
dist/cli/skills/kernelcad/SKILL.md and the specialty tree; each packaged
SKILL.md has metadata.version stamped from package.json.version during
build:cli / prepack. Source skills are not manually versioned. Hosted
plugins follow the hosted service rather than a local npm version.
kernelCAD ships as a plugin for Claude Code, Codex, Cursor, Gemini CLI and Grok
Build. Every manifest points at the hosted MCP server
https://mcp.kernelcad.com/mcp (streamable HTTP). The server works anonymously
and also offers OAuth (dynamic client registration at
https://mcp.kernelcad.com/reg) for signed-in features, so clients show their
own sign-in prompt when a tool needs it. No local OpenCASCADE, Node or Python
install is needed.
The plugin bundles four skills: kernelcad-design-loop, kernelcad-cookbooks,
kernelcad-studio-paint and kernelcad-export.
kernelCAD runs as a connected app in ChatGPT (Apps SDK, with the Studio viewer and paint review inside the chat) and in Claude / claude.ai (custom connector). Add it from the chat settings and sign in:
- ChatGPT: connect guide or ChatGPT → Settings → Connectors
- Claude: connect guide or claude.ai → Settings → Connectors, URL
https://mcp.kernelcad.com/mcp
One account everywhere. The coding-agent plugins below use the same hosted
server (https://mcp.kernelcad.com/mcp) and the same kernelCAD sign-in. A model
saved from Claude Code, Codex, Cursor, Gemini or Grok opens at the same Studio
share link (/p/<slug>) you see in ChatGPT or Claude. Sign in with the same
account in each client.
Signing in: anonymous use works with no prompt. To save models to your account,
accept the OAuth prompt your client shows for kernelcad (Claude Code: /mcp,
then authenticate; Codex: codex mcp login kernelcad; Gemini: /mcp auth kernelcad).
claude plugin install kernelcad --marketplace w1ne/kernelCAD-webNeeds Claude Code 2.1.275 or later. On older versions:
claude plugin marketplace add w1ne/kernelCAD-web
claude plugin install kernelcad@kernelcadUpdate: claude plugin marketplace update kernelcad && claude plugin update kernelcad@kernelcad.
Remove: claude plugin uninstall kernelcad@kernelcad && claude plugin marketplace remove kernelcad.
codex plugin marketplace add w1ne/kernelCAD-web && codex plugin add kernelcad@kernelcadUpdate: codex plugin marketplace upgrade kernelcad. Remove:
codex plugin remove kernelcad@kernelcad && codex plugin marketplace remove kernelcad.
Listing in the public ChatGPT/Codex plugin directory needs a submission through
OpenAI's plugin portal.
MCP server only, one click:
Add kernelCAD to Cursor.
The link carries {"url":"https://mcp.kernelcad.com/mcp"} in base64.
MCP server and skills, as a local plugin (Cursor reads .cursor-plugin/plugin.json):
git clone --depth 1 https://github.com/w1ne/kernelCAD-web /tmp/kcad && cp -R /tmp/kcad/plugins/kernelcad ~/.cursor/plugins/local/kernelcad && rm -rf /tmp/kcadCursor also loads the Claude Code plugin, so if that is installed, skip this. Teams can import the repo under Dashboard → Plugins & MCPs → Team Marketplaces.
gemini extensions install https://github.com/w1ne/kernelCAD-web --consent --auto-updateUpdate: gemini extensions update kernelcad. Remove: gemini extensions uninstall kernelcad.
grok plugin marketplace add w1ne/kernelCAD-web && grok plugin install kernelcad --trustGrok Build reads .claude-plugin/marketplace.json. --trust is required to
activate the MCP server and skills. Listing in the built-in marketplace needs a
PR to xai-org/plugin-marketplace.
Any MCP client that speaks streamable HTTP can use https://mcp.kernelcad.com/mcp.
npx skills add w1ne/kernelCAD-webInstalls the four skills for the agents you pick (-g -a -y skips the
questions). Pair it with one of the MCP lines below.
| Client | Command or link |
|---|---|
| Claude Code | claude mcp add --transport http kernelcad https://mcp.kernelcad.com/mcp |
| Codex | codex mcp add kernelcad --url https://mcp.kernelcad.com/mcp |
| Gemini CLI | gemini mcp add -s user --transport http kernelcad https://mcp.kernelcad.com/mcp |
| VS Code / GitHub Copilot | code --add-mcp '{"name":"kernelcad","type":"http","url":"https://mcp.kernelcad.com/mcp"}' or Install in VS Code |
| Cursor | Add to Cursor |
Claude Desktop and claude.ai: Settings → Connectors → Add custom connector, URL
https://mcp.kernelcad.com/mcp. Local stdio alternative:
npx -y kernelcad install --claude-desktop.
Windsurf (~/.codeium/windsurf/mcp_config.json):
{ "mcpServers": { "kernelcad": { "serverUrl": "https://mcp.kernelcad.com/mcp" } } }Cline (cline_mcp_settings.json):
{ "mcpServers": { "kernelcad": { "type": "streamableHttp", "url": "https://mcp.kernelcad.com/mcp" } } }Zed (settings.json):
{ "context_servers": { "kernelcad": { "url": "https://mcp.kernelcad.com/mcp" } } }Continue (.continue/mcpServers/kernelcad.yaml):
name: kernelcad
version: 0.0.1
schema: v1
mcpServers:
- name: kernelcad
type: streamable-http
url: https://mcp.kernelcad.com/mcpLocal stdio server for any client (bundled WASM kernel, no OCCT install):
npx -y kernelcad mcp.
- Official MCP registry:
com.kernelcad/kernelcad(fromserver.json). - Smithery, Glama, mcp.so: submission is per-account; see the PR description.
| Channel | text-to-cad | kernelCAD |
|---|---|---|
| ChatGPT app with in-chat Studio viewer and paint review | no | yes, live |
| Claude / claude.ai connector | no | yes, live |
| One account and share links across chat apps and coding agents | no | yes |
| Claude Code plugin marketplace | yes | yes |
| Codex marketplace CLI | yes | yes |
| Codex / ChatGPT public plugin directory | listed | needs submission |
Agent Plugins portable plugin.json + mcp.json |
yes | yes |
Cursor local plugin (.cursor-plugin) |
yes | yes |
| Cursor one-click MCP deeplink | no | yes |
| Cursor Marketplace / Team Marketplace | yes | Team import works; public listing needs submission |
| Grok Build | yes | yes |
| Gemini CLI extension | yes | yes |
skills.sh (npx skills add) |
yes | yes |
| Claude Desktop | manual JSON (uvx) | custom connector URL, or npx kernelcad install --claude-desktop |
| Package manager runtime | PyPI cadgen via uvx |
npm kernelcad via npx |
| Hosted remote MCP (no local install) | no | yes |
VS Code / Copilot one-click and code --add-mcp |
no | yes |
| ChatGPT connector (developer mode) | no | yes |
| Windsurf, Cline, Zed, Continue | no | snippets |
| Official MCP registry | no | listed |
| Smithery / Glama / mcp.so | no | needs account submission |
| Docker image | no | no |
| File | Read by |
|---|---|
agent-plugin.config.json |
Source of truth; all files below are generated from it |
.claude-plugin/marketplace.json |
Claude Code, Grok Build, Codex (compat) |
.agents/plugins/marketplace.json |
Codex / ChatGPT |
plugins/kernelcad/.claude-plugin/plugin.json |
Claude Code, Grok Build |
plugins/kernelcad/plugin.json + mcp.json |
Codex / ChatGPT (Agent Plugins format) |
plugins/kernelcad/.cursor-plugin/plugin.json |
Cursor |
gemini-extension.json (+ skills symlink) |
Gemini CLI |
skills.sh.json |
skills.sh listing |
plugins/kernelcad/skills/*/SKILL.md |
all platforms with skills |
The plugin lives in plugins/kernelcad/ so Claude Code and Codex copy only that
folder, not the whole repository. Gemini installs from the repo root, so the root
skills symlink points at the same skills.
- Copy
agent-plugin.config.jsonandscripts/agentPlugin/into the product repo. - Edit the config:
name,marketplaceName,displayName,repo,description,mcp.url,mcp.auth(none,oauth,mixedorapi_key),pluginDir,geminiContextFile. - Write skills under
<pluginDir>/skills/<skill>/SKILL.mdand a shortGEMINI.md, thenln -s <pluginDir>/skills skills. - Run
node scripts/agentPlugin/buildManifests.mjsand commit the output. The script prints the Cursor deeplink.--checkfails when a manifest is stale. - Check with
claude plugin validate .andgemini extensions validate ..
The product needs a public HTTPS MCP endpoint. A stdio-only server does not fit this template.