Tool tree
gradeNot graded
analyze_current_architectureAnswer
Read the complete live graph, positions, configuration, connections, cost, active-policy findings, resilience score, and architecture fingerprint. Call before modifying an unfamiliar architecture.
View tool JSON
{
"name": "analyze_current_architecture",
"kind": "answer",
"impl": "imperative",
"description": "Read the complete live graph, positions, configuration, connections, cost, active-policy findings, resilience score, and architecture fingerprint. Call before modifying an unfamiliar architecture.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {},
"additionalProperties": false
}
}get_active_policyAnswer
Read the exact user-selected architecture policy, including its preset, monthly budget, required regions, minimum replicas, and always-on safety checks. Call before validating or proposing policy-sensitive changes.
View tool JSON
{
"name": "get_active_policy",
"kind": "answer",
"impl": "imperative",
"description": "Read the exact user-selected architecture policy, including its preset, monthly budget, required regions, minimum replicas, and always-on safety checks. Call before validating or proposing policy-sensitive changes.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {},
"additionalProperties": false
}
}get_component_catalogAnswer
Read the complete supported semantic component vocabulary and defaults. Call before designing or expanding an architecture. Use these types exactly and never invent unsupported component types.
View tool JSON
{
"name": "get_component_catalog",
"kind": "answer",
"impl": "imperative",
"description": "Read the complete supported semantic component vocabulary and defaults. Call before designing or expanding an architecture. Use these types exactly and never invent unsupported component types.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {},
"additionalProperties": false
}
}get_selection_contextAnswer
Read the user's current node and connection selection. Call when the user says this, selected, these nodes, or refers to the current focus.
View tool JSON
{
"name": "get_selection_context",
"kind": "answer",
"impl": "imperative",
"description": "Read the user's current node and connection selection. Call when the user says this, selected, these nodes, or refers to the current focus.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {},
"additionalProperties": false
}
}validate_architectureAnswer
Deterministically validate the live architecture against budget, region, replica, connectivity, and failover policies without changing it.
View tool JSON
{
"name": "validate_architecture",
"kind": "answer",
"impl": "imperative",
"description": "Deterministically validate the live architecture against budget, region, replica, connectivity, and failover policies without changing it.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"max_monthly_cost_usdc": {
"type": "number",
"exclusiveMinimum": 0,
"maximum": 100000
},
"required_regions": {
"maxItems": 8,
"type": "array",
"items": {
"type": "string",
"minLength": 2,
"maxLength": 32
}
},
"minimum_replicas": {
"type": "integer",
"minimum": 1,
"maximum": 12
}
},
"additionalProperties": false
}
}add_infrastructure_nodeAction
Add exactly one supported semantic component from the shared catalog at deterministic coordinates. Never invent a type outside the schema. Analyze first to avoid overlap; for multi-step changes, prefer propose_architecture_plan.
View tool JSON
{
"name": "add_infrastructure_node",
"kind": "act",
"impl": "imperative",
"description": "Add exactly one supported semantic component from the shared catalog at deterministic coordinates. Never invent a type outside the schema. Analyze first to avoid overlap; for multi-step changes, prefer propose_architecture_plan.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"client",
"service",
"api-gateway",
"load-balancer",
"database",
"cache",
"storage",
"queue",
"external-system",
"auth-service",
"worker",
"group",
"note"
]
},
"x": {
"type": "number",
"minimum": -5000,
"maximum": 5000
},
"y": {
"type": "number",
"minimum": -5000,
"maximum": 5000
},
"config": {
"type": "object",
"properties": {
"region": {
"type": "string",
"minLength": 2,
"maxLength": 32
},
"size": {
"type": "string",
"minLength": 2,
"maxLength": 40
},
"replicas": {
"type": "integer",
"minimum": 1,
"maximum": 12
},
"env_vars": {
"type": "object",
"propertyNames": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"additionalProperties": {
"type": "string",
"maxLength": 500
}
},
"technology": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"description": {
"type": "string",
"maxLength": 500
},
"owner": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"environment": {
"type": "string",
"minLength": 1,
"maxLength": 40
},
"custom_properties": {
"type": "object",
"propertyNames": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"additionalProperties": {
"type": "string",
"maxLength": 500
}
},
"input_ports": {
"maxItems": 16,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 64
}
},
"output_ports": {
"maxItems": 16,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 64
}
},
"label": {
"type": "string",
"minLength": 1,
"maxLength": 64
}
},
"additionalProperties": false
}
},
"required": [
"type",
"x",
"y"
],
"additionalProperties": false
}
}move_nodeAction
Move one existing node to exact canvas coordinates. node_id accepts a permanent ID, short reference such as N4, or an unambiguous label.
View tool JSON
{
"name": "move_node",
"kind": "act",
"impl": "imperative",
"description": "Move one existing node to exact canvas coordinates. node_id accepts a permanent ID, short reference such as N4, or an unambiguous label.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"node_id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"x": {
"type": "number",
"minimum": -5000,
"maximum": 5000
},
"y": {
"type": "number",
"minimum": -5000,
"maximum": 5000
}
},
"required": [
"node_id",
"x",
"y"
],
"additionalProperties": false
}
}remove_nodeAction
Remove one existing node and all attached edges. node_id accepts an ID, short reference, or unambiguous label. This mutation is undoable.
View tool JSON
{
"name": "remove_node",
"kind": "act",
"impl": "imperative",
"description": "Remove one existing node and all attached edges. node_id accepts an ID, short reference, or unambiguous label. This mutation is undoable.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"node_id": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"required": [
"node_id"
],
"additionalProperties": false
}
}connect_nodesAction
Create a validated directional connection. Each endpoint accepts a permanent ID, short reference such as N4, or an unambiguous label.
View tool JSON
{
"name": "connect_nodes",
"kind": "act",
"impl": "imperative",
"description": "Create a validated directional connection. Each endpoint accepts a permanent ID, short reference such as N4, or an unambiguous label.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"source_id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"target_id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"connection_type": {
"type": "string",
"enum": [
"data",
"request",
"event",
"replication",
"dependency"
]
}
},
"required": [
"source_id",
"target_id",
"connection_type"
],
"additionalProperties": false
}
}disconnect_nodesAction
Remove one directional connection. Each endpoint accepts a permanent ID, short reference, or unambiguous label.
View tool JSON
{
"name": "disconnect_nodes",
"kind": "act",
"impl": "imperative",
"description": "Remove one directional connection. Each endpoint accepts a permanent ID, short reference, or unambiguous label.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"source_id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"target_id": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"required": [
"source_id",
"target_id"
],
"additionalProperties": false
}
}update_node_configAction
Update a node's common semantic metadata, label, technology, ownership, environment, ports, region, sizing, replicas, custom properties, and/or environment variables. node_id accepts an ID, short reference, or unambiguous label.
View tool JSON
{
"name": "update_node_config",
"kind": "act",
"impl": "imperative",
"description": "Update a node's common semantic metadata, label, technology, ownership, environment, ports, region, sizing, replicas, custom properties, and/or environment variables. node_id accepts an ID, short reference, or unambiguous label.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"node_id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"region": {
"type": "string",
"minLength": 2,
"maxLength": 32
},
"size": {
"type": "string",
"minLength": 2,
"maxLength": 40
},
"replicas": {
"type": "integer",
"minimum": 1,
"maximum": 12
},
"env_vars": {
"type": "object",
"propertyNames": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"additionalProperties": {
"type": "string",
"maxLength": 500
}
},
"technology": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"description": {
"type": "string",
"maxLength": 500
},
"owner": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"environment": {
"type": "string",
"minLength": 1,
"maxLength": 40
},
"custom_properties": {
"type": "object",
"propertyNames": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"additionalProperties": {
"type": "string",
"maxLength": 500
}
},
"input_ports": {
"maxItems": 16,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 64
}
},
"output_ports": {
"maxItems": 16,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 64
}
},
"label": {
"type": "string",
"minLength": 1,
"maxLength": 64
}
},
"required": [
"node_id"
],
"additionalProperties": false
}
}group_nodesAction
Create a system boundary around existing nodes. Boundaries cannot be nested. References accept permanent IDs, short references, or unambiguous labels.
View tool JSON
{
"name": "group_nodes",
"kind": "act",
"impl": "imperative",
"description": "Create a system boundary around existing nodes. Boundaries cannot be nested. References accept permanent IDs, short references, or unambiguous labels.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"node_ids": {
"minItems": 1,
"maxItems": 24,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"label": {
"default": "System Boundary",
"type": "string",
"minLength": 1,
"maxLength": 64
}
},
"required": [
"node_ids"
],
"additionalProperties": false
}
}set_group_membersAction
Replace the complete member list of an existing system boundary. Omitted previous members are safely detached, not deleted.
View tool JSON
{
"name": "set_group_members",
"kind": "act",
"impl": "imperative",
"description": "Replace the complete member list of an existing system boundary. Omitted previous members are safely detached, not deleted.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"group_id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"node_ids": {
"maxItems": 24,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
}
},
"required": [
"group_id",
"node_ids"
],
"additionalProperties": false
}
}set_group_collapsedAction
Collapse or expand a system boundary without deleting its members or connections.
View tool JSON
{
"name": "set_group_collapsed",
"kind": "act",
"impl": "imperative",
"description": "Collapse or expand a system boundary without deleting its members or connections.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"group_id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"collapsed": {
"type": "boolean"
}
},
"required": [
"group_id",
"collapsed"
],
"additionalProperties": false
}
}auto_layout_architectureAction
Arrange every live node into a deterministic layer- or region-based pattern and fit the canvas.
View tool JSON
{
"name": "auto_layout_architecture",
"kind": "act",
"impl": "imperative",
"description": "Arrange every live node into a deterministic layer- or region-based pattern and fit the canvas.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"direction": {
"default": "LR",
"type": "string",
"enum": [
"LR",
"TB"
]
},
"group_by": {
"default": "layer",
"type": "string",
"enum": [
"layer",
"region"
]
}
},
"additionalProperties": false
}
}simulate_region_outageAction
Start or recover a regional outage. Affected nodes and traffic paths are highlighted without provisioning anything.
View tool JSON
{
"name": "simulate_region_outage",
"kind": "act",
"impl": "imperative",
"description": "Start or recover a regional outage. Affected nodes and traffic paths are highlighted without provisioning anything.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"region": {
"type": "string",
"minLength": 2,
"maxLength": 32
},
"mode": {
"default": "start",
"type": "string",
"enum": [
"start",
"recover"
]
}
},
"required": [
"region"
],
"additionalProperties": false
}
}undo_last_changeAction
Revert the most recent canvas mutation as one atomic action.
View tool JSON
{
"name": "undo_last_change",
"kind": "act",
"impl": "imperative",
"description": "Revert the most recent canvas mutation as one atomic action.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {},
"additionalProperties": false
}
}redo_last_changeAction
Replay the most recently undone human or agent mutation as one atomic action.
View tool JSON
{
"name": "redo_last_change",
"kind": "act",
"impl": "imperative",
"description": "Replay the most recently undone human or agent mutation as one atomic action.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {},
"additionalProperties": false
}
}propose_architecture_planAction
Preview a strict multi-operation architecture plan with a cost diff. The human must approve the in-page proposal before changes apply atomically.
View tool JSON
{
"name": "propose_architecture_plan",
"kind": "act",
"impl": "imperative",
"description": "Preview a strict multi-operation architecture plan with a cost diff. The human must approve the in-page proposal before changes apply atomically.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"summary": {
"type": "string",
"minLength": 8,
"maxLength": 240
},
"max_monthly_cost_usdc": {
"type": "number",
"exclusiveMinimum": 0,
"maximum": 100000
},
"operations": {
"minItems": 1,
"maxItems": 24,
"type": "array",
"items": {
"oneOf": [
{
"type": "object",
"properties": {
"action": {
"type": "string",
"const": "add_node"
},
"ref": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"type": {
"type": "string",
"enum": [
"client",
"service",
"api-gateway",
"load-balancer",
"database",
"cache",
"storage",
"queue",
"external-system",
"auth-service",
"worker",
"group",
"note"
]
},
"x": {
"type": "number",
"minimum": -5000,
"maximum": 5000
},
"y": {
"type": "number",
"minimum": -5000,
"maximum": 5000
},
"config": {
"type": "object",
"properties": {
"region": {
"type": "string",
"minLength": 2,
"maxLength": 32
},
"size": {
"type": "string",
"minLength": 2,
"maxLength": 40
},
"replicas": {
"type": "integer",
"minimum": 1,
"maximum": 12
},
"env_vars": {
"type": "object",
"propertyNames": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"additionalProperties": {
"type": "string",
"maxLength": 500
}
},
"technology": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"description": {
"type": "string",
"maxLength": 500
},
"owner": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"environment": {
"type": "string",
"minLength": 1,
"maxLength": 40
},
"custom_properties": {
"type": "object",
"propertyNames": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"additionalProperties": {
"type": "string",
"maxLength": 500
}
},
"input_ports": {
"maxItems": 16,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 64
}
},
"output_ports": {
"maxItems": 16,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 64
}
},
"label": {
"type": "string",
"minLength": 1,
"maxLength": 64
}
},
"additionalProperties": false
}
},
"required": [
"action",
"ref",
"type",
"x",
"y"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"action": {
"type": "string",
"const": "move_node"
},
"node_id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"x": {
"type": "number",
"minimum": -5000,
"maximum": 5000
},
"y": {
"type": "number",
"minimum": -5000,
"maximum": 5000
}
},
"required": [
"action",
"node_id",
"x",
"y"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"action": {
"type": "string",
"const": "remove_node"
},
"node_id": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"required": [
"action",
"node_id"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"action": {
"type": "string",
"const": "connect_nodes"
},
"source_ref": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"target_ref": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"connection_type": {
"type": "string",
"enum": [
"data",
"request",
"event",
"replication",
"dependency"
]
}
},
"required": [
"action",
"source_ref",
"target_ref",
"connection_type"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"action": {
"type": "string",
"const": "disconnect_nodes"
},
"source_id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"target_id": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"required": [
"action",
"source_id",
"target_id"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"action": {
"type": "string",
"const": "update_node"
},
"node_id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"config": {
"type": "object",
"properties": {
"region": {
"type": "string",
"minLength": 2,
"maxLength": 32
},
"size": {
"type": "string",
"minLength": 2,
"maxLength": 40
},
"replicas": {
"type": "integer",
"minimum": 1,
"maximum": 12
},
"env_vars": {
"type": "object",
"propertyNames": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"additionalProperties": {
"type": "string",
"maxLength": 500
}
},
"technology": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"description": {
"type": "string",
"maxLength": 500
},
"owner": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"environment": {
"type": "string",
"minLength": 1,
"maxLength": 40
},
"custom_properties": {
"type": "object",
"propertyNames": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"additionalProperties": {
"type": "string",
"maxLength": 500
}
},
"input_ports": {
"maxItems": 16,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 64
}
},
"output_ports": {
"maxItems": 16,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 64
}
},
"label": {
"type": "string",
"minLength": 1,
"maxLength": 64
}
},
"additionalProperties": false
}
},
"required": [
"action",
"node_id",
"config"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"action": {
"type": "string",
"const": "group_nodes"
},
"ref": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"label": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"node_refs": {
"minItems": 1,
"maxItems": 24,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
}
},
"required": [
"action",
"ref",
"label",
"node_refs"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"action": {
"type": "string",
"const": "set_group_members"
},
"group_ref": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"node_refs": {
"maxItems": 24,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
}
},
"required": [
"action",
"group_ref",
"node_refs"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"action": {
"type": "string",
"const": "set_group_collapsed"
},
"group_ref": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"collapsed": {
"type": "boolean"
}
},
"required": [
"action",
"group_ref",
"collapsed"
],
"additionalProperties": false
}
]
}
}
},
"required": [
"summary",
"operations"
],
"additionalProperties": false
}
}provision_and_paySensitive Action
Verify the supplied total and optional architecture hash against the live graph, request human approval, then mock-settle via x402.
View tool JSON
{
"name": "provision_and_pay",
"kind": "transact",
"impl": "imperative",
"description": "Verify the supplied total and optional architecture hash against the live graph, request human approval, then mock-settle via x402.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"total_cost_usdc": {
"type": "number",
"exclusiveMinimum": 0,
"maximum": 100000
},
"architecture_hash": {
"type": "string",
"minLength": 8,
"maxLength": 64
}
},
"required": [
"total_cost_usdc"
],
"additionalProperties": false
}
}