Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.cloud.red/llms.txt

Use this file to discover all available pages before exploring further.

All tools are accessible via crcli mcp. The AI assistant discovers them automatically on connect β€” no manual configuration required.
Every tool returns a JSON object. The AI uses the returned data to answer follow-up questions without additional calls.

πŸ” Identity & Context

Get the authenticated caller’s identity and active account scope.Returns is_admin (bool), account_id (UUID), and user_id (UUID).No parameters. Call this first to confirm which account is in scope.
Set the active tenant for all subsequent tool calls.
ParameterTypeDescription
tenantstringTenant name (e.g. acmecorp). Empty string clears the context.
Injected by crcli β€” not a server-side tool. Only available when connecting via crcli mcp.

πŸ‘₯ Accounts

These tools are admin-only and not available to customer accounts.
List all active accounts.Returns uuid, tenant (name), and display_name for each account. Use the uuid with account_id parameters on other tools to scope calls to a specific tenant.No parameters.

πŸ–₯️ Device Groups

List operational device groups for an account.Returns uuid, name, agent, account, platform, and status for each group. Only returns groups in an online, non-pending state.
ParameterTypeRequiredDescription
account_idstringWhen no account context is setAccount UUID
Get full details for a single device group.Returns uuid, name, agent, account, platform, status, and credential state (locked, rotated).
ParameterTypeRequiredDescription
group_idstringβœ“Device group UUID
List all devices that belong to a device group.Returns uuid, name, management_ip, platform, account, device_group, agent, and state (software version + HA status). Use state.status to identify active vs standby before running scripts.
ParameterTypeRequiredDescription
group_idstringβœ“Device group UUID

πŸ“Ÿ Devices

List all online devices for an account.Returns uuid, name, management_ip, platform, account, device_group, agent, and state.
ParameterTypeRequiredDescription
account_idstringWhen no account context is setAccount UUID
Get full details for a single device, including software version and HA status (active / standby / standalone).
ParameterTypeRequiredDescription
device_idstringβœ“Device UUID
List UCS backups for a device in reverse-chronological order.Returns uuid, filename, status, and created_at for each backup.
ParameterTypeRequiredDescription
device_idstringβœ“Device UUID
limitnumberMax results, 1–1000 (default: 25)
statusstringFilter: complete, error, or running
List the metric catalog for a device’s platform (BIG-IP or F5OS).Returns metric names, descriptions, and units. Use the names with pull_device_metric or query_device_metrics.
ParameterTypeRequiredDescription
device_idstringβœ“Device UUID
Pull a single metric time series from a device. Defaults to the last hour.
ParameterTypeRequiredDescription
device_idstringβœ“Device UUID
metric_namestringβœ“Metric name from list_device_metrics
startstringRFC3339 start time
endstringRFC3339 end time (default: now)
Use query_device_metrics to fetch multiple metrics in a single request.
Fetch multiple metrics for a device in a single ClickHouse request. More efficient than multiple pull_device_metric calls.
ParameterTypeRequiredDescription
device_idstringβœ“Device UUID
metric_namesarrayβœ“Raw ClickHouse metric names (max 100)
startstringRFC3339 start time
endstringRFC3339 end time (default: now)

βš™οΈ Orchestration

Orchestration tools require Write permission on the target device group.
Run a script on a single device via SSH and return the output.
ParameterTypeRequiredDescription
device_idstringβœ“Device UUID
scriptstringβœ“Script content to execute
interpreterstringbash (default), python, node, tclsh
Run a script on all devices in a group and return per-device output.
ParameterTypeRequiredDescription
group_idstringβœ“Device group UUID
scriptstringβœ“Script content to execute
interpreterstringbash (default), python, node, tclsh
allbooleanIf true, target all devices; default targets active device only
Upload a file to a device via SCP.
ParameterTypeRequiredDescription
device_idstringβœ“Device UUID
pathstringβœ“Remote destination path
contentstringβœ“File content (plain text or base64)
encodingstringplain (default) or base64
Upload a file to all devices in a group via SCP in parallel.
ParameterTypeRequiredDescription
group_idstringβœ“Device group UUID
pathstringβœ“Remote destination path
contentstringβœ“File content (plain text or base64)
encodingstringplain (default) or base64
Download a file from a device via SCP.Returns file content as base64 (max 512 KB).
ParameterTypeRequiredDescription
device_idstringβœ“Device UUID
pathstringβœ“Remote file path

