F5XC API MCP Server¶
An MCP server exposing F5 Distributed Cloud APIs to AI assistants like Claude.
Features¶
- 1,500+ API Tools - Full F5XC API coverage across 23 domains
- Dynamic Discovery - 6 meta-tools with 95%+ token savings
- Dual-Mode - Works with or without authentication
- CURL Examples - API documentation with ready-to-use commands
Requirements¶
| Component | Version |
|---|---|
| Node.js | 24.0+ (for npm/npx) |
| Docker | 20.10+ (alternative) |
Installation¶
- Download
.mcpbfrom GitHub Releases - Double-click or drag into Claude Desktop
- Click Install
IDE Configuration¶
Config File Location¶
Configuration¶
{
"mcpServers": {
"f5xc-api": {
"command": "npx",
"args": ["@robinmordasiewicz/f5xc-api-mcp"],
"env": {
"F5XC_API_URL": "https://your-tenant.console.ves.volterra.io",
"F5XC_API_TOKEN": "your-api-token"
}
}
}
}
Full Restart Required
Completely quit and restart Claude Desktop for changes to take effect. Just closing the window is not sufficient.
Multiple Servers¶
Quick Install¶
claude mcp add f5xc-api \
--env F5XC_API_URL=https://your-tenant.console.ves.volterra.io \
--env F5XC_API_TOKEN=your-api-token \
-- npx @robinmordasiewicz/f5xc-api-mcp
Scope Options¶
| Scope | Flag | Storage | Use Case |
|---|---|---|---|
| Local | --scope local | ~/.claude.json (project-scoped) | Default, private to you |
| Project | --scope project | .mcp.json (in project root) | Share with team |
| User | --scope user | ~/.claude.json (global) | All projects |
Management Commands¶
claude mcp list # List all servers
claude mcp get f5xc-api # Get server details
claude mcp remove f5xc-api # Remove server
Manual Configuration¶
Create .mcp.json in your project root:
{
"mcpServers": {
"f5xc-api": {
"command": "npx",
"args": ["@robinmordasiewicz/f5xc-api-mcp"],
"env": {
"F5XC_API_URL": "https://your-tenant.console.ves.volterra.io",
"F5XC_API_TOKEN": "your-api-token"
}
}
}
}
Global Configuration¶
For system-wide availability, add to ~/.claude/settings.local.json.
Usage¶
VS Code supports MCP through Cline or Continue extensions.
Option 1: Cline¶
- Install Cline
- Open Cline panel → Click gear icon → MCP Servers → Add
- Or edit config file directly:
{
"mcpServers": {
"f5xc-api": {
"command": "npx",
"args": ["@robinmordasiewicz/f5xc-api-mcp"],
"env": {
"F5XC_API_URL": "https://your-tenant.console.ves.volterra.io",
"F5XC_API_TOKEN": "your-api-token"
}
}
}
}
Option 2: Continue¶
- Install Continue
- Edit
~/.continue/config.json:
{
"models": [],
"mcpServers": {
"f5xc-api": {
"command": "npx",
"args": ["@robinmordasiewicz/f5xc-api-mcp"],
"env": {
"F5XC_API_URL": "https://your-tenant.console.ves.volterra.io",
"F5XC_API_TOKEN": "your-api-token"
}
}
}
}
Workspace Configuration¶
Create .vscode/mcp.json for project-specific settings:
Configuration¶
- Open Cursor Settings (
Cmd/Ctrl + ,) - Navigate to MCP section
- Add configuration:
{
"mcpServers": {
"f5xc-api": {
"command": "npx",
"args": ["@robinmordasiewicz/f5xc-api-mcp"],
"env": {
"F5XC_API_URL": "https://your-tenant.console.ves.volterra.io",
"F5XC_API_TOKEN": "your-api-token"
}
}
}
}
Full Restart Required
Restart Cursor completely (quit and reopen) for changes to take effect.
Project Configuration¶
Create .cursor/mcp.json with environment variable references:
{
"mcpServers": {
"f5xc-api": {
"command": "npx",
"args": ["@robinmordasiewicz/f5xc-api-mcp"],
"env": {
"F5XC_API_URL": "https://your-tenant.console.ves.volterra.io",
"F5XC_API_TOKEN": "${env:F5XC_API_TOKEN}"
}
}
}
}
Composer Integration¶
Use Cursor's Composer (Cmd/Ctrl + I) for multi-resource generation:
"Create a complete F5XC setup with HTTP load balancer, origin pool, and WAF"
Different Configuration Schema
OpenCode uses "mcp" (not "mcpServers"), "command" as array, and "environment" (not "env").
Config File Location¶
Configuration¶
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"f5xc-api": {
"type": "local",
"command": ["npx", "@robinmordasiewicz/f5xc-api-mcp"],
"environment": {
"F5XC_API_URL": "https://your-tenant.console.ves.volterra.io",
"F5XC_API_TOKEN": "your-api-token"
}
}
}
}
Full Restart Required
Completely quit and restart OpenCode for changes to take effect.
Configuration Reference¶
| Field | Required | Description |
|---|---|---|
type | Yes | Must be "local" for stdio-based servers |
command | Yes | Array format: ["npx", "package"] |
environment | No | Environment variables object |
enabled | No | Load on startup (default: true) |
timeout | No | Response timeout in ms (default: 5000) |
Environment Variable References¶
Authentication¶
Operating Modes¶
Documentation Mode (Default): Works without credentials. Explore APIs, view schemas, get CURL examples.
Execution Mode: Add credentials to execute API calls directly.
Methods¶
- Get token from F5XC Console → Administration → Personal Management → Credentials
- Set environment variables:
- Download P12 from F5XC Console → Administration → Personal Management → Credentials
- Set environment variables:
export F5XC_API_URL="https://your-tenant.console.ves.volterra.io"
export F5XC_P12_BUNDLE="/absolute/path/to/certificate.p12"
export F5XC_P12_PASSWORD="your-password"
Use Absolute Paths
P12 certificate paths must be absolute, not relative.
Environment Variables¶
| Variable | Required | Description |
|---|---|---|
F5XC_API_URL | For auth | Tenant URL (e.g., https://tenant.console.ves.volterra.io) |
F5XC_API_TOKEN | Token auth | API token from F5XC Console |
F5XC_P12_BUNDLE | Cert auth | Absolute path to P12 certificate |
F5XC_P12_PASSWORD | Cert auth | P12 certificate password |
LOG_LEVEL | No | Logging level: debug, info, warn, error |
See Authentication Configuration for advanced options.
Verification¶
Command Line¶
MCP Protocol Test¶
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"capabilities":{}}}' | npx @robinmordasiewicz/f5xc-api-mcp
In Your IDE¶
Ask Claude:
"What F5XC API tools are available?"
"Get the F5XC API server info"
Troubleshooting¶
Node.js Issues¶
npx Cache Issues¶
Configuration Issues¶
- Validate JSON syntax (use a JSON validator)
- Ensure file path is correct for your OS
- Completely restart application (not just close window)
Authentication Issues¶
Test credentials first:
curl -H "Authorization: APIToken $F5XC_API_TOKEN" \
https://your-tenant.console.ves.volterra.io/api/web/namespaces
Common Errors¶
| Error | Cause | Solution |
|---|---|---|
ECONNREFUSED | Network issue | Check URL and connectivity |
401 Unauthorized | Invalid credentials | Refresh token |
403 Forbidden | Insufficient permissions | Check RBAC settings |
Next Steps¶
- Tools Reference - Explore available API tools
- Authentication Configuration - Advanced auth options
- Security Best Practices - Credential management
- GitHub Issues - Report bugs or request features