Fire in da houseTop Tip:Paying $100+ per month for Perplexity, MidJourney, Runway, ChatGPT and other tools is crazy - get all your AI tools in one site starting at $15 per month with Galaxy AI Fire in da houseCheck it out free

higress-ops-mcp-server

MCP.Pizza Chef: higress-group

The higress-ops-mcp-server is a Model Context Protocol server that provides full configuration and management capabilities for Higress, a cloud-native service mesh. It integrates with an MCP client built on LangGraph and LangChain MCP Adapters, enabling seamless interaction through a structured agent flow. This server facilitates real-time, structured control over Higress environments, making it ideal for DevOps and cloud infrastructure automation.

Use This MCP server To

Manage Higress service mesh configurations via MCP Automate deployment and updates of Higress resources Integrate Higress management into AI-driven workflows Enable real-time monitoring and control of Higress clusters Extend Higress capabilities with custom MCP tools Facilitate multi-step reasoning for Higress operations Streamline cloud-native service mesh management

README

Higress OPS MCP Server

A Model Context Protocol (MCP) server implementation that enables comprehensive configuration and management of Higress. This repository also provides an MCP client built on top of LangGraph and LangChain MCP Adapters, facilitating interaction with the Higress MCP Server through a well-designed agent flow architecture.

Demo

higress-mcp-server-demo.mp4

Config Environment Variables

Copy the .env.example file to .env and fill in the corresponding values.

Start MCP Client and MCP Server

In stdio mode, the MCP server process is started by the MCP client program. Run the following command to start the MCP client and MCP server:

uv run client.py

Add a new tool

Step 1: Create a new tool class or extend an existing one

  • Create a new file in the tools directory if adding a completely new tool category
  • Or add your tool to an existing class if it fits an existing category
from typing import Dict, List, Any
from fastmcp import FastMCP

class YourTools:
    def register_tools(self, mcp: FastMCP):
        @mcp.tool()
        async def your_tool_function(arg1: str, arg2: int) -> List[Dict]:
            """
            Your tool description.
            
            Args:
                arg1: Description of arg1
                arg2: Description of arg2

            Returns:
                Description of the return value
            
            Raises:
                ValueError: If the request fails
            """
            # Implementation using self.higress_client to make API calls
            return self.higress_client.your_api_method(arg1, arg2)

Step 2: Add a new method to HigressClient if your tool needs to interact with the Higress Console API

  • Add methods to utils/higress_client.py that encapsulate API calls
  • Use the existing HTTP methods (get, put, post) for actual API communication
def your_api_method(self, arg1: str, arg2: int) -> List[Dict]:
    """
    Description of what this API method does.
    
    Args:
        arg1: Description of arg1
        arg2: Description of arg2
        
    Returns:
        Response data
        
    Raises:
        ValueError: If the request fails
    """
    path = "/v1/your/api/endpoint"
    data = {"arg1": arg1, "arg2": arg2}
    return self.put(path, data)  # or self.get(path) or self.post(path, data)

Step 3: Register your tool class in the server

  • Add your tool class to the tool_classes list in server.py
  • This list is used by ToolsRegister to instantiate and register all tools
  • The ToolsRegister will automatically set logger and higress_client attributes
tool_classes = [
    CommonTools,
    RequestBlockTools,
    RouteTools,
    ServiceSourceTools,
    YourTools  # Add your tool class here
]

Step 4: Add your tool to SENSITIVE_TOOLS if it requires human confirmation

  • Tools in this list will require human confirmation before execution
# Define write operations that require human confirmation
SENSITIVE_TOOLS = [
    "add_route", 
    "add_service_source",
    "update_route",
    "update_request_block_plugin", 
    "update_service_source",
    "your_tool_function"  # Add your tool name here if it requires confirmation
]

higress-ops-mcp-server FAQ

How do I start the higress-ops-mcp-server and client?
Use the command `uv run client.py` to start both the MCP client and server in stdio mode as per the documentation.
Can I extend the higress-ops-mcp-server with custom tools?
Yes, you can create new tool classes or extend existing ones within the tools directory to add custom functionality.
What environment setup is required for the higress-ops-mcp-server?
Copy the `.env.example` file to `.env` and fill in the required configuration values before starting the server.
Does the higress-ops-mcp-server support integration with LangChain?
Yes, it includes an MCP client built on LangGraph and LangChain MCP Adapters for enhanced interaction.
Is the higress-ops-mcp-server suitable for real-time operations?
Yes, it supports real-time configuration and management of Higress service mesh environments.
What kind of workflows can I build with this MCP server?
You can build automated deployment, monitoring, and multi-step reasoning workflows for Higress management.
How does the higress-ops-mcp-server improve DevOps processes?
It enables structured, programmable control over Higress, reducing manual configuration and errors.