Retrieves saved video clips from the Rhombus system. Saved clips can be viewed for up to 2 years and are typically found in the "Clips" tab of the "Saved Video" section of the Rhombus Console. Clips are either manually saved by the user, or automatically by some defined policy. Therefore, this to...
Risk signalsHigh parameter count (10 properties)
Part of the Rhombus Node server.
Free to start. No card required.
AI agents invoke clips-tool to trigger processes or run actions in Rhombus Node. Execute operations can have side effects beyond the immediate call -- triggering builds, sending notifications, or starting workflows. Rate limits and argument validation are essential to prevent runaway execution.
clips-tool can trigger processes with real-world consequences. An uncontrolled agent might start dozens of builds, send mass notifications, or kick off expensive compute jobs. PolicyLayer enforces rate limits and validates arguments to keep execution within safe bounds.
Execute tools trigger processes. Rate-limit and validate arguments to prevent unintended side effects.
{
"version": "1",
"default": "deny",
"tools": {
"clips-tool": {
"limits": [
{
"counter": "clips-tool_rate",
"window": "minute",
"max": 10,
"scope": "grant"
}
]
}
}
} See the full Rhombus Node policy for all 31 tools.
These attack patterns abuse exactly the kind of access clips-tool gives an agent. Each links to the full case and the policy that stops it:
Other execute tools across the catalogue. The same approach applies to each: rate-limit and validate the arguments.
Retrieves saved video clips from the Rhombus system. Saved clips can be viewed for up to 2 years and are typically found in the "Clips" tab of the "Saved Video" section of the Rhombus Console. Clips are either manually saved by the user, or automatically by some defined policy. Therefore, this tool is not for looking up the events that have occured. This tool allows you to: * Get saved clips or clips expiring soon (filter by devices, locations, search string, time range). * Get all shared live video streams for the organization. * Get all timelapse clips for the organization. Filter options (for saved and expiringSoon only): * Specific devices using their UUIDs (deviceUuidFilters). * Specific locations using their UUIDs (locationUuidFilters). * A simple string search on clip names (searchFilter). * A time range: start (timestampISOAfter) and/or end (timestampISOBefore) timestamp in ISO 8601 format. The tool returns a JSON object with the following structure and important fields: * errorMsg (string | null): An error message if the request failed. * objecterror (boolean | null): Indicates if an object-level error occurred. * pageToken (string | null): A token to be supplied on the next search request to get the next page of results. If this token is null, there is no more data available. * savedClips (array of objects | null): An array where each object represents a saved video clip. Each clip object contains the following important fields: * uuid (string): The unique identifier for the video clip. * title (string): The name given to the video clip. * description (string | null): An optional description for the clip. * timestampMs (int64): The start time of the video clip in milliseconds since epoch. * createdAtMs (int64): The creation timestamp of the clip in milliseconds since epoch. * createdAtTimestamp (string): The creation timestamp of the clip in ISO 8601 format. * deviceUuid (string): The UUID of the primary device (e.g., camera) that recorded the clip. * deviceUuids (array of strings or null): A list of UUIDs for all devices associated with the clip. * durationSec (int32): The length of the video clip in seconds. * status (string): The current processing status of the clip, with possible values such as INITIATING, UPLOADING, RENDERING, FAILED, COMPLETE, OFFLINE, or UNKNOWN. * userUuid (string | null): The UUID of the user associated with the clip, if applicable. * sourceAlertUuid (string | null): The UUID of the alert that triggered the creation of this clip, if any. * sharedLiveVideoStreams (array): When requestType is sharedLiveStreams, list of shared live video stream objects. * timelapseClips (array): When requestType is timelapseClips, list of timelapse clip objects. 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.. It is categorised as a Execute tool in the Rhombus Node MCP Server, which means it can trigger actions or run processes. Use rate limits and argument validation.
Register the Rhombus Node MCP server in PolicyLayer and add a rule for clips-tool: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches Rhombus Node. Nothing to install.
clips-tool is a Execute tool with high risk. Execute tools should be rate-limited and have argument validation enabled.
Yes. Add a rate_limit block to the clips-tool rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.
Set action: deny in the PolicyLayer policy for clips-tool. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.
clips-tool is provided by the Rhombus Node MCP server (rhombus-node-mcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
Deterministic rules across all 31 Rhombus Node tools. Per-identity grants. Full audit log. Live in minutes. Nothing to install.
Free to start. No card required.
4,600+ MCP servers and 31,000+ tools scanned and risk-classified.