Tools Reference¶
The F5XC API MCP Server exposes 1,548 API tools across 38 domains through a dynamic discovery architecture that reduces token consumption by 95%+.
Dynamic Discovery Architecture
Instead of loading all tools upfront (~535K tokens), the server uses 13 meta-tools that load schemas on-demand. Initial cost: ~500 tokens. Per-tool cost: ~375 tokens.
Discovery Workflow¶
mermaid flowchart LR A[User Query] --> B[search-tools] B --> C[Tool Results] C --> D[describe-tool] D --> E[Full Schema] E --> F[execute-tool] F --> G[API Response]
Meta-Tools¶
These 13 meta-tools are always available and provide access to all 1,548 API operations.
f5xc-api-configure-auth¶
Configure F5XC API authentication. Check status, save credentials, list profiles, or switch active profile.
| Parameter | Type | Required | Description |
|---|---|---|---|
action | string | No | Action: status, configure, list-profiles, set-active (default: status) |
tenantUrl | string | No | F5XC tenant URL (required for configure) |
apiToken | string | No | API token (required for configure) |
profileName | string | No | Profile name (default: default) |
Example - Check Status:
Response (unauthenticated):
{
"authenticated": false,
"mode": "documentation",
"message": "No credentials configured. Use action='configure' with tenantUrl and apiToken to authenticate."
}
Example - Configure Credentials:
{
"action": "configure",
"tenantUrl": "https://tenant.console.ves.volterra.io",
"apiToken": "your-api-token",
"profileName": "production"
}
Response:
{
"success": true,
"profileName": "production",
"message": "Credentials saved to profile 'production' and set as active. API execution is now enabled."
}
f5xc-api-server-info¶
Get server status, authentication state, and capabilities.
| Parameter | Type | Required | Description |
|---|---|---|---|
| (none) | - | - | No parameters required |
Example Response:
{
"server": "f5xc-api-mcp",
"version": "1.0.0",
"mode": "execution",
"authenticated": true,
"domains": ["waap", "dns", "core", "network", "site", "security", "appstack"],
"totalTools": 1426
}
f5xc-api-search-tools¶
Search for API tools using natural language queries.
| Parameter | Type | Required | Description |
|---|---|---|---|
query | string | Yes | Natural language query (e.g., "create load balancer") |
limit | number | No | Max results (default: 10, max: 50) |
domains | array | No | Filter by domain(s): waap, dns, core, network, site, security, appstack |
operations | array | No | Filter by operation(s): create, get, list, update, delete |
Example:
f5xc-api-describe-tool¶
Get full schema and documentation for a specific tool.
| Parameter | Type | Required | Description |
|---|---|---|---|
toolName | string | Yes | Exact tool name (e.g., f5xc-api-waap-http-loadbalancer-create) |
Find Tool Names First
Use f5xc-api-search-tools to discover tool names before calling describe.
Response includes:
- Full parameter schema with types and validation
- Request body JSON schema
- CURL command examples
- Prerequisites and dependencies
f5xc-api-execute-tool¶
Execute a discovered API tool.
| Parameter | Type | Required | Description |
|---|---|---|---|
toolName | string | Yes | The exact tool name to execute |
pathParams | object | No | Path parameters (e.g., { namespace: "default", name: "example-lb" }) |
queryParams | object | No | Query parameters for the request |
body | object | No | Request body for POST/PUT/PATCH operations |
Behavior:
- Authenticated mode: Executes API call against your F5XC tenant
- Documentation mode: Returns CLI commands and curl examples
f5xc-api-search-resources¶
Search for consolidated resources (more efficient than tool search).
Resource Consolidation
Resources combine related CRUD tools. One result per resource instead of 5 separate tools.
| Parameter | Type | Required | Description |
|---|---|---|---|
query | string | Yes | Natural language query |
limit | number | No | Max results (default: 10) |
domains | array | No | Filter by domain(s) |
Example:
Response shows available operations:
{
"resourceName": "f5xc-api-waap-origin-pool",
"operations": ["create", "get", "list", "update", "delete"]
}
f5xc-api-execute-resource¶
Execute a CRUD operation on a consolidated resource.
| Parameter | Type | Required | Description |
|---|---|---|---|
resourceName | string | Yes | Resource name (e.g., f5xc-api-waap-http-loadbalancer) |
operation | string | Yes | Operation: create, get, list, update, delete |
pathParams | object | No | Path parameters |
queryParams | object | No | Query parameters |
body | object | No | Request body |
f5xc-api-dependencies¶
Get dependency information for F5XC resources including prerequisites, dependents, and oneOf constraints.
| Parameter | Type | Required | Description |
|---|---|---|---|
resource | string | Yes | Resource name (e.g., http-loadbalancer) |
domain | string | Yes | Domain containing the resource (e.g., virtual) |
action | string | No | Type of info: prerequisites, dependents, oneOf, subscriptions, creationOrder, full (default: full) |
f5xc-api-dependency-stats¶
Get statistics about the F5XC resource dependency graph.
| Parameter | Type | Required | Description |
|---|---|---|---|
| (none) | - | - | No parameters required |
Example Response:
{
"totalResources": 285,
"totalDependencies": 142,
"availableAddons": ["bot-defense", "api-discovery"]
}
f5xc-api-validate-params¶
Validate parameters for an F5XC API tool before execution.
| Parameter | Type | Required | Description |
|---|---|---|---|
toolName | string | Yes | Tool name to validate parameters for |
pathParams | object | No | Path parameters to validate |
queryParams | object | No | Query parameters to validate |
body | object | No | Request body to validate |
f5xc-api-resolve-dependencies¶
Generate a complete creation plan for an F5XC resource with all transitive dependencies.
| Parameter | Type | Required | Description |
|---|---|---|---|
resource | string | Yes | Target resource to create |
domain | string | Yes | Domain containing the resource |
existingResources | array | No | Resources that already exist (will be skipped) |
includeOptional | boolean | No | Include optional dependencies (default: false) |
expandAlternatives | boolean | No | Include alternative paths for oneOf choices (default: false) |
maxDepth | number | No | Maximum dependency traversal depth (default: 10) |
f5xc-api-estimate-cost¶
Estimate token usage and latency for F5XC API tool calls.
| Parameter | Type | Required | Description |
|---|---|---|---|
toolName | string | No | Single tool name to estimate |
toolNames | array | No | Multiple tool names to estimate |
plan | object | No | CreationPlan object to estimate |
detailed | boolean | No | Include detailed breakdown (default: true) |
f5xc-api-best-practices¶
Get domain-specific best practices for F5XC API operations.
| Parameter | Type | Required | Description |
|---|---|---|---|
domain | string | No | Domain to get best practices for |
aspect | string | No | Specific aspect: errors, workflows, danger, security, performance, all (default: all) |
detailed | boolean | No | Include detailed breakdowns (default: true) |
Tool Naming Convention¶
Examples:
f5xc-api-waap-http-loadbalancer-createf5xc-api-dns-dns-zone-listf5xc-api-core-namespace-get
Domains¶
WAAP (Web App & API Protection)¶
| Resource | Operations |
|---|---|
| HTTP Load Balancer | create, get, list, update, delete |
| Origin Pool | create, get, list, update, delete |
| App Firewall | create, get, list, update, delete |
| Rate Limiter | create, get, list, update, delete |
| Service Policy | create, get, list, update, delete |
DNS¶
| Resource | Operations |
|---|---|
| DNS Zone | create, get, list, update, delete |
| DNS Load Balancer | create, get, list, update, delete |
| DNS LB Pool | create, get, list, update, delete |
Network¶
| Resource | Operations |
|---|---|
| Network Connector | create, get, list, update, delete |
| Network Firewall | create, get, list, update, delete |
| Enhanced Firewall Policy | create, get, list, update, delete |
Site¶
| Resource | Operations |
|---|---|
| AWS VPC Site | create, get, list, update, delete |
| Azure VNet Site | create, get, list, update, delete |
| GCP VPC Site | create, get, list, update, delete |
| Customer Edge | create, get, list, update, delete |
AppStack¶
| Resource | Operations |
|---|---|
| K8s Cluster | create, get, list, update, delete |
| Virtual K8s | create, get, list, update, delete |
| Workload | create, get, list, update, delete |
Security¶
| Resource | Operations |
|---|---|
| Malicious User Detection | create, get, list, update, delete |
| Bot Defense | create, get, list, update, delete |
| API Discovery | create, get, list, update, delete |
Core¶
| Resource | Operations |
|---|---|
| Namespace | create, get, list, update, delete |
| Certificate | create, get, list, update, delete |
| Cloud Credentials | create, get, list, update, delete |
| Secret | create, get, list, update, delete |
Response Formats¶
Documentation Mode (Unauthenticated)¶
When credentials are not configured, tools return documentation:
{
"mode": "documentation",
"tool": "f5xc-api-waap-http-loadbalancer-create",
"description": "Creates an HTTP Load Balancer",
"parameters": {},
"curlCommand": "curl -X POST https://TENANT.console.ves.volterra.io/... -d @lb.json",
"prerequisites": ["namespace must exist", "origin_pool required"],
"subscription_tier": "STANDARD"
}
Execution Mode (Authenticated)¶
When credentials are configured, tools execute API calls:
{
"mode": "execution",
"tool": "f5xc-api-waap-http-loadbalancer-create",
"status": "success",
"response": {},
"resource_url": "https://tenant.console.ves.volterra.io/..."
}
Prompts¶
Pre-built workflow prompts for common multi-step operations.
deploy-http-loadbalancer¶
Deploy a complete HTTP Load Balancer with origin pool.
| Argument | Required | Description |
|---|---|---|
| namespace | Yes | Target namespace |
| name | Yes | Load balancer name |
| domain | Yes | Domain name (e.g., app.example.com) |
| backend_ip | Yes | Backend server IP |
| backend_port | No | Backend port (default: 80) |
| enable_waf | No | Enable WAF (default: false) |
configure-waf¶
Configure Web Application Firewall protection.
| Argument | Required | Description |
|---|---|---|
| namespace | Yes | Target namespace |
| name | Yes | WAF policy name |
| loadbalancer | Yes | HTTP Load Balancer to protect |
| mode | No | blocking or monitoring (default: blocking) |
create-multicloud-site¶
Deploy an F5XC site in AWS, Azure, or GCP.
| Argument | Required | Description |
|---|---|---|
| namespace | Yes | Target namespace |
| name | Yes | Site name |
| cloud | Yes | aws, azure, or gcp |
| region | Yes | Cloud region |
| vpc_id | Yes | VPC/VNet ID |
Subscription Tiers¶
Tier Requirements
Some resources require specific F5XC subscription tiers.
| Tier | Resources |
|---|---|
| NO_TIER | namespace, certificate, secret, cloud_credentials |
| STANDARD | http_loadbalancer, origin_pool, dns_zone, health_check |
| ADVANCED | app_firewall, bot_defense, api_discovery, malicious_user_detection |
Next Steps¶
- HTTP Load Balancer - Detailed load balancer documentation
- Origin Pool - Backend pool configuration
- App Firewall - WAF configuration