Tool tree
gradeNot graded
behavior.get_capabilitiesAction
Read exact typed preview actions and events declared by the checked-in behavior profiles for every component instance. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "behavior.get_capabilities",
"kind": "act",
"impl": "imperative",
"description": "Read exact typed preview actions and events declared by the checked-in behavior profiles for every component instance. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}behavior.plan.writeAction
Create or replace a versioned Behavior Plan after validating exact component definitions, typed payloads, and profile support. This does not run source code or start preview. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "behavior.plan.write",
"kind": "act",
"impl": "imperative",
"description": "Create or replace a versioned Behavior Plan after validating exact component definitions, typed payloads, and profile support. This does not run source code or start preview. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"plan": {
"type": "object",
"description": "Version 1 Behavior Plan JSON"
},
"expectedRevision": {
"anyOf": [
{
"type": "integer",
"minimum": 0
},
{
"type": "null"
}
],
"description": "Current plan revision, or null to create only"
}
},
"required": [
"plan",
"expectedRevision"
],
"additionalProperties": false
}
}behavior.previewAction
Prepare and open the saved Behavior Plan for deterministic typed-action preview; source code is never read or executed. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "behavior.preview",
"kind": "act",
"impl": "imperative",
"description": "Prepare and open the saved Behavior Plan for deterministic typed-action preview; source code is never read or executed. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"planId": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"onUnsupported": {
"type": "string",
"enum": [
"block",
"skip"
],
"default": "block"
},
"durationMs": {
"type": "integer",
"minimum": 1,
"maximum": 600000,
"default": 1000,
"description": "Minimum logical playback window; scheduled plan items extend it automatically."
}
},
"additionalProperties": false
}
}behavior.invokeAction
Dispatch exactly one validated component event, input change, or typed component action into the active Behavior Preview session. It never mutates the durable plan; a schema-valid request that the profile rejects is returned as data.status=rejected with diagnostics. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "behavior.invoke",
"kind": "act",
"impl": "imperative",
"description": "Dispatch exactly one validated component event, input change, or typed component action into the active Behavior Preview session. It never mutates the durable plan; a schema-valid request that the profile rejects is returned as data.status=rejected with diagnostics. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"componentId": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"definitionId": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"eventId": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"inputId": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"actionId": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"payload": {},
"value": {}
},
"required": [
"componentId",
"definitionId"
],
"oneOf": [
{
"required": [
"eventId",
"payload"
]
},
{
"required": [
"inputId",
"value"
]
},
{
"required": [
"actionId",
"payload"
]
}
],
"additionalProperties": false
}
}behavior.press_keyAction
Press one calculator key on a membrane keypad instance through its exact keypad.press action. The keypad's deterministic calculator state emits the resulting display value for Behavior Plan routing to an LCD. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "behavior.press_key",
"kind": "act",
"impl": "imperative",
"description": "Press one calculator key on a membrane keypad instance through its exact keypad.press action. The keypad's deterministic calculator state emits the resulting display value for Behavior Plan routing to an LCD. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"componentId": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Membrane keypad instance id."
},
"definitionId": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Optional catalog definition id; resolved from the instance when omitted."
},
"key": {
"type": "string",
"enum": [
"0",
"1",
"2",
"3",
"4",
"5",
"6",
"7",
"8",
"9",
"+",
"-",
"*",
"/",
".",
"=",
"C"
],
"description": "Calculator key to press."
}
},
"required": [
"componentId",
"key"
],
"additionalProperties": false
}
}behavior.get_stateAction
Read compact active Behavior Preview state. Logs and timeline entries are bounded by pagination parameters so default tool output stays small. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "behavior.get_state",
"kind": "act",
"impl": "imperative",
"description": "Read compact active Behavior Preview state. Logs and timeline entries are bounded by pagination parameters so default tool output stays small. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"detail": {
"type": "string",
"enum": [
"compact",
"full"
],
"default": "compact"
},
"logLimit": {
"type": "integer",
"minimum": 0,
"maximum": 200,
"default": 12
},
"logOffset": {
"type": "integer",
"minimum": 0,
"default": 0
},
"eventsLimit": {
"type": "integer",
"minimum": 0,
"maximum": 200,
"default": 12
}
},
"additionalProperties": false
}
}code.writeAction
Write editable board source using exact-hash concurrency. expectedContentSha256=null creates source and may replace only Schematic's marked generated starter scaffold; real existing source still requires its exact hash. Browser Check can execute its supported bounded subset separately. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "code.write",
"kind": "act",
"impl": "imperative",
"description": "Write editable board source using exact-hash concurrency. expectedContentSha256=null creates source and may replace only Schematic's marked generated starter scaffold; real existing source still requires its exact hash. Browser Check can execute its supported bounded subset separately. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"targetComponentId": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"files": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"maxLength": 240
},
"content": {
"type": "string",
"maxLength": 1048576
}
},
"required": [
"name",
"content"
],
"additionalProperties": false
},
"minItems": 1,
"maxItems": 128
},
"language": {
"type": "string",
"enum": [
"arduino",
"micropython",
"espidf",
"c",
"cpp",
"python"
]
},
"dependencies": {
"type": "array",
"items": {
"type": "object",
"properties": {
"ecosystem": {
"type": "string",
"enum": [
"arduino-library",
"platformio",
"python-package",
"vendor-sdk",
"other"
]
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 240
},
"version": {
"type": "string",
"maxLength": 120
},
"sourceUrl": {
"type": "string",
"maxLength": 2000
}
},
"required": [
"ecosystem",
"name"
],
"additionalProperties": false
},
"maxItems": 256
},
"expectedContentSha256": {
"anyOf": [
{
"type": "string",
"pattern": "^[0-9a-fA-F]{64}$"
},
{
"type": "null"
}
]
},
"origin": {
"type": "string",
"enum": [
"ai-generated",
"human-authored",
"imported",
"mixed"
]
},
"boardFqbn": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"linkToBehaviorPlan": {
"type": "object",
"properties": {
"planId": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"planSha256": {
"type": "string",
"pattern": "^[0-9a-fA-F]{64}$"
},
"projectSha256": {
"type": "string",
"pattern": "^[0-9a-fA-F]{64}$"
}
},
"required": [
"planId",
"planSha256",
"projectSha256"
],
"additionalProperties": false
}
},
"required": [
"targetComponentId",
"files",
"language",
"expectedContentSha256"
],
"additionalProperties": false
}
}code.readAction
Read an editable source document and its origin, revision, hash, preview-link status, and external-use honesty claims. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "code.read",
"kind": "act",
"impl": "imperative",
"description": "Read an editable source document and its origin, revision, hash, preview-link status, and external-use honesty claims. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"targetComponentId": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"documentId": {
"type": "string",
"minLength": 1,
"maxLength": 200
}
},
"additionalProperties": false
}
}code.exportAction
Create a machine-readable external code handoff manifest with file hashes and graph diagnostics. No compiler, uploader, network, or source execution is involved. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "code.export",
"kind": "act",
"impl": "imperative",
"description": "Create a machine-readable external code handoff manifest with file hashes and graph diagnostics. No compiler, uploader, network, or source execution is involved. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"targetComponentId": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"documentId": {
"type": "string",
"minLength": 1,
"maxLength": 200
}
},
"additionalProperties": false
}
}design.proposeAction
Stage a non-mutating goal-level hardware proposal. Calculator/math requests produce the reviewed Arduino + membrane keypad + I2C LCD workflow; use design.preview before design.apply. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "design.propose",
"kind": "act",
"impl": "imperative",
"description": "Stage a non-mutating goal-level hardware proposal. Calculator/math requests produce the reviewed Arduino + membrane keypad + I2C LCD workflow; use design.preview before design.apply. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"goal": {
"type": "string",
"minLength": 1,
"maxLength": 500
}
},
"required": [
"goal"
],
"additionalProperties": false
}
}design.previewAction
Preview the staged design without mutating the active project. Returns component/wiring summary, static graph diagnostics, and an explicit approval token requirement for apply. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "design.preview",
"kind": "act",
"impl": "imperative",
"description": "Preview the staged design without mutating the active project. Returns component/wiring summary, static graph diagnostics, and an explicit approval token requirement for apply. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"proposalId": {
"type": "string",
"minLength": 1,
"maxLength": 200
}
},
"required": [
"proposalId"
],
"additionalProperties": false
}
}design.applyAction
Apply one staged proposal only after explicit exact-id confirmation. The whole design is one undoable transaction; any failed component, wire, or Behavior Plan step rolls back to the prior project. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "design.apply",
"kind": "act",
"impl": "imperative",
"description": "Apply one staged proposal only after explicit exact-id confirmation. The whole design is one undoable transaction; any failed component, wire, or Behavior Plan step rolls back to the prior project. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"proposalId": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"confirmProposalId": {
"type": "string",
"minLength": 1,
"maxLength": 200
}
},
"required": [
"proposalId",
"confirmProposalId"
],
"additionalProperties": false
}
}design.discardAction
Discard the staged proposal without mutating the hardware project. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "design.discard",
"kind": "act",
"impl": "imperative",
"description": "Discard the staged proposal without mutating the hardware project. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"proposalId": {
"type": "string",
"minLength": 1,
"maxLength": 200
}
},
"required": [
"proposalId"
],
"additionalProperties": false
}
}design.undoAction
Undo the latest agent design mutation for the active project by restoring its exact prior project snapshot. Undo itself is reversible with design.redo. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "design.undo",
"kind": "act",
"impl": "imperative",
"description": "Undo the latest agent design mutation for the active project by restoring its exact prior project snapshot. Undo itself is reversible with design.redo. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}design.redoAction
Redo the most recently undone agent design mutation for the active project. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "design.redo",
"kind": "act",
"impl": "imperative",
"description": "Redo the most recently undone agent design mutation for the active project. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}design.verifyAction
Return a compact goal-level verification summary for the active design, including calculator interactivity, graph/behavior/source stages, and honest browser/external boundaries. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "design.verify",
"kind": "act",
"impl": "imperative",
"description": "Return a compact goal-level verification summary for the active design, including calculator interactivity, graph/behavior/source stages, and honest browser/external boundaries. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"durationMs": {
"type": "integer",
"minimum": 0,
"maximum": 10000,
"default": 250
}
},
"additionalProperties": false
}
}workspace.get_tool_surfaceAction
Read a small state-aware shortlist of the WebMCP tools most relevant to the current project stage instead of choosing from the full registry blindly. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "workspace.get_tool_surface",
"kind": "act",
"impl": "imperative",
"description": "Read a small state-aware shortlist of the WebMCP tools most relevant to the current project stage instead of choosing from the full registry blindly. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}project.get_graphAction
Get the current hardware graph and source-document metadata. Source contents and quarantined legacy data are excluded; use code.read for source. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "project.get_graph",
"kind": "act",
"impl": "imperative",
"description": "Get the current hardware graph and source-document metadata. Source contents and quarantined legacy data are excluded; use code.read for source. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {}
}
}project.verifyAction
Produce one honest browser-side readiness report: static graph checks, Behavior Plan coverage, board source coverage, bounded Browser Check execution, static source preflight, and explicit no-compile/no-physical-hardware claims. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "project.verify",
"kind": "act",
"impl": "imperative",
"description": "Produce one honest browser-side readiness report: static graph checks, Behavior Plan coverage, board source coverage, bounded Browser Check execution, static source preflight, and explicit no-compile/no-physical-hardware claims. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"componentId": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"durationMs": {
"type": "integer",
"minimum": 0,
"maximum": 10000,
"default": 1000
}
},
"additionalProperties": false
}
}project.listAction
List all projects saved in this browser and identify the active project — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "project.list",
"kind": "act",
"impl": "imperative",
"description": "List all projects saved in this browser and identify the active project — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {}
}
}project.createAction
Create and activate a new empty hardware project saved in this browser — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "project.create",
"kind": "act",
"impl": "imperative",
"description": "Create and activate a new empty hardware project saved in this browser — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string"
}
}
}
}project.switchAction
Switch the active project; the selected project becomes live in every same-origin Schematic tab — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "project.switch",
"kind": "act",
"impl": "imperative",
"description": "Switch the active project; the selected project becomes live in every same-origin Schematic tab — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"projectId": {
"type": "string"
}
},
"required": [
"projectId"
]
}
}project.duplicateAction
Duplicate a saved project and activate the copy — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "project.duplicate",
"kind": "act",
"impl": "imperative",
"description": "Duplicate a saved project and activate the copy — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"projectId": {
"type": "string"
},
"name": {
"type": "string"
}
}
}
}project.deleteSensitive Action
Delete one saved project after confirming its exact id; the final remaining project cannot be deleted — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "project.delete",
"kind": "transact",
"impl": "imperative",
"description": "Delete one saved project after confirming its exact id; the final remaining project cannot be deleted — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"projectId": {
"type": "string",
"description": "Exact id of the project to delete"
},
"confirmProjectId": {
"type": "string",
"description": "Repeat the exact project id to confirm this irreversible operation"
}
},
"required": [
"projectId",
"confirmProjectId"
]
}
}project.saveAction
Persist the active project collection to this browser and broadcast it to same-origin tabs — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "project.save",
"kind": "act",
"impl": "imperative",
"description": "Persist the active project collection to this browser and broadcast it to same-origin tabs — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {}
}
}project.clearSensitive Action
Clear the current project after confirming its exact id (remove all components, connections, and firmware) — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "project.clear",
"kind": "transact",
"impl": "imperative",
"description": "Clear the current project after confirming its exact id (remove all components, connections, and firmware) — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"projectId": {
"type": "string",
"description": "Exact id of the active project to clear"
},
"confirmProjectId": {
"type": "string",
"description": "Repeat the exact active project id to confirm this irreversible operation"
}
},
"required": [
"projectId",
"confirmProjectId"
]
}
}project.renameAction
Rename the active hardware project — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "project.rename",
"kind": "act",
"impl": "imperative",
"description": "Rename the active hardware project — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string"
}
},
"required": [
"name"
]
}
}project.apply_blueprintAction
Create a complete hardware design as a new project by default and prepare fallback Outcome behavior for mapped parts. Replacing the active project requires replace=true and its exact id in confirmProjectId. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "project.apply_blueprint",
"kind": "act",
"impl": "imperative",
"description": "Create a complete hardware design as a new project by default and prepare fallback Outcome behavior for mapped parts. Replacing the active project requires replace=true and its exact id in confirmProjectId. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"blueprintId": {
"type": "string",
"enum": [
"meta-glasses"
]
},
"replace": {
"type": "boolean",
"default": false
},
"confirmProjectId": {
"type": "string"
}
},
"required": [
"blueprintId"
]
}
}workspace.get_stateAnswer
Read a compact workspace summary: project counts, current stage, validation status, selection, and the latest few agent actions. Use paginated specialist tools for detailed logs or Behavior state. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "workspace.get_state",
"kind": "answer",
"impl": "imperative",
"description": "Read a compact workspace summary: project counts, current stage, validation status, selection, and the latest few agent actions. Use paginated specialist tools for detailed logs or Behavior state. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}workspace.get_activityAnswer
Read bounded paginated WebMCP activity without inflating workspace.get_state. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "workspace.get_activity",
"kind": "answer",
"impl": "imperative",
"description": "Read bounded paginated WebMCP activity without inflating workspace.get_state. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 80,
"default": 12
},
"offset": {
"type": "integer",
"minimum": 0,
"default": 0
}
},
"additionalProperties": false
}
}workspace.set_panelAction
Open a live bottom workspace panel for the user or agent: webmcp, terminal, debug, or validation — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "workspace.set_panel",
"kind": "act",
"impl": "imperative",
"description": "Open a live bottom workspace panel for the user or agent: webmcp, terminal, debug, or validation — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"panel": {
"type": "string",
"enum": [
"webmcp",
"terminal",
"debug",
"validation"
]
}
},
"required": [
"panel"
]
}
}workspace.set_right_widthAction
Resize the right code and inspector panel in pixels; keeps the value across sessions — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "workspace.set_right_width",
"kind": "act",
"impl": "imperative",
"description": "Resize the right code and inspector panel in pixels; keeps the value across sessions — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"width": {
"type": "number",
"minimum": 300,
"maximum": 720
}
},
"required": [
"width"
]
}
}component.searchAction
Search components in catalog by query, category, or domain. e.g. ESP32, TI DRV, sensor — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "component.search",
"kind": "act",
"impl": "imperative",
"description": "Search components in catalog by query, category, or domain. e.g. ESP32, TI DRV, sensor — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Search text"
},
"category": {
"type": "string",
"enum": [
"board",
"sensor",
"actuator",
"display",
"power",
"logic",
"communication",
"mechanical",
"rf",
"custom",
"analog",
"passive",
""
]
},
"domain": {
"type": "string",
"enum": [
"power",
"power_output",
"ground",
"gpio",
"adc",
"pwm",
"i2c",
"spi",
"uart",
"usb",
"ethernet",
"can",
"pcie",
"csi",
"hdmi",
"displayport",
"rf",
"mechanical",
"optical",
""
]
}
}
}
}component.inspectAction
Inspect a component definition by id — returns ports, exact typed-preview mapping, and catalog metadata — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "component.inspect",
"kind": "act",
"impl": "imperative",
"description": "Inspect a component definition by id — returns ports, exact typed-preview mapping, and catalog metadata — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"componentId": {
"type": "string",
"description": "Catalog id, e.g. bmp280"
}
},
"required": [
"componentId"
]
}
}component.addAction
Add a hardware component to the current project; omit x and y for collision-aware automatic placement, or provide both finite numeric coordinates. Behavior-mapped parts also keep the fallback Outcome plan synchronized without starting playback. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "component.add",
"kind": "act",
"impl": "imperative",
"description": "Add a hardware component to the current project; omit x and y for collision-aware automatic placement, or provide both finite numeric coordinates. Behavior-mapped parts also keep the fallback Outcome plan synchronized without starting playback. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"componentId": {
"type": "string",
"description": "Catalog definition id"
},
"x": {
"type": "number",
"description": "Canvas x"
},
"y": {
"type": "number",
"description": "Canvas y"
}
},
"required": [
"componentId"
]
}
}component.removeAction
Remove a component instance and its connections after confirming the exact instance id, then refresh generated fallback Outcome behavior so it does not target the removed instance — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "component.remove",
"kind": "act",
"impl": "imperative",
"description": "Remove a component instance and its connections after confirming the exact instance id, then refresh generated fallback Outcome behavior so it does not target the removed instance — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"instanceId": {
"type": "string"
},
"confirmInstanceId": {
"type": "string"
}
},
"required": [
"instanceId",
"confirmInstanceId"
]
}
}component.list_portsAnswer
List ports for a component instance (or catalog definition). Use componentId; instanceId is accepted as a compatibility alias. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "component.list_ports",
"kind": "answer",
"impl": "imperative",
"description": "List ports for a component instance (or catalog definition). Use componentId; instanceId is accepted as a compatibility alias. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"componentId": {
"type": "string",
"description": "Instance id or catalog definition id"
},
"instanceId": {
"type": "string",
"description": "Compatibility alias for componentId"
}
},
"anyOf": [
{
"required": [
"componentId"
]
},
{
"required": [
"instanceId"
]
}
]
}
}connection.connectAction
Connect two existing ports. Use instance IDs from component.add and port IDs from component.list_ports; source and target may be supplied in either direction and the graph will orient them. Typed domains, self-wiring, duplicates, and missing endpoints are rejected with structured repair details. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "connection.connect",
"kind": "act",
"impl": "imperative",
"description": "Connect two existing ports. Use instance IDs from component.add and port IDs from component.list_ports; source and target may be supplied in either direction and the graph will orient them. Typed domains, self-wiring, duplicates, and missing endpoints are rejected with structured repair details. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"sourceComponentId": {
"type": "string",
"minLength": 1,
"description": "Instance id returned by component.add"
},
"sourcePortId": {
"type": "string",
"minLength": 1,
"description": "Port id returned by component.list_ports"
},
"targetComponentId": {
"type": "string",
"minLength": 1,
"description": "Instance id returned by component.add"
},
"targetPortId": {
"type": "string",
"minLength": 1,
"description": "Port id returned by component.list_ports"
},
"source": {
"type": "object",
"description": "Compatibility shape: {componentId|instanceId, portId}",
"properties": {
"componentId": {
"type": "string"
},
"instanceId": {
"type": "string"
},
"portId": {
"type": "string"
}
},
"required": [
"portId"
]
},
"target": {
"type": "object",
"description": "Compatibility shape: {componentId|instanceId, portId}",
"properties": {
"componentId": {
"type": "string"
},
"instanceId": {
"type": "string"
},
"portId": {
"type": "string"
}
},
"required": [
"portId"
]
}
},
"anyOf": [
{
"required": [
"sourceComponentId",
"sourcePortId",
"targetComponentId",
"targetPortId"
]
},
{
"required": [
"source",
"target"
]
}
]
}
}connection.disconnectAction
Disconnect (remove) a connection after confirming its exact id — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "connection.disconnect",
"kind": "act",
"impl": "imperative",
"description": "Disconnect (remove) a connection after confirming its exact id — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"connectionId": {
"type": "string"
},
"confirmConnectionId": {
"type": "string"
}
},
"required": [
"connectionId",
"confirmConnectionId"
]
}
}connection.get_connectionsAnswer
Get all connections in current project — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "connection.get_connections",
"kind": "answer",
"impl": "imperative",
"description": "Get all connections in current project — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {}
}
}firmware.writeAction
Compatibility alias for code.write. expectedContentSha256=null may create source or replace only Schematic's marked generated starter scaffold; real existing source still requires its exact current hash. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "firmware.write",
"kind": "act",
"impl": "imperative",
"description": "Compatibility alias for code.write. expectedContentSha256=null may create source or replace only Schematic's marked generated starter scaffold; real existing source still requires its exact current hash. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"componentId": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Board instance id"
},
"files": {
"type": "array",
"minItems": 1,
"maxItems": 128,
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"maxLength": 240
},
"content": {
"type": "string",
"maxLength": 1048576
}
},
"required": [
"name",
"content"
],
"additionalProperties": false
}
},
"language": {
"type": "string",
"enum": [
"arduino",
"micropython",
"espidf",
"c",
"cpp",
"python"
]
},
"boardFqbn": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"expectedContentSha256": {
"anyOf": [
{
"type": "string",
"pattern": "^[0-9a-fA-F]{64}$"
},
{
"type": "null"
}
],
"description": "null to create source or replace only Schematic's marked generated starter scaffold; otherwise use the exact current hash from firmware.read/code.read"
}
},
"required": [
"componentId",
"files",
"expectedContentSha256"
],
"additionalProperties": false
}
}firmware.readAnswer
Compatibility alias for code.read. Read editable source metadata for a board; source is not executed. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "firmware.read",
"kind": "answer",
"impl": "imperative",
"description": "Compatibility alias for code.read. Read editable source metadata for a board; source is not executed. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"componentId": {
"type": "string",
"minLength": 1,
"maxLength": 200
}
},
"required": [
"componentId"
]
}
}firmware.checkAction
Run Schematic's bounded Browser Check for one board. It executes the supported Arduino/C++ subset and returns topology/protocol/serial/static diagnostics; it is not compilation, electrical simulation, upload, or physical verification. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "firmware.check",
"kind": "act",
"impl": "imperative",
"description": "Run Schematic's bounded Browser Check for one board. It executes the supported Arduino/C++ subset and returns topology/protocol/serial/static diagnostics; it is not compilation, electrical simulation, upload, or physical verification. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"componentId": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"durationMs": {
"type": "integer",
"minimum": 0,
"maximum": 10000,
"default": 1000
},
"inputs": {
"type": "object",
"maxProperties": 64,
"additionalProperties": {
"anyOf": [
{
"type": "number"
},
{
"type": "boolean"
}
]
}
}
},
"required": [
"componentId"
],
"additionalProperties": false
}
}validation.checkAction
Run static graph-rule validation for wiring and component constraints. Source is not read or executed, and physical wiring/hardware are not verified. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "validation.check",
"kind": "act",
"impl": "imperative",
"description": "Run static graph-rule validation for wiring and component constraints. Source is not read or executed, and physical wiring/hardware are not verified. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {}
}
}validation.explain_errorAction
Explain a static graph-check error code with fix guidance. Physical wiring, hardware behavior, and editable source remain unverified. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "validation.explain_error",
"kind": "act",
"impl": "imperative",
"description": "Explain a static graph-check error code with fix guidance. Physical wiring, hardware behavior, and editable source remain unverified. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"code": {
"type": "string",
"minLength": 1,
"maxLength": 200
}
},
"required": [
"code"
]
}
}shopping.searchAction
Discover electronics parts through the configured bounded shopping source when listings are omitted, then publish agent-attributed listings into the Parts desk after checking them. Discovery is cached and rate-limited; candidates never become offers automatically. Return the schematic.parts.lookup.v1 handoff to a browsing agent when publication is unavailable. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "shopping.search",
"kind": "act",
"impl": "imperative",
"description": "Discover electronics parts through the configured bounded shopping source when listings are omitted, then publish agent-attributed listings into the Parts desk after checking them. Discovery is cached and rate-limited; candidates never become offers automatically. Return the schematic.parts.lookup.v1 handoff to a browsing agent when publication is unavailable. — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 1,
"maxLength": 240,
"description": "Exact part, board, manufacturer, or catalog id"
},
"quantity": {
"type": "integer",
"minimum": 1,
"maximum": 999,
"description": "Required quantity"
},
"listings": {
"type": "array",
"minItems": 1,
"maxItems": 24,
"description": "Agent-found listings only; every item must identify one canonical catalog part and its reported offers.",
"items": {
"type": "object",
"required": [
"id",
"catalogId",
"title",
"partNumber",
"requestedQuantity",
"exactMatch",
"offers",
"updatedAt"
],
"properties": {
"id": {
"type": "string"
},
"catalogId": {
"type": "string",
"description": "Schematic catalog id; do not invent one"
},
"title": {
"type": "string"
},
"partNumber": {
"type": "string",
"description": "Manufacturer or distributor part number"
},
"requestedQuantity": {
"type": "integer",
"minimum": 1
},
"exactMatch": {
"const": true,
"description": "Agent's exact-match claim; the boundary does not independently verify real-world identity."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Recent time at which the agent refreshed this claimed catalog record."
},
"offers": {
"type": "array",
"minItems": 1,
"maxItems": 3,
"items": {
"type": "object",
"required": [
"id",
"retailer",
"title",
"price",
"currency",
"url",
"fetchedAt",
"provider"
],
"properties": {
"id": {
"type": "string"
},
"retailer": {
"type": "string"
},
"title": {
"type": "string"
},
"price": {
"anyOf": [
{
"type": "number",
"minimum": 0
},
{
"type": "null"
}
]
},
"currency": {
"type": "string",
"pattern": "^[A-Z]{3}$"
},
"url": {
"type": "string",
"format": "uri",
"description": "HTTPS retailer URL supplied by the agent; the UI does not verify the page."
},
"fetchedAt": {
"type": "string",
"format": "date-time",
"description": "Recent time at which the agent observed this offer."
},
"provider": {
"type": "string"
}
}
}
},
"alternatives": {
"type": "array",
"maxItems": 3,
"description": "Optional context-aware alternatives; publish each alternative as its own canonical catalog-ID claim too."
}
}
}
},
"publication": {
"type": "object",
"description": "Sourcing provenance supplied by the agent. Authentication and agent identity come from the verified WebMCP session, not from these fields. publishedAt must be recent.",
"properties": {
"provider": {
"type": "string",
"minLength": 1
},
"publishedAt": {
"type": "string",
"format": "date-time"
}
},
"required": [
"provider",
"publishedAt"
]
}
},
"description": "Omit listings/publication to run bounded public discovery and receive a handoff request. Include both to publish agent-attributed results."
}
}shopping.get_stateAnswer
Read agent-sourced part listings, cart lines, budget, and cheapest-price quote for the current build — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "shopping.get_state",
"kind": "answer",
"impl": "imperative",
"description": "Read agent-sourced part listings, cart lines, budget, and cheapest-price quote for the current build — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {}
}
}shopping.cart_addAction
Add an agent-published shopping result to the build cart — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "shopping.cart_add",
"kind": "act",
"impl": "imperative",
"description": "Add an agent-published shopping result to the build cart — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"resultId": {
"type": "string",
"maxLength": 160
},
"quantity": {
"type": "integer",
"minimum": 1,
"maximum": 999
}
},
"required": [
"resultId"
]
}
}shopping.cart_removeAction
Remove a part from the shopping cart — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "shopping.cart_remove",
"kind": "act",
"impl": "imperative",
"description": "Remove a part from the shopping cart — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"resultId": {
"type": "string",
"maxLength": 160
}
},
"required": [
"resultId"
]
}
}shopping.cart_set_quantityAction
Set the quantity for a shopping cart line, or remove it with zero — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "shopping.cart_set_quantity",
"kind": "act",
"impl": "imperative",
"description": "Set the quantity for a shopping cart line, or remove it with zero — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"resultId": {
"type": "string",
"maxLength": 160
},
"quantity": {
"type": "integer",
"minimum": 0,
"maximum": 999
}
},
"required": [
"resultId",
"quantity"
]
}
}shopping.cart_set_budgetAction
Set or clear the target build budget in USD — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "shopping.cart_set_budget",
"kind": "act",
"impl": "imperative",
"description": "Set or clear the target build budget in USD — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"budget": {
"type": [
"number",
"null"
],
"minimum": 0,
"maximum": 1000000000
}
},
"required": [
"budget"
]
}
}shopping.cart_undoAction
Undo the last cart change — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "shopping.cart_undo",
"kind": "act",
"impl": "imperative",
"description": "Undo the last cart change — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {}
}
}shopping.cart_resetAction
Reset the cart to one of every catalog part currently required by the project, after listings have been searched — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "shopping.cart_reset",
"kind": "act",
"impl": "imperative",
"description": "Reset the cart to one of every catalog part currently required by the project, after listings have been searched — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"requiredCatalogIds": {
"type": "array",
"maxItems": 500,
"items": {
"type": "string",
"maxLength": 120
}
}
}
}
}shopping.choose_alternativeAction
Replace a cart part with an agent-recommended context-aware alternative — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "shopping.choose_alternative",
"kind": "act",
"impl": "imperative",
"description": "Replace a cart part with an agent-recommended context-aware alternative — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {
"resultId": {
"type": "string",
"maxLength": 160
},
"catalogId": {
"type": "string",
"maxLength": 120
}
},
"required": [
"resultId",
"catalogId"
]
}
}shopping.quoteAction
Calculate the total using the cheapest priced agent-sourced offer per cart line and report missing prices or budget overage — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "shopping.quote",
"kind": "act",
"impl": "imperative",
"description": "Calculate the total using the cheapest priced agent-sourced offer per cart line and report missing prices or budget overage — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {}
}
}design.auto_layoutAction
Auto-layout components on canvas (simple grid) — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.
View tool JSON
{
"name": "design.auto_layout",
"kind": "act",
"impl": "imperative",
"description": "Auto-layout components on canvas (simple grid) — Scoped to your verified account and its local project room. Agent may place hardware on your behalf within your room only.",
"inputSchema": {
"type": "object",
"properties": {}
}
}