Bitbybit 3D parametric CAD API, version-exact, for coding agents: search, describe, examples, guide
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
The exact contract of one member by dotted path, for example occt.shapes.solid.createBox: signature, every parameter with its type, default and range, the return type, the documentation, examples and where it runs. Answers are for the API version the server holds. It also describes the types a member returns or takes by their name, for example Inputs.IFC.SpaceInfoDto, field by field, and a member's answer lists those types. An unknown path is reported as not found together with the nearest existing paths; nothing is guessed.
The dotted path of the member, for example occt.shapes.solid.createBox, or the name of a type a member returns or takes, for example Inputs.IFC.SpaceInfoDto
The API version to describe; omit for the version the server holds
The exact contract of one member by dotted path, for example occt.shapes.solid.createBox: signature, every parameter with its type, default and range, the return type, the documentation, examples and where it runs. Answers are for the API version the server holds. It also describes the types a member returns or takes by their name, for example Inputs.IFC.SpaceInfoDto, field by field, and a member's answer lists those types. An unknown path is reported as not found together with the nearest existing paths; nothing is guessed.
| Argument | Type | Description |
|---|---|---|
| path* | string | The dotted path of the member, for example occt.shapes.solid.createBox, or the name of a type a member returns or takes, for example Inputs.IFC.SpaceInfoDto |
| version | string | The API version to describe; omit for the version the server holds |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"path"
],
"properties": {
"path": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "The dotted path of the member, for example occt.shapes.solid.createBox, or the name of a type a member returns or takes, for example Inputs.IFC.SpaceInfoDto"
},
"version": {
"type": "string",
"description": "The API version to describe; omit for the version the server holds"
}
}
}Fetches the full documentation of one Bitbybit API member by id (a dotted path returned by search) as text, with its title, url and metadata.
| Argument | Type | Description |
|---|---|---|
| id* | string | A dotted API path returned by search |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "A dotted API path returned by search"
}
}
}Working TypeScript examples for a member path, for a namespace, or for a topic given as keywords. Each example names the member it belongs to and links its reference page. Examples are written for the API version the server holds.
| Argument | Type | Description |
|---|---|---|
| path | string | A member or namespace path, for example occt.shapes.solid.createBox or occt.fillets |
| limit | integer | How many examples, 5 by default |
| topic | string | Keywords to find examples by, when no path is known |
| engine | string | Prefer members published for this engine when searching by topic |
| version | string | The API version; omit for the version the server holds |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"path": {
"type": "string",
"maxLength": 256,
"description": "A member or namespace path, for example occt.shapes.solid.createBox or occt.fillets"
},
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "How many examples, 5 by default"
},
"topic": {
"type": "string",
"maxLength": 200,
"description": "Keywords to find examples by, when no path is known"
},
"engine": {
"enum": [
"babylonjs",
"threejs",
"playcanvas"
],
"type": "string",
"description": "Prefer members published for this engine when searching by topic"
},
"version": {
"type": "string",
"description": "The API version; omit for the version the server holds"
}
}
}Sections of the public guides: building with Bitbybit (what runs in the browser, on a server, on a lightweight backend, and what needs CAD Cloud), writing geometry with the kernels (which kernel to use, the order to build a part in, choosing edges, checking and exporting shapes), writing design documents (parametric models as JSON: parameters, sketches, features, references, parts and assemblies), and writing IFC building models (storeys, walls and their joins, doors, windows, slabs, roofs, rooms, properties and quantities). Without a topic it lists the sections. Read "integrate" before recommending where geometry should run: the npm packages are the default, and CAD Cloud is for algorithms that exist only there or compute the caller cannot provide. Read "geometry" before writing geometry code, "design" before writing a design document, and "ifc" before writing an IFC model.
| Argument | Type | Description |
|---|---|---|
| topic | string | A section id or a short name such as integrate, browser, backend, server-side, pro, start, geometry, part-order, geometry-mistakes, design, references, assembly, ifc, ifc-order, ifc-mistakes; omit to list the sections |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"topic": {
"type": "string",
"maxLength": 128,
"description": "A section id or a short name such as integrate, browser, backend, server-side, pro, start, geometry, part-order, geometry-mistakes, design, references, assembly, ifc, ifc-order, ifc-mistakes; omit to list the sections"
}
}
}The members one level below a namespace path, for example occt.shapes, each with its kind and summary. Without a path, the top-level namespaces. Use it to discover what exists before searching for details.
| Argument | Type | Description |
|---|---|---|
| path | string | A namespace path such as occt or occt.shapes; omit for the top level |
| version | string | The API version to list; omit for the version the server holds |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"path": {
"type": "string",
"maxLength": 256,
"description": "A namespace path such as occt or occt.shapes; omit for the top level"
},
"version": {
"type": "string",
"description": "The API version to list; omit for the version the server holds"
}
}
}Searches the Bitbybit API documentation and returns a list of results with id, title and url. Each id is a dotted API path that fetch accepts.
| Argument | Type | Description |
|---|---|---|
| query* | string | Search terms |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Search terms"
}
}
}Find Bitbybit API members (methods, namespaces, cloud operations) by keywords, for example "box solid" or "fillet edges". Returns dotted paths with a one-line summary, the tier (oss on npm, platform-pro only at bitbybit.dev, cloud-pro only on CAD Cloud) and the engines each is published for. Call describe with a path before writing code that uses it.
| Argument | Type | Description |
|---|---|---|
| limit | integer | How many results, 10 by default |
| query* | string | Keywords, a phrase, or a partial dotted path |
| engine | string | Only members published for this engine, plus the cloud operations, which run on CAD Cloud rather than in an engine; omit for every engine |
| version | string | The API version to search; omit for the version the server holds |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "How many results, 10 by default"
},
"query": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Keywords, a phrase, or a partial dotted path"
},
"engine": {
"enum": [
"babylonjs",
"threejs",
"playcanvas"
],
"type": "string",
"description": "Only members published for this engine, plus the cloud operations, which run on CAD Cloud rather than in an engine; omit for every engine"
},
"version": {
"type": "string",
"description": "The API version to search; omit for the version the server holds"
}
}
}