πŸ”Œ iControl REST

iControl REST tools require Write permission on the target device group. Always call delete_icontrol_session when done.
Authenticate to a device’s iControl REST API via the tunnel and return a session token.
ParameterTypeRequiredDescription
device_idstringβœ“Device UUID
Returns session_id β€” pass this to icontrol_request and delete_icontrol_session.
Make an iControl REST API request to a device directly via the tunnel.
ParameterTypeRequiredDescription
session_idstringβœ“Session token from create_icontrol_session
methodstringβœ“HTTP method: GET, POST, PUT, PATCH, DELETE
pathstringβœ“iControl REST path (e.g. /mgmt/tm/ltm/virtual)
bodyobjectRequest body for POST/PUT/PATCH
Invalidate an iControl session before it expires.Call this when done with icontrol_request to avoid leaving live credentials cached on the server.
ParameterTypeRequiredDescription
session_idstringβœ“Session token to invalidate

Log search tools are only available when log search is configured for your account.
The AI follows a mandatory workflow when answering log-related questions:
1

list_logtypes

Discover available log sources
2

get_schema

Learn the table structure and query rules
3

get_logtype_doc

Get field names and value shapes for the target log type
4

query_logs

Execute the SQL query β€” each response includes a query_id
5

submit_session

Record the investigation β€” called exactly once after answering
List all available F5 log types.Returns namespace, name, source, and description for each type.No parameters. Call this first to discover which log types exist before writing queries.
Get the ClickHouse logs table schema, column reference, mandatory filter rules, time-window guidance, and common query patterns.No parameters. Read this before writing any SQL query.
Get the field reference documentation for a specific log type β€” all LogAttributes keys, ResourceAttributes keys, SeverityText vocabulary, gotchas, and example queries.
ParameterTypeRequiredDescription
namespacestringβœ“Log type namespace (e.g. f5logs)
namestringβœ“Log type name (e.g. f5.bigip.syslog)
Discover which LogAttribute keys are present in your account’s data for a log type, ranked by frequency over the past 7 days.
ParameterTypeRequiredDescription
namespacestringβœ“Log type namespace
namestringβœ“Log type name
account_idstringAccount UUID (required when no account context is set)
Fetch a small sample of recent log rows for a given log type, in descending timestamp order.
ParameterTypeRequiredDescription
namespacestringβœ“Log type namespace
namestringβœ“Log type name
account_idstringAccount UUID (required when no account context is set)
limitnumberRows to return (1–50, default: 5)
Execute a ClickHouse SELECT query against the F5 logs table.Returns rows as JSON with context.query_id β€” the AI records every query_id for submit_session.Rules enforced server-side: ServiceNamespace filter required, ServiceName filter required, bounded Timestamp window required, LIMIT required (max 10 000).
ParameterTypeRequiredDescription
sqlstringβœ“A single SELECT statement targeting logs_001
account_idstringAccount UUID (required when no account context is set)
Record the completed log-search investigation for telemetry and quality improvement.Called exactly once after the AI answers (or fails to answer) a log-related question. Must include every query_id received from query_logs, sample_logs, or get_log_keys.
ParameterTypeRequiredDescription
askstringβœ“The user’s original question
intentstringβœ“Classified intent (e.g. troubleshoot, audit, count)
outcomestringβœ“answered, partial, or unanswered
summarystringβœ“One-sentence answer or reason it could not be answered
queriesarrayArray of {query_id, description} objects

πŸ€– Agents

Admin-only. Not available to customer accounts.
List tunnel agents registered to an account.Returns uuid, name, and account for each online agent. Agents are the network proxies that relay SSH and iControl traffic to device groups.
ParameterTypeRequiredDescription
account_idstringWhen no account context is setAccount UUID