Get the FREE Ultimate OpenClaw Setup Guide →

F5.MCP.server

A MCP server for talking to a F5 device

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio czirakim-f5.mcp.server python -m F5MCPserver \
  --env F5_HOST="IP_OR_HOSTNAME_OF_F5_DEVICE" \
  --env F5_BASE_URL="https://<F5_BASE_URL>/mgmt" \
  --env F5_PASSWORD="your_password" \
  --env F5_USERNAME="admin" \
  --env F5_VERIFY_SSL="false"

How to use

The F5 MCP Server provides a set of tools to manage F5 BIG-IP objects via the iControl REST API. It exposes CRUD-style tools for virtual servers (VIPs), pools, iRules, and profiles through the MCP (Model Context Protocol) interface, using the FastMCP framework. The server communicates with an F5 device by reading configuration from environment variables and issuing REST requests with the requests library. It is designed to run with stdio transport, making it compatible with various client integrations. To use it, configure the environment to point at your F5 device, start the MCP server, and invoke the tool endpoints to list, create, update, or delete F5 objects as needed via the MCP client.

How to install

Prerequisites:

  • Python 3.8+ installed on your system
  • Access to the F5 BIG-IP device with iControl REST enabled
  • git to clone the repository

Step-by-step installation:

  1. Clone the repository: git clone https://github.com/your-organization/F5.MCP.server.git cd F5.MCP.server

  2. Set up a virtual environment (recommended): python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate

  3. Install dependencies listed in requirements.txt (or install requests directly): pip install -r requirements.txt

    If requirements.txt is not provided, you can install requests manually:

    pip install requests

  4. Prepare a .env file or export environment variables as needed (see mcp_config for required keys): export F5_HOST=IP_OR_HOSTNAME export F5_BASE_URL=https://<F5_BASE_URL>/mgmt export F5_USERNAME=admin export F5_PASSWORD=your_password export F5_VERIFY_SSL=false

  5. Run the MCP server (as defined by the mcp_config using Python module mode):

    Using module execution as per the mcp_config

    python -m F5MCPserver

  6. Optional: run inside Docker or via Smithery if you plan to containerize or automate deployment.

Additional notes

Notes and tips:

  • The server uses the Python requests library to communicate with the F5 iControl REST API. Ensure your F5 device allows REST API access from the host running the MCP server.
  • Store credentials securely; consider using a secrets manager or environment variable injection rather than hard-coding values.
  • If you encounter SSL verification errors with self-signed certificates, set F5_VERIFY_SSL=false or provide the proper CA bundle via SSL configuration.
  • The tools are organized under Tools/F5object.py for CRUD operations. You can extend by adding more tools following the existing pattern.
  • The project is designed to run with stdio transport; ensure your MCP client is compatible with stdio-based servers.
  • For Docker deployment, you can containerize this Python process and pass environment variables at runtime.

Related MCP Servers

Sponsor this space

Reach thousands of developers