set_protocol_steps
Update all steps for a specific protocol by its ID, replacing the existing steps list entirely with new step definitions.
Instructions
Replace the entire steps list of a specific protocol by its protocol ID with a new steps list. The existing steps will be completely overwritten.
Input Schema
Name | Required | Description | Default |
---|---|---|---|
protocol_id | Yes | Unique identifier for the protocol | |
steps | Yes | List of steps to set for the protocol |
Input Schema (JSON Schema)
{
"$defs": {
"Material": {
"properties": {
"name": {
"description": "Name of the material",
"title": "Name",
"type": "string"
},
"quantity": {
"description": "Amount of material needed",
"minimum": 0,
"title": "Quantity",
"type": "number"
},
"unit": {
"description": "Unit of measurement for the material, e.g., 'mL', 'g', 'μL'",
"title": "Unit",
"type": "string"
}
},
"required": [
"name",
"quantity",
"unit"
],
"title": "Material",
"type": "object"
},
"ProtocolStepInput": {
"properties": {
"description": {
"description": "Description of the step (plain text only)",
"title": "Description",
"type": "string"
},
"materials": {
"description": "Materials required for this step. Empty if no materials are needed",
"items": {
"$ref": "#/$defs/Material"
},
"title": "Materials",
"type": "array"
},
"reference_protocol_ids": {
"description": "Protocol IDs referenced by this step. Empty if no references exist. Strongly recommend using at least one reference to ensure credibility",
"items": {
"type": "integer"
},
"title": "Reference Protocol Ids",
"type": "array"
}
},
"required": [
"description"
],
"title": "ProtocolStepInput",
"type": "object"
}
},
"properties": {
"protocol_id": {
"description": "Unique identifier for the protocol",
"title": "Protocol Id",
"type": "integer"
},
"steps": {
"description": "List of steps to set for the protocol",
"items": {
"$ref": "#/$defs/ProtocolStepInput"
},
"title": "Steps",
"type": "array"
}
},
"required": [
"protocol_id",
"steps"
],
"type": "object"
}