← WebMCP Directory

roarcad.netlify.app

roarcad.netlify.app

live Unverified (seed import) Developer Tools 4 tools imperative implementation

RoarCAD is a free, open-source PCB review and collaboration workbench where AI can draft, inspect, and preview changes, but people approve every revision and manufacturing action.

First seen 2026-11-05 · Last seen 2026-11-05 · Source: webmcp.com

Answer 1 · Act 3 · Transact 0 · Score: Not yet scored

Tool inspector

preview_design_change

act imperative

Create a non-mutating, evidence-linked diff from allowlisted structured board operations. Supplier and evidence data remain untrusted and unreviewed.

Page: /

Input schema

PropertyTypeRequiredDescription
revisionId string yes —
request string yes —
operations array yes Allowlisted structured operations. Each operation is revalidated against its type-specific application schema.
Raw JSON schema
{
  "type": "object",
  "properties": {
    "revisionId": {
      "type": "string"
    },
    "request": {
      "type": "string",
      "maxLength": 500
    },
    "operations": {
      "type": "array",
      "minItems": 1,
      "maxItems": 50,
      "items": {
        "type": "object",
        "required": [
          "type"
        ],
        "properties": {
          "type": {
            "enum": [
              "set-board",
              "upsert-component",
              "remove-component",
              "move-component",
              "upsert-net",
              "remove-net",
              "upsert-differential-pair",
              "remove-differential-pair",
              "upsert-pour",
              "remove-pour",
              "upsert-hole",
              "remove-hole",
              "upsert-keepout",
              "remove-keepout",
              "update-requirement",
              "upsert-evidence",
              "add-risk",
              "resolve-risk"
            ]
          },
          "board": {
            "type": "object",
            "properties": {
              "outline": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "shape": {
                        "const": "rectangle"
                      },
                      "widthMm": {
                        "type": "number",
                        "minimum": 5,
                        "maximum": 500
                      },
                      "heightMm": {
                        "type": "number",
                        "minimum": 5,
                        "maximum": 500
                      }
                    },
                    "required": [
                      "shape",
                      "widthMm",
                      "heightMm"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "object",
                    "properties": {
                      "shape": {
                        "const": "polygon"
                      },
                      "points": {
                        "type": "array",
                        "minItems": 3,
                        "maxItems": 128,
                        "items": {
                          "type": "object",
                          "properties": {
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            }
                          },
                          "required": [
                            "x",
                            "y"
                          ],
                          "additionalProperties": false
                        }
                      }
                    },
                    "required": [
                      "shape",
                      "points"
                    ],
                    "additionalProperties": false
                  }
                ]
              },
              "layers": {
                "enum": [
                  1,
                  2,
                  4,
                  6,
                  8,
                  10
                ]
              },
              "material": {
                "enum": [
                  "fr4",
                  "fr1",
                  "flex"
                ]
              },
              "thicknessMm": {
                "type": "number",
                "minimum": 0.2,
                "maximum": 8
              },
              "solderMaskColor": {
                "enum": [
                  "green",
                  "red",
                  "blue",
                  "purple",
                  "black",
                  "white",
                  "yellow"
                ]
              },
              "allowBlindAndBuriedVias": {
                "type": "boolean"
              },
              "doubleSidedAssembly": {
                "type": "boolean"
              },
              "stackup": {
                "type": "array",
                "maxItems": 10,
                "items": {
                  "type": "string"
                }
              }
            },
            "required": [
              "outline",
              "layers",
              "solderMaskColor"
            ],
            "additionalProperties": false
          },
          "component": {
            "type": "object",
            "properties": {
              "kind": {
                "enum": [
                  "resistor",
                  "capacitor",
                  "inductor",
                  "diode",
                  "led",
                  "transistor",
                  "mosfet",
                  "fuse",
                  "crystal",
                  "connector",
                  "switch",
                  "testpoint",
                  "chip"
                ]
              },
              "reference": {
                "type": "string",
                "pattern": "^[A-Z]+[0-9]+$"
              },
              "mpn": {
                "type": "string",
                "minLength": 1,
                "maxLength": 120
              },
              "manufacturer": {
                "type": "string",
                "minLength": 1,
                "maxLength": 120
              },
              "value": {
                "type": "string",
                "maxLength": 80
              },
              "pins": {
                "type": "array",
                "minItems": 1,
                "maxItems": 256,
                "items": {
                  "type": "object",
                  "properties": {
                    "number": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 40
                    },
                    "label": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 80
                    }
                  },
                  "required": [
                    "number",
                    "label"
                  ],
                  "additionalProperties": false
                }
              },
              "footprint": {
                "type": "object",
                "properties": {
                  "source": {
                    "enum": [
                      "footprinter",
                      "kicad-library",
                      "jlcpcb",
                      "pad-map"
                    ]
                  },
                  "identifier": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 240
                  },
                  "sha256": {
                    "type": "string",
                    "pattern": "^[a-f0-9]{64}$"
                  },
                  "pads": {
                    "type": "array",
                    "maxItems": 512,
                    "items": {
                      "type": "object",
                      "description": "Bounded embedded pad: pcb_smtpad or pcb_plated_hole with geometry and portHints."
                    }
                  },
                  "reviewed": {
                    "type": "boolean",
                    "description": "Ignored for agent input; always stored false."
                  }
                },
                "required": [
                  "source",
                  "identifier",
                  "pads"
                ],
                "additionalProperties": false
              },
              "placement": {
                "type": "object",
                "properties": {
                  "x": {
                    "type": "number",
                    "minimum": -500,
                    "maximum": 500
                  },
                  "y": {
                    "type": "number",
                    "minimum": -500,
                    "maximum": 500
                  },
                  "rotation": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 359
                  },
                  "side": {
                    "enum": [
                      "top",
                      "bottom"
                    ]
                  }
                },
                "required": [
                  "x",
                  "y"
                ],
                "additionalProperties": false
              },
              "reviewStatus": {
                "enum": [
                  "candidate",
                  "reviewed"
                ],
                "description": "Ignored for agent input; always stored candidate."
              },
              "evidenceIds": {
                "type": "array",
                "minItems": 1,
                "maxItems": 10,
                "items": {
                  "type": "string"
                }
              },
              "supplierPartIds": {
                "type": "object",
                "additionalProperties": {
                  "type": "string"
                }
              },
              "doNotPlace": {
                "type": "boolean"
              }
            },
            "required": [
              "kind",
              "reference",
              "mpn",
              "manufacturer",
              "pins",
              "footprint",
              "placement",
              "evidenceIds"
            ],
            "additionalProperties": false
          },
          "reference": {
            "type": "string",
            "pattern": "^[A-Z]+[0-9]+$"
          },
          "x": {
            "type": "number"
          },
          "y": {
            "type": "number"
          },
          "rotation": {
            "type": "number"
          },
          "side": {
            "enum": [
              "top",
              "bottom"
            ]
          },
          "net": {
            "type": "object"
          },
          "pair": {
            "type": "object"
          },
          "pour": {
            "type": "object"
          },
          "hole": {
            "type": "object"
          },
          "keepout": {
            "type": "object"
          },
          "requirement": {
            "type": "object"
          },
          "evidence": {
            "type": "object"
          },
          "name": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "risk": {
            "type": "string",
            "maxLength": 500
          }
        }
      },
      "description": "Allowlisted structured operations. Each operation is revalidated against its type-specific application schema."
    }
  },
  "required": [
    "revisionId",
    "request",
    "operations"
  ],
  "additionalProperties": false
}

