{"apiVersion":"v1","directorySlug":"xcdemo-mcp-a342536c36","title":"Xcdemo","description":null,"pageUrl":"https://www.mcpbundles.com/skills/xcdemo-mcp-a342536c36","connectPath":"importable","connectAction":"import_server","catalogListing":false,"bundleSlug":null,"listingKind":"remote_mcp","kind":"provider","transportUrl":"https://mcp.xcdemo.site/mcp","hostedMcpUrl":null,"toolCount":82,"toolInventoryStatus":"observed","refreshedAt":"2026-11-03T13:26:00.516172+00:00","registryName":"site.xcdemo/xcdemo-mcp-a342536c36","registryVersion":"2026.11.3","registryEligible":true,"tools":[{"name":"xc_server_status","description":"Show the current server configuration: tenant, base URL, default namespace, dry-run state, and API token presence. Use this to verify the server is configured correctly before running operations.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{}},"title":"F5 XC MCP Server Status","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_server_status","displayName":"F5 XC MCP Server Status"},{"name":"xc_list_namespaces","description":"List all namespaces in the F5 XC tenant. Returns namespace names, descriptions, and status. Use this to discover available namespaces before managing resources.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"page_limit":{"type":"integer","default":20,"maximum":100,"minimum":1},"page_start":{"type":"integer","default":0,"minimum":0}},"additionalProperties":false},"title":"List F5 XC Namespaces","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_list_namespaces","displayName":"List F5 XC Namespaces"},{"name":"xc_get_namespace","description":"Get details of a specific namespace by name, including its spec and current status.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1}},"additionalProperties":false},"title":"Get F5 XC Namespace","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_get_namespace","displayName":"Get F5 XC Namespace"},{"name":"xc_create_namespace","description":"Create a new namespace in the F5 XC tenant.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","maxLength":256,"minLength":1},"dryRun":{"type":"boolean"},"labels":{"type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false},"title":"Create F5 XC Namespace","logicalName":"xc_create_namespace","displayName":"Create F5 XC Namespace","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_delete_namespace","description":"Delete a namespace. This is destructive — all objects in the namespace will be removed.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1},"dryRun":{"type":"boolean"}},"additionalProperties":false},"title":"Delete F5 XC Namespace","logicalName":"xc_delete_namespace","displayName":"Delete F5 XC Namespace","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_list_user_groups","description":"List user groups in a namespace. User groups define sets of users with shared namespace/resource access. Defaults to the 'system' namespace where tenant-wide groups are typically managed.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"namespace":{"type":"string","default":"system"},"page_limit":{"type":"integer","default":20,"maximum":100,"minimum":1},"page_start":{"type":"integer","default":0,"minimum":0}},"additionalProperties":false},"title":"List F5 XC User Groups","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_list_user_groups","displayName":"List F5 XC User Groups"},{"name":"xc_get_user_group","description":"Get details of a specific user group, including its members and role bindings.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Get F5 XC User Group","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_get_user_group","displayName":"Get F5 XC User Group"},{"name":"xc_create_user_group","description":"Create a user group in a namespace. User groups control access to namespaces, objects, and privileges.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","spec"],"properties":{"name":{"type":"string","maxLength":256,"minLength":1},"spec":{"type":"object","additionalProperties":{}},"dryRun":{"type":"boolean"},"labels":{"type":"object","additionalProperties":{"type":"string"}},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Create F5 XC User Group","logicalName":"xc_create_user_group","displayName":"Create F5 XC User Group","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_update_user_group","description":"Replace a user group's specification (full PUT replace — provide the complete spec).","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","spec"],"properties":{"name":{"type":"string","maxLength":256,"minLength":1},"spec":{"type":"object","additionalProperties":{}},"dryRun":{"type":"boolean"},"labels":{"type":"object","additionalProperties":{"type":"string"}},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Update F5 XC User Group","logicalName":"xc_update_user_group","displayName":"Update F5 XC User Group","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_delete_user_group","description":"Delete a user group. Users in the group will lose the associated access rights.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1},"dryRun":{"type":"boolean"},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Delete F5 XC User Group","logicalName":"xc_delete_user_group","displayName":"Delete F5 XC User Group","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_list_api_credentials","description":"List API credentials (tokens and certificates) in the system namespace. Useful for auditing which credentials exist without exposing the actual token values.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"page_limit":{"type":"integer","default":20,"maximum":100,"minimum":1},"page_start":{"type":"integer","default":0,"minimum":0}},"additionalProperties":false},"title":"List F5 XC API Credentials","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_list_api_credentials","displayName":"List F5 XC API Credentials"},{"name":"xc_list_origin_pools","description":"List origin pools in a namespace. Origin pools define backend server groups used by HTTP load balancers.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"namespace":{"type":"string","default":"system"},"page_limit":{"type":"integer","default":20,"maximum":100,"minimum":1},"page_start":{"type":"integer","default":0,"minimum":0}},"additionalProperties":false},"title":"List F5 XC Origin Pools","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_list_origin_pools","displayName":"List F5 XC Origin Pools"},{"name":"xc_get_origin_pool","description":"Get the full specification of an origin pool by name, including origin servers, port, health checks, and TLS settings.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Get F5 XC Origin Pool","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_get_origin_pool","displayName":"Get F5 XC Origin Pool"},{"name":"xc_create_origin_pool","description":"Create an origin pool defining one or more backend servers.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","spec"],"properties":{"name":{"type":"string","maxLength":256,"minLength":1},"spec":{"type":"object","additionalProperties":{}},"dryRun":{"type":"boolean"},"labels":{"type":"object","additionalProperties":{"type":"string"}},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Create F5 XC Origin Pool","logicalName":"xc_create_origin_pool","displayName":"Create F5 XC Origin Pool","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_update_origin_pool","description":"Replace an origin pool's full specification (PUT). Provide the complete spec — partial updates are not supported.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","spec"],"properties":{"name":{"type":"string","maxLength":256,"minLength":1},"spec":{"type":"object","additionalProperties":{}},"dryRun":{"type":"boolean"},"labels":{"type":"object","additionalProperties":{"type":"string"}},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Update F5 XC Origin Pool","logicalName":"xc_update_origin_pool","displayName":"Update F5 XC Origin Pool","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_delete_origin_pool","description":"Delete an origin pool. Fails if any HTTP load balancer still references this pool — remove those references first.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1},"dryRun":{"type":"boolean"},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Delete F5 XC Origin Pool","logicalName":"xc_delete_origin_pool","displayName":"Delete F5 XC Origin Pool","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_list_http_lbs","description":"List HTTP load balancers in a namespace. HTTP LBs define domains, routing rules, WAF attachment, Bot Defense, and origin pool references.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"namespace":{"type":"string","default":"system"},"page_limit":{"type":"integer","default":20,"maximum":100,"minimum":1},"page_start":{"type":"integer","default":0,"minimum":0}},"additionalProperties":false},"title":"List F5 XC HTTP Load Balancers","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_list_http_lbs","displayName":"List F5 XC HTTP Load Balancers"},{"name":"xc_get_http_lb","description":"Get the full specification of an HTTP load balancer, including domains, routes, WAF policy, Bot Defense, rate limiting, and origin pool references.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Get F5 XC HTTP Load Balancer","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_get_http_lb","displayName":"Get F5 XC HTTP Load Balancer"},{"name":"xc_create_http_lb","description":"Create an HTTP load balancer. HTTP LBs handle domain-based routing to origin pools and are the main attachment point for WAF, Bot Defense, API Protection, and DDoS policies.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","spec"],"properties":{"name":{"type":"string","maxLength":256,"minLength":1},"spec":{"type":"object","additionalProperties":{}},"dryRun":{"type":"boolean"},"labels":{"type":"object","additionalProperties":{"type":"string"}},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Create F5 XC HTTP Load Balancer","logicalName":"xc_create_http_lb","displayName":"Create F5 XC HTTP Load Balancer","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_update_http_lb","description":"Replace an HTTP load balancer's full specification (PUT). Use xc_get_http_lb first to retrieve the current spec, then modify and provide the complete updated spec.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","spec"],"properties":{"name":{"type":"string","maxLength":256,"minLength":1},"spec":{"type":"object","additionalProperties":{}},"dryRun":{"type":"boolean"},"labels":{"type":"object","additionalProperties":{"type":"string"}},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Update F5 XC HTTP Load Balancer","logicalName":"xc_update_http_lb","displayName":"Update F5 XC HTTP Load Balancer","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_delete_http_lb","description":"Delete an HTTP load balancer. This removes all associated domain routing and security policy attachments. The referenced origin pools are NOT deleted.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1},"dryRun":{"type":"boolean"},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Delete F5 XC HTTP Load Balancer","logicalName":"xc_delete_http_lb","displayName":"Delete F5 XC HTTP Load Balancer","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_list_app_firewalls","description":"List Web Application Firewall (app firewall) policies in a namespace. App firewalls are attached to HTTP load balancers to provide WAF protection.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"namespace":{"type":"string","default":"system"},"page_limit":{"type":"integer","default":20,"maximum":100,"minimum":1},"page_start":{"type":"integer","default":0,"minimum":0}},"additionalProperties":false},"title":"List F5 XC App Firewalls (WAF Policies)","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_list_app_firewalls","displayName":"List F5 XC App Firewalls (WAF Policies)"},{"name":"xc_get_app_firewall","description":"Get full details of a WAF app firewall policy, including detection settings, blocking mode, signature exclusions, and custom rules.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Get F5 XC App Firewall (WAF Policy)","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_get_app_firewall","displayName":"Get F5 XC App Firewall (WAF Policy)"},{"name":"xc_create_app_firewall","description":"Create a Web Application Firewall policy. Attach to an HTTP LB via xc_update_http_lb.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","spec"],"properties":{"name":{"type":"string","maxLength":256,"minLength":1},"spec":{"type":"object","additionalProperties":{}},"dryRun":{"type":"boolean"},"labels":{"type":"object","additionalProperties":{"type":"string"}},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Create F5 XC App Firewall (WAF Policy)","logicalName":"xc_create_app_firewall","displayName":"Create F5 XC App Firewall (WAF Policy)","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_update_app_firewall","description":"Replace a WAF app firewall policy specification (full PUT replace). Retrieve the current spec with xc_get_app_firewall first.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","spec"],"properties":{"name":{"type":"string","maxLength":256,"minLength":1},"spec":{"type":"object","additionalProperties":{}},"dryRun":{"type":"boolean"},"labels":{"type":"object","additionalProperties":{"type":"string"}},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Update F5 XC App Firewall (WAF Policy)","logicalName":"xc_update_app_firewall","displayName":"Update F5 XC App Firewall (WAF Policy)","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_delete_app_firewall","description":"Delete a WAF app firewall policy. Detach it from all HTTP LBs first (update those LBs to use disable_waf), otherwise the delete will fail.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1},"dryRun":{"type":"boolean"},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Delete F5 XC App Firewall (WAF Policy)","logicalName":"xc_delete_app_firewall","displayName":"Delete F5 XC App Firewall (WAF Policy)","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_list_service_policies","description":"List service policies in a namespace. Service policies control API protection, Bot Defense rules, DDoS mitigation, and traffic allow/deny rules that apply to HTTP load balancers.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"namespace":{"type":"string","default":"system"},"page_limit":{"type":"integer","default":20,"maximum":100,"minimum":1},"page_start":{"type":"integer","default":0,"minimum":0}},"additionalProperties":false},"title":"List F5 XC Service Policies","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_list_service_policies","displayName":"List F5 XC Service Policies"},{"name":"xc_get_service_policy","description":"Get the full specification of a service policy, including rules, conditions, actions, and Bot Defense/DDoS settings.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Get F5 XC Service Policy","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_get_service_policy","displayName":"Get F5 XC Service Policy"},{"name":"xc_create_service_policy","description":"Create a service policy for API protection, Bot Defense rules, or DDoS mitigation. Service policies are applied to HTTP LBs via service_policies_from_namespace or explicit references.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","spec"],"properties":{"name":{"type":"string","maxLength":256,"minLength":1},"spec":{"type":"object","additionalProperties":{}},"dryRun":{"type":"boolean"},"labels":{"type":"object","additionalProperties":{"type":"string"}},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Create F5 XC Service Policy","logicalName":"xc_create_service_policy","displayName":"Create F5 XC Service Policy","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_update_service_policy","description":"Replace a service policy's full specification (PUT). Retrieve the current spec with xc_get_service_policy first.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","spec"],"properties":{"name":{"type":"string","maxLength":256,"minLength":1},"spec":{"type":"object","additionalProperties":{}},"dryRun":{"type":"boolean"},"labels":{"type":"object","additionalProperties":{"type":"string"}},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Update F5 XC Service Policy","logicalName":"xc_update_service_policy","displayName":"Update F5 XC Service Policy","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_delete_service_policy","description":"Delete a service policy. Remove it from any HTTP LB service policy sets first.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1},"dryRun":{"type":"boolean"},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Delete F5 XC Service Policy","logicalName":"xc_delete_service_policy","displayName":"Delete F5 XC Service Policy","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_upload_swagger_spec","description":"Upload an OpenAPI/Swagger spec file to the F5 XC object store so it can be referenced by an API definition.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","bytes_value"],"properties":{"name":{"type":"string","maxLength":512,"minLength":1},"dryRun":{"type":"boolean"},"namespace":{"type":"string","default":"shared"},"bytes_value":{"type":"string"},"content_format":{"enum":["json","yaml"],"type":"string","default":"json"}},"additionalProperties":false},"title":"Upload Swagger/OpenAPI Spec to F5 XC Object Store","logicalName":"xc_upload_swagger_spec","displayName":"Upload Swagger/OpenAPI Spec to F5 XC Object Store","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_list_swagger_specs","description":"List uploaded swagger/OpenAPI spec files in a namespace's object store. Returns name, version, and URL for each file.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"namespace":{"type":"string","default":"shared"}},"additionalProperties":false},"title":"List Swagger/OpenAPI Specs in F5 XC Object Store","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_list_swagger_specs","displayName":"List Swagger/OpenAPI Specs in F5 XC Object Store"},{"name":"xc_delete_swagger_spec","description":"Delete a specific version of a swagger spec from the object store. Detach it from any API definitions first.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","version"],"properties":{"name":{"type":"string","minLength":1},"dryRun":{"type":"boolean"},"version":{"type":"string","minLength":1},"namespace":{"type":"string","default":"shared"}},"additionalProperties":false},"title":"Delete Swagger/OpenAPI Spec from F5 XC Object Store","logicalName":"xc_delete_swagger_spec","displayName":"Delete Swagger/OpenAPI Spec from F5 XC Object Store","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_list_api_definitions","description":"List API definitions in a namespace. API definitions are used by API Discovery to learn and inventory API endpoints, and by API Security to enforce endpoint-level policies.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"namespace":{"type":"string","default":"system"},"page_limit":{"type":"integer","default":20,"maximum":100,"minimum":1},"page_start":{"type":"integer","default":0,"minimum":0}},"additionalProperties":false},"title":"List F5 XC API Definitions","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_list_api_definitions","displayName":"List F5 XC API Definitions"},{"name":"xc_get_api_definition","description":"Get the full specification of an API definition, including the OpenAPI/Swagger schema, endpoint inventory, and discovered API groups.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Get F5 XC API Definition","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_get_api_definition","displayName":"Get F5 XC API Definition"},{"name":"xc_create_api_definition","description":"Create an API definition to enable API Discovery and/or API Security on an HTTP load balancer.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","spec"],"properties":{"name":{"type":"string","maxLength":256,"minLength":1},"spec":{"type":"object","additionalProperties":{}},"dryRun":{"type":"boolean"},"labels":{"type":"object","additionalProperties":{"type":"string"}},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Create F5 XC API Definition","logicalName":"xc_create_api_definition","displayName":"Create F5 XC API Definition","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_update_api_definition","description":"Replace an API definition's full specification (PUT). Retrieve the current spec with xc_get_api_definition first.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","spec"],"properties":{"name":{"type":"string","maxLength":256,"minLength":1},"spec":{"type":"object","additionalProperties":{}},"dryRun":{"type":"boolean"},"labels":{"type":"object","additionalProperties":{"type":"string"}},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Update F5 XC API Definition","logicalName":"xc_update_api_definition","displayName":"Update F5 XC API Definition","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_delete_api_definition","description":"Delete an API definition. Detach it from any HTTP LBs first.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1},"dryRun":{"type":"boolean"},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Delete F5 XC API Definition","logicalName":"xc_delete_api_definition","displayName":"Delete F5 XC API Definition","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_list_app_api_groups","description":"List API endpoint groups in a namespace. App API groups define named sets of API endpoints (from an API definition) that can be referenced in service policies for fine-grained API Security controls.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"namespace":{"type":"string","default":"system"},"page_limit":{"type":"integer","default":20,"maximum":100,"minimum":1},"page_start":{"type":"integer","default":0,"minimum":0}},"additionalProperties":false},"title":"List F5 XC App API Groups","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_list_app_api_groups","displayName":"List F5 XC App API Groups"},{"name":"xc_get_app_api_group","description":"Get details of an API endpoint group, including which API definition it references and the endpoint patterns it covers.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Get F5 XC App API Group","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_get_app_api_group","displayName":"Get F5 XC App API Group"},{"name":"xc_create_app_api_group","description":"Create an API endpoint group for use in API Security policies.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","spec"],"properties":{"name":{"type":"string","maxLength":256,"minLength":1},"spec":{"type":"object","additionalProperties":{}},"dryRun":{"type":"boolean"},"labels":{"type":"object","additionalProperties":{"type":"string"}},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Create F5 XC App API Group","logicalName":"xc_create_app_api_group","displayName":"Create F5 XC App API Group","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_raw_request","description":"Send a raw HTTP request to the F5 XC API. Use this for operations not covered by other tools, or to explore the API.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["method","path"],"properties":{"body":{},"path":{"type":"string","minLength":1},"query":{"type":"object","additionalProperties":{"type":"string"}},"dryRun":{"type":"boolean"},"method":{"enum":["GET","POST","PUT","PATCH","DELETE"],"type":"string"}},"additionalProperties":false},"title":"F5 XC Raw API Request","logicalName":"xc_raw_request","displayName":"F5 XC Raw API Request","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_tf_generate_hcl","description":"Generate Terraform HCL for an F5 XC resource using the volterraedge/volterra provider.\nThis is read-only — it only generates text, it does NOT apply anything.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["resource_type","name"],"properties":{"name":{"type":"string","minLength":1},"attrs":{"type":"object","additionalProperties":{}},"namespace":{"type":"string"},"resource_type":{"enum":["namespace","user_group","http_loadbalancer","origin_pool","app_firewall","service_policy","api_definition","app_api_group","virtual_network","virtual_host","healthcheck"],"type":"string"},"include_provider":{"type":"boolean","default":true}},"additionalProperties":false},"title":"Generate F5 XC Terraform HCL","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_tf_generate_hcl","displayName":"Generate F5 XC Terraform HCL"},{"name":"xc_tf_plan","description":"Run 'terraform plan' for an F5 XC resource using the volterraedge/volterra provider.\nThis is safe — plan does NOT make any changes. Shows what would be created/modified/destroyed.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"hcl":{"type":"string"},"name":{"type":"string"},"attrs":{"type":"object","additionalProperties":{}},"namespace":{"type":"string"},"resource_type":{"enum":["namespace","user_group","http_loadbalancer","origin_pool","app_firewall","service_policy","api_definition","app_api_group","virtual_network","virtual_host","healthcheck"],"type":"string"}},"additionalProperties":false},"title":"Terraform Plan for F5 XC Resource","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_tf_plan","displayName":"Terraform Plan for F5 XC Resource"},{"name":"xc_tf_apply","description":"Run 'terraform apply' to create or update an F5 XC resource.\nUses the volterraedge/volterra provider. Each apply runs in a fresh temp directory (stateless).","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"hcl":{"type":"string"},"name":{"type":"string"},"attrs":{"type":"object","additionalProperties":{}},"dryRun":{"type":"boolean"},"namespace":{"type":"string"},"resource_type":{"enum":["namespace","user_group","http_loadbalancer","origin_pool","app_firewall","service_policy","api_definition","app_api_group","virtual_network","virtual_host","healthcheck"],"type":"string"}},"additionalProperties":false},"title":"Terraform Apply for F5 XC Resource","logicalName":"xc_tf_apply","displayName":"Terraform Apply for F5 XC Resource","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_tf_destroy","description":"Run 'terraform destroy' to delete an F5 XC resource via the volterra provider.\nDESTRUCTIVE — this deletes the resource from F5 XC.\nIn dryRun mode, runs 'terraform plan -destroy' instead.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"hcl":{"type":"string"},"name":{"type":"string"},"attrs":{"type":"object","additionalProperties":{}},"dryRun":{"type":"boolean"},"namespace":{"type":"string"},"resource_type":{"enum":["namespace","user_group","http_loadbalancer","origin_pool","app_firewall","service_policy","api_definition","app_api_group","virtual_network","virtual_host","healthcheck"],"type":"string"}},"additionalProperties":false},"title":"Terraform Destroy F5 XC Resource","logicalName":"xc_tf_destroy","displayName":"Terraform Destroy F5 XC Resource","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"shell_exec","description":"Execute a bash command on the local VM. Use to probe binaries, check paths, run docker/podman, etc.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["command"],"properties":{"command":{"type":"string","minLength":1}},"additionalProperties":false},"title":"Run Shell Command on MCP Server VM","logicalName":"shell_exec","displayName":"Run Shell Command on MCP Server VM","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"docker_run","description":"Start a Docker container on the local VM (where this MCP server runs).\nUseful for deploying demo workloads (e.g. Arcadia app) directly on the VM.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","image"],"properties":{"env":{"type":"object","additionalProperties":{"type":"string"}},"name":{"type":"string","minLength":1},"image":{"type":"string","minLength":1},"ports":{"type":"array","items":{"type":"string"}},"detach":{"type":"boolean","default":true},"remove_existing":{"type":"boolean","default":true}},"additionalProperties":false},"title":"Run Docker Container on MCP Server VM","logicalName":"docker_run","displayName":"Run Docker Container on MCP Server VM","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"docker_ps","description":"List running (or all) Docker containers on the local VM.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"all":{"type":"boolean","default":false},"filter":{"type":"string"}},"additionalProperties":false},"title":"List Docker Containers on MCP Server VM","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"docker_ps","displayName":"List Docker Containers on MCP Server VM"},{"name":"xc_list_dns_zones","description":"List all DNS zones in the system namespace. Returns zone names, delegation NS records, and record counts. DNS zones always live in the system namespace.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"page_limit":{"type":"integer","default":20,"maximum":100,"minimum":1},"page_start":{"type":"integer","default":0,"minimum":0}},"additionalProperties":false},"title":"List F5 XC DNS Zones","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_list_dns_zones","displayName":"List F5 XC DNS Zones"},{"name":"xc_get_dns_zone","description":"Get the full specification of a DNS zone, including all A, CNAME, MX, NS records in default_rr_set_group.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1}},"additionalProperties":false},"title":"Get F5 XC DNS Zone","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_get_dns_zone","displayName":"Get F5 XC DNS Zone"},{"name":"xc_create_dns_zone","description":"Create a primary DNS zone delegated to F5 XC nameservers (ns1/ns2.f5clouddns.com). The NS records are automatically included.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1},"dryRun":{"type":"boolean"},"initial_records":{"type":"array","items":{"type":"object","additionalProperties":{}}}},"additionalProperties":false},"title":"Create F5 XC DNS Zone (Primary)","logicalName":"xc_create_dns_zone","displayName":"Create F5 XC DNS Zone (Primary)","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_create_dns_zone_secondary","description":"Create a secondary DNS zone that transfers from external primary nameservers. F5 XC acts as a secondary resolver — zone data is pulled from your authoritative primaries.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","primary_servers"],"properties":{"name":{"type":"string","minLength":1},"dryRun":{"type":"boolean"},"primary_servers":{"type":"array","items":{"type":"string"},"minItems":1}},"additionalProperties":false},"title":"Create F5 XC DNS Zone (Secondary)","logicalName":"xc_create_dns_zone_secondary","displayName":"Create F5 XC DNS Zone (Secondary)","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_update_dns_zone_records","description":"Replace the full record set of a primary DNS zone (PUT). Always include the NS delegation entry or it will be removed.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","records"],"properties":{"name":{"type":"string","minLength":1},"dryRun":{"type":"boolean"},"records":{"type":"array","items":{"type":"object","additionalProperties":{}},"minItems":1}},"additionalProperties":false},"title":"Update F5 XC DNS Zone Records","logicalName":"xc_update_dns_zone_records","displayName":"Update F5 XC DNS Zone Records","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_delete_dns_zone","description":"Delete a DNS zone and all its records. This cannot be undone — the zone and all DNS records will be removed from F5 XC.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1},"dryRun":{"type":"boolean"}},"additionalProperties":false},"title":"Delete F5 XC DNS Zone","logicalName":"xc_delete_dns_zone","displayName":"Delete F5 XC DNS Zone","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_was_list_findings","description":"List vulnerability findings from F5 XC Web App Scanning (DAST). Requires F5_XC_WAS_API_KEY env var.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"application_id":{"type":"string"}},"additionalProperties":false},"title":"List F5 XC Web App Scan Findings","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_was_list_findings","displayName":"List F5 XC Web App Scan Findings"},{"name":"xc_was_start_scan","description":"Start a new DAST scan job against an application. Requires F5_XC_WAS_API_KEY env var.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["profile_id","application_id"],"properties":{"profile_id":{"type":"string","minLength":1},"application_id":{"type":"string","minLength":1}},"additionalProperties":false},"title":"Start F5 XC Web App Scan Job","logicalName":"xc_was_start_scan","displayName":"Start F5 XC Web App Scan Job","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_was_list_recon_findings","description":"List reconnaissance findings from F5 XC Web App Scanning. Recon discovers exposed services and assets. Requires F5_XC_WAS_API_KEY env var.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"recon_id":{"type":"string"}},"additionalProperties":false},"title":"List F5 XC Web App Recon Findings","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_was_list_recon_findings","displayName":"List F5 XC Web App Recon Findings"},{"name":"xc_was_list_recon_services","description":"List services discovered by reconnaissance jobs in F5 XC Web App Scanning. Requires F5_XC_WAS_API_KEY env var.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"recon_id":{"type":"string"}},"additionalProperties":false},"title":"List F5 XC Web App Recon Services","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_was_list_recon_services","displayName":"List F5 XC Web App Recon Services"},{"name":"xc_list_dns_lbs","description":"List DNS load balancers in a namespace. DNS LBs perform Global Server Load Balancing — they return different IP addresses based on geographic proximity, health, or weight. Used with DNS zones to implement GSLB.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"namespace":{"type":"string","default":"system"},"page_limit":{"type":"integer","default":20,"maximum":100,"minimum":1},"page_start":{"type":"integer","default":0,"minimum":0}},"additionalProperties":false},"title":"List F5 XC DNS Load Balancers (GSLB)","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_list_dns_lbs","displayName":"List F5 XC DNS Load Balancers (GSLB)"},{"name":"xc_get_dns_lb","description":"Get the full specification of a DNS load balancer, including pools, health checks, routing policy, and geographic rules.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Get F5 XC DNS Load Balancer (GSLB)","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_get_dns_lb","displayName":"Get F5 XC DNS Load Balancer (GSLB)"},{"name":"xc_create_dns_lb","description":"Create a DNS load balancer for Global Server Load Balancing. Returns different IP addresses to DNS queries based on health, proximity, or weight.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","spec"],"properties":{"name":{"type":"string","maxLength":256,"minLength":1},"spec":{"type":"object","additionalProperties":{}},"dryRun":{"type":"boolean"},"labels":{"type":"object","additionalProperties":{"type":"string"}},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Create F5 XC DNS Load Balancer (GSLB)","logicalName":"xc_create_dns_lb","displayName":"Create F5 XC DNS Load Balancer (GSLB)","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_update_dns_lb","description":"Replace a DNS load balancer's full specification (PUT). Retrieve the current spec with xc_get_dns_lb first. Use to change pool weights, routing policy, TTL, or health check settings.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","spec"],"properties":{"name":{"type":"string","maxLength":256,"minLength":1},"spec":{"type":"object","additionalProperties":{}},"dryRun":{"type":"boolean"},"labels":{"type":"object","additionalProperties":{"type":"string"}},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Update F5 XC DNS Load Balancer (GSLB)","logicalName":"xc_update_dns_lb","displayName":"Update F5 XC DNS Load Balancer (GSLB)","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_delete_dns_lb","description":"Delete a DNS load balancer. Remove any DNS zone records that reference this LB first.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1},"dryRun":{"type":"boolean"},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Delete F5 XC DNS Load Balancer (GSLB)","logicalName":"xc_delete_dns_lb","displayName":"Delete F5 XC DNS Load Balancer (GSLB)","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_list_monitors","description":"List synthetic monitors in a namespace. Use monitor_type to select HTTP or DNS monitors. Synthetic monitors send probes from F5 XC PoP locations to external targets — they are NOT the same as origin pool health checks.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"namespace":{"type":"string","default":"system"},"page_limit":{"type":"integer","default":20,"maximum":100,"minimum":1},"page_start":{"type":"integer","default":0,"minimum":0},"monitor_type":{"enum":["http","dns"],"type":"string","default":"http"}},"additionalProperties":false},"title":"List F5 XC Synthetic Monitors","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_list_monitors","displayName":"List F5 XC Synthetic Monitors"},{"name":"xc_get_monitor","description":"Get the full specification of a synthetic monitor (HTTP or DNS). Includes probe locations, check intervals, and response assertions.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1},"namespace":{"type":"string","default":"system"},"monitor_type":{"enum":["http","dns"],"type":"string","default":"http"}},"additionalProperties":false},"title":"Get F5 XC Synthetic Monitor","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_get_monitor","displayName":"Get F5 XC Synthetic Monitor"},{"name":"xc_create_monitor_dns","description":"Create a DNS synthetic monitor that probes DNS resolution from F5 XC PoP locations or cloud regions.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","domain"],"properties":{"name":{"type":"string","maxLength":256,"minLength":1},"domain":{"type":"string","minLength":1},"dryRun":{"type":"boolean"},"labels":{"type":"object","additionalProperties":{"type":"string"}},"receive":{"type":"string"},"protocol":{"enum":["TCP","UDP"],"type":"string","default":"TCP"},"namespace":{"type":"string","default":"system"},"record_type":{"enum":["A","AAAA","CNAME","MX","TXT","NS"],"type":"string","default":"A"},"name_servers":{"type":"array","items":{"type":"string"}},"probe_source":{"enum":["f5xc","aws","gcp","azure"],"type":"string","default":"f5xc"},"probe_regions":{"type":"array","items":{"type":"string"},"default":["ves-io-melbourne"]},"interval_minutes":{"type":"number","default":1},"on_failure_count":{"type":"integer","default":2,"maximum":10,"minimum":1},"lookup_timeout_ms":{"type":"integer","default":5000,"maximum":30000,"minimum":1000},"source_critical_threshold":{"type":"integer","default":1,"minimum":1}},"additionalProperties":false},"title":"Create F5 XC DNS Synthetic Monitor","logicalName":"xc_create_monitor_dns","displayName":"Create F5 XC DNS Synthetic Monitor","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_update_monitor","description":"Replace a synthetic monitor's full specification (PUT). Retrieve the current spec with xc_get_monitor first, then submit the modified spec.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","spec"],"properties":{"name":{"type":"string","maxLength":256,"minLength":1},"spec":{"type":"object","additionalProperties":{}},"dryRun":{"type":"boolean"},"labels":{"type":"object","additionalProperties":{"type":"string"}},"namespace":{"type":"string","default":"system"},"monitor_type":{"enum":["http","dns"],"type":"string","default":"http"}},"additionalProperties":false},"title":"Update F5 XC Synthetic Monitor","logicalName":"xc_update_monitor","displayName":"Update F5 XC Synthetic Monitor","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_delete_monitor","description":"Delete a synthetic monitor (HTTP or DNS). Specify monitor_type to target the correct resource type.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1},"dryRun":{"type":"boolean"},"namespace":{"type":"string","default":"system"},"monitor_type":{"enum":["http","dns"],"type":"string","default":"http"}},"additionalProperties":false},"title":"Delete F5 XC Synthetic Monitor","logicalName":"xc_delete_monitor","displayName":"Delete F5 XC Synthetic Monitor","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_list_alert_policys","description":"List alert policies in a namespace. Alert policies define notification targets (email, Slack, PagerDuty) and the conditions that trigger them.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"namespace":{"type":"string","default":"system"},"page_limit":{"type":"integer","default":20,"maximum":100,"minimum":1},"page_start":{"type":"integer","default":0,"minimum":0}},"additionalProperties":false},"title":"List F5 XC Alert Policies","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_list_alert_policys","displayName":"List F5 XC Alert Policies"},{"name":"xc_create_alert_policy","description":"Create an alert policy with notification targets (email, Slack webhook, PagerDuty).","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","spec"],"properties":{"name":{"type":"string","maxLength":256,"minLength":1},"spec":{"type":"object","additionalProperties":{}},"dryRun":{"type":"boolean"},"labels":{"type":"object","additionalProperties":{"type":"string"}},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Create F5 XC Alert Policy","logicalName":"xc_create_alert_policy","displayName":"Create F5 XC Alert Policy","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_delete_alert_policy","description":"Delete an alert policy. Ensure no monitors reference it first.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1},"dryRun":{"type":"boolean"},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Delete F5 XC Alert Policy","logicalName":"xc_delete_alert_policy","displayName":"Delete F5 XC Alert Policy","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_list_alert_receivers","description":"List alert receivers in a namespace. Alert receivers are reusable notification targets (email, Slack, PagerDuty) referenced by alert policies.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"namespace":{"type":"string","default":"system"},"page_limit":{"type":"integer","default":20,"maximum":100,"minimum":1},"page_start":{"type":"integer","default":0,"minimum":0}},"additionalProperties":false},"title":"List F5 XC Alert Receivers","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_list_alert_receivers","displayName":"List F5 XC Alert Receivers"},{"name":"xc_create_alert_receiver","description":"Create a reusable alert receiver (notification target). Alert receivers are referenced by alert policies.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","spec"],"properties":{"name":{"type":"string","maxLength":256,"minLength":1},"spec":{"type":"object","additionalProperties":{}},"dryRun":{"type":"boolean"},"labels":{"type":"object","additionalProperties":{"type":"string"}},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Create F5 XC Alert Receiver","logicalName":"xc_create_alert_receiver","displayName":"Create F5 XC Alert Receiver","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_delete_alert_receiver","description":"Delete an alert receiver. Remove any alert policy references to it first.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1},"dryRun":{"type":"boolean"},"namespace":{"type":"string","default":"system"}},"additionalProperties":false},"title":"Delete F5 XC Alert Receiver","logicalName":"xc_delete_alert_receiver","displayName":"Delete F5 XC Alert Receiver","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_ce_token_create","description":"Create a Customer Edge (CE) registration token. The token is used by CE appliances or cloud VMs to self-register with the F5 XC tenant during deployment.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1},"dryRun":{"type":"boolean"}},"additionalProperties":false},"title":"Create F5 XC CE Registration Token","logicalName":"xc_ce_token_create","displayName":"Create F5 XC CE Registration Token","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_ce_site_list","description":"List registered Customer Edge sites and their status. CEs self-register after deployment — use this to verify registration, check health, and review site metadata.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"page_limit":{"type":"integer","default":20,"maximum":100,"minimum":1},"page_start":{"type":"integer","default":0,"minimum":0}},"additionalProperties":false},"title":"List F5 XC Customer Edge Sites","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_ce_site_list","displayName":"List F5 XC Customer Edge Sites"},{"name":"xc_ce_site_get","description":"Get the full status and spec of a Customer Edge site, including registration state, software version, connected REs, and network configuration.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1}},"additionalProperties":false},"title":"Get F5 XC Customer Edge Site","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_ce_site_get","displayName":"Get F5 XC Customer Edge Site"},{"name":"xc_ce_site_delete","description":"Decommission a Customer Edge site. This removes the site from the F5 XC tenant. The actual cloud VM/appliance must be destroyed separately (e.g. via Terraform destroy). Ensure no HTTP LBs or services reference this site first.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string","minLength":1},"dryRun":{"type":"boolean"}},"additionalProperties":false},"title":"Delete F5 XC Customer Edge Site","logicalName":"xc_ce_site_delete","displayName":"Delete F5 XC Customer Edge Site","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"xc_ce_tf_generate","description":"Generate Terraform HCL for deploying a Customer Edge (CE) on Azure, AWS, or GCP using the volterraedge/volterra provider.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["cloud","site_name","token","region","site_latitude","site_longitude"],"properties":{"cloud":{"enum":["azure","aws","gcp"],"type":"string"},"token":{"type":"string","minLength":1},"region":{"type":"string","minLength":1},"site_name":{"type":"string","minLength":1},"aws_vpc_id":{"type":"string"},"gcp_vpc_name":{"type":"string"},"site_latitude":{"type":"number"},"gcp_project_id":{"type":"string"},"site_longitude":{"type":"number"},"azure_vnet_name":{"type":"string"},"azure_subnet_name":{"type":"string"},"azure_resource_group":{"type":"string"}},"additionalProperties":false},"title":"Generate Terraform HCL for F5 XC Customer Edge","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"xc_ce_tf_generate","displayName":"Generate Terraform HCL for F5 XC Customer Edge"}],"toolSource":"directory_preview","agentAction":"both","installLinks":[{"id":"cursor","label":"Cursor","href":"cursor://anysphere.cursor-deeplink/mcp/install?name=Xcdemo&config=eyJ1cmwiOiAiaHR0cHM6Ly9tY3AueGNkZW1vLnNpdGUvbWNwIn0%3D"},{"id":"vscode","label":"VS Code","href":"vscode:mcp/install?%7B%22name%22%3A%22Xcdemo%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fmcp.xcdemo.site%2Fmcp%22%7D"},{"id":"vscode-insiders","label":"VS Code Insiders","href":"vscode-insiders:mcp/install?%7B%22name%22%3A%22Xcdemo%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fmcp.xcdemo.site%2Fmcp%22%7D"},{"id":"claude-web","label":"Claude.ai","href":"https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=Xcdemo&connectorUrl=https%3A%2F%2Fmcp.xcdemo.site%2Fmcp"},{"id":"codex","label":"Codex","copyText":"codex mcp add \"Xcdemo\" --url \"https://mcp.xcdemo.site/mcp\""},{"id":"chatgpt","label":"ChatGPT","href":"https://www.mcpbundles.com/docs/integrations/chatgpt"}],"catalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/xcdemo-mcp-a342536c36","callUrl":"https://www.mcpbundles.com/api/directory/v1/servers/xcdemo-mcp-a342536c36/tools/{tool}","mcpServerUrl":"https://mcp.xcdemo.site/mcp","liveCatalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/xcdemo-mcp-a342536c36?live=1"}