create-camera-policy-tool
Create a camera policy by defining its name, description, and organization, then configuring schedules and assigning cameras in a guided multi-step process.
Instructions
A tool for creating a camera policy that walks users through a multi-step process.
The step begins with the user providing a policy name, description, and organization UUID. Then, the user is presented with a form to configure the schedules for the policy. Finally, the user is presented with a form to assign the policy to cameras.
Uses elicitation forms for rich user interaction.
Output filtering (all tools):
includeFields(string[]): Dot-notation paths to keep in the response (e.g."vehicleEvents.vehicleLicensePlate"). Omit to return all fields.filterBy(array): Predicates to filter array items. Each entry:{field, op, value}where op is one of= != > >= < <= contains. All conditions are ANDed. Example:[{field:"vehicleLicensePlate", op:"=", value:"ABC123"}]WARNING: some tool responses exceed 400k characters — use these params to request only the data you need.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Policy name (for creating policy) | |
| description | Yes | Policy description (for creating policy) | |
| orgUuid | Yes | Organization UUID (for creating policy) | |
| policyUuid | Yes | Policy UUID (for configuring schedules) | |
| scheduleConfigs | Yes | JSON string of schedule configurations | |
| cameraUuids | Yes | Comma-separated camera UUIDs to assign policy to | |
| policyName | Yes | Policy name (for reference) | |
| includeFields | Yes | Dot-notation field paths to include in the response (e.g. "vehicleEvents.vehicleLicensePlate"). Pass null to return all fields. WARNING: some responses can exceed 400k characters — use includeFields to request only the data you need. For high-volume tools this may be required to get a complete answer. | |
| filterBy | Yes | Filter array items in the response by field values. All conditions are ANDed. Example: [{field: "vehicleLicensePlate", op: "=", value: "ABC123"}, {field: "confidence", op: ">", value: 0.8}] Use alongside includeFields to get only the specific records and fields you need. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| needUserInput | No | ||
| message | No | The message for this stage in the policy creation process. This message will be displayed to the user. | |
| requestType | No | The type of form to display to the user as the next step in the policy creation process | |
| submitAction | No | The action to take when the user completes the form, corresponds to the tool name to interact with next | |
| policyUuid | No | The UUID of the policy that was created during this workflow | |
| policyName | No | The name of the policy that was created during this workflow | |
| scheduleData | No | The schedules that were created during this workflow, can be null or undefined if user has not created them yet with schedule-trigger-configuration |