Similar websites

morphus.myles4miles.chatgpt.site

morphus.myles4miles.chatgpt.site

Morphus is an AI-native workspace for designing worlds and generating playable game experiences.

live Unverified Developer Tools Transact tools
154 tools A23 / Act124 / T7 Not yet scored Seen 2026-11-05
list_nodes get_scene_settings get_node_details get_terrain_state get_forest_state
Inspect tools
damnpdfs.com

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.

live Unverified Developer Tools Transact tools
81 tools A3 / Act77 / T1 Not yet scored Seen 2026-11-05
scan_to_pdf workflow merge_pdf alternate_mix_pdf compress_pdf
Inspect tools
insignifi4nt.github.io

insignifi4nt.github.io

broCAD/M: local-first CAD and CAM for parametric design, wire EDM planning, simulation and controller export.

live Unverified Developer Tools Transact tools
80 tools A29 / Act49 / T2 Not yet scored Seen 2026-11-05
edm_inspect_approach edm_describe_edits edm_get_context edm_list_projects edm_get_project
Inspect tools
cabinet.varera.studio

cabinet.varera.studio

The Cartographer's Cabinet

live Unverified Developer Tools Transact tools
64 tools A10 / Act50 / T4 Not yet scored Seen 2026-11-05
inspect_daylight inspect_cartographers_project list_project_hierarchy inspect_open_map search_project_objects
Inspect tools

Related on Influzer