invitedpeak.github.io
A browser 3D modeling studio that AI agents drive through WebMCP tools. Watch the model take shape in the viewport.
First seen 2026-11-05 · Last seen 2026-11-05 · Source: webmcp.com
Answer 7 · Act 35 · Transact 3 · Score: Not yet scored
Tool inspector
create_extrude
Extrude a 2D polygon (with optional holes) into a solid. The shape is drawn in a plane and pushed along axis (default "y", so the polygon lies flat on the ground like a floor plan; use "z" for a shape that stands upright facing the camera). Optional rounded bevels. Good for brackets, plates, letters, gears, profiles, and building footprints.
Page: /flevAgenticCAD/
Input schema
| Property | Type | Required | Description |
|---|---|---|---|
shape |
array | yes | Outline polygon as [[x, y], ...] in counter-clockwise order, at least 3 points. |
holes |
array | no | Optional list of hole polygons, each [[x, y], ...]. |
depth |
number | no | Extrusion length. Default 0.2. |
axis |
string | no | Extrusion direction. Default "y". |
bevel |
boolean | no | Round the edges. Default false. |
bevel_size |
number | no | Bevel inset. Default 0.02. |
bevel_thickness |
number | no | Bevel height. Default 0.02. |
bevel_segments |
integer | no | Default 3. |
curve_segments |
integer | no | Segments for curved outline sections. Default 12. |
name |
string | no | Display name. Names are unique; a numeric suffix is added on collision. |
position |
array | no | [x, y, z] in parent space. Y is up. Default [0, 0, 0]. |
rotation |
array | no | Euler rotation in degrees [x, y, z]. Default [0, 0, 0]. |
scale |
— | no | Uniform number or [x, y, z]. Default 1. |
material |
string | no | Material id or name, or a preset name such as plastic, metal, gold, chrome, glass, wood, clay. See list_presets. |
color |
string | no | Hex color like "#D9A441". Combined with a preset it makes a tinted copy; alone it makes a plastic of that color. |
parent |
string | no | Id or name of a parent object (usually a group). Position and rotation are then relative to it. |
on_ground |
boolean | no | Lift the object so its lowest point sits on the ground plane. Defaults to true when position is omitted (except for tube and mesh, whose coordinates are absolute), false otherwise. |
visible |
boolean | no | Default true. |
cast_shadow |
boolean | no | Default true. |
receive_shadow |
boolean | no | Default true. |
Raw JSON schema
{
"type": "object",
"properties": {
"shape": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "number"
},
"minItems": 2,
"maxItems": 2
},
"description": "Outline polygon as [[x, y], ...] in counter-clockwise order, at least 3 points."
},
"holes": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "number"
},
"minItems": 2,
"maxItems": 2
},
"description": "One hole polygon."
},
"description": "Optional list of hole polygons, each [[x, y], ...]."
},
"depth": {
"type": "number",
"description": "Extrusion length. Default 0.2."
},
"axis": {
"type": "string",
"enum": [
"x",
"y",
"z"
],
"description": "Extrusion direction. Default \"y\"."
},
"bevel": {
"type": "boolean",
"description": "Round the edges. Default false."
},
"bevel_size": {
"type": "number",
"description": "Bevel inset. Default 0.02."
},
"bevel_thickness": {
"type": "number",
"description": "Bevel height. Default 0.02."
},
"bevel_segments": {
"type": "integer",
"description": "Default 3."
},
"curve_segments": {
"type": "integer",
"description": "Segments for curved outline sections. Default 12."
},
"name": {
"type": "string",
"description": "Display name. Names are unique; a numeric suffix is added on collision."
},
"position": {
"type": "array",
"items": {
"type": "number"
},
"minItems": 3,
"maxItems": 3,
"description": "[x, y, z] in parent space. Y is up. Default [0, 0, 0]."
},
"rotation": {
"type": "array",
"items": {
"type": "number"
},
"minItems": 3,
"maxItems": 3,
"description": "Euler rotation in degrees [x, y, z]. Default [0, 0, 0]."
},
"scale": {
"description": "Uniform number or [x, y, z]. Default 1.",
"anyOf": [
{
"type": "number"
},
{
"type": "array",
"items": {
"type": "number"
},
"minItems": 3,
"maxItems": 3
}
]
},
"material": {
"type": "string",
"description": "Material id or name, or a preset name such as plastic, metal, gold, chrome, glass, wood, clay. See list_presets."
},
"color": {
"type": "string",
"description": "Hex color like \"#D9A441\". Combined with a preset it makes a tinted copy; alone it makes a plastic of that color."
},
"parent": {
"type": "string",
"description": "Id or name of a parent object (usually a group). Position and rotation are then relative to it."
},
"on_ground": {
"type": "boolean",
"description": "Lift the object so its lowest point sits on the ground plane. Defaults to true when position is omitted (except for tube and mesh, whose coordinates are absolute), false otherwise."
},
"visible": {
"type": "boolean",
"description": "Default true."
},
"cast_shadow": {
"type": "boolean",
"description": "Default true."
},
"receive_shadow": {
"type": "boolean",
"description": "Default true."
}
},
"required": [
"shape"
]
}
Similar websites
morphus.myles4miles.chatgpt.site
Morphus is an AI-native workspace for designing worlds and generating playable game experiences.
damnpdfs.com
Install the DamnPDFs Codex plugin, pair a browser workspace and use PDF, image and file tools from your coding agent. Includes setup and privacy limits.
insignifi4nt.github.io
broCAD/M: local-first CAD and CAM for parametric design, wire EDM planning, simulation and controller export.
cabinet.varera.studio
The Cartographer's Cabinet