← 返回公开榜单
hi

higress-group/higress-ops-mcp-server

A Model Context Protocol (MCP) server implementation that enables comprehensive configuration and management of Higress.

本周新增
0 星
近 3 周倍数
—
距上次推送
589 天
距上次发布
—
许可证

星标增长

每根柱子是这个周期记录下来的 star 增长:优先取逐个 stargazer 到达时间分桶的到达数,还没被 stargazer 扫描覆盖的仓库改用该周期的 star 净增;两个写者都没记录的周期画成虚线空档,而不是当成 0。柱高按各自窗口的峰值归一,两张图不共用坐标轴。指向任意一根柱子, tooltip 里是该周期的九项指标:当前值与周期内的净增。

指向或点击一根柱子,看当天的九项指标。

12/1712/301/111/242/62/193/33/16

2026 年 1 月 18 日 新增 0 个星标; 2026 年 2 月 1 日 新增 0 个星标; 2026 年 2 月 9 日 新增 0 个星标; 2026 年 2 月 14 日 新增 0 个星标; 2026 年 2 月 16 日 新增 0 个星标; 2026 年 2 月 17 日 新增 0 个星标; 2026 年 2 月 21 日 新增 0 个星标; 2026 年 3 月 16 日 新增 0 个星标

证据时间轴

这个项目还没有记录到异动、发布或许可证变化。

README
该仓库存储的文档,若已生成中文翻译则一并显示

Higress OPS MCP Server

一个模型上下文协议(MCP)服务器的实现,能够全面配置和管理 Higress。此代码库还提供了一个基于 LangGraph 和 LangChain MCP Adapters 构建的MCP客户端,通过精心设计的代理流程架构,可方便地与Higress MCP服务器进行交互。

Demo

https://github.com/user-attachments/assets/bae66b77-a158-452e-9196-98060bac0df7

配置环境变量

将 .env.example 文件复制到 .env 并填写相应值。

启动MCP客户端和MCP服务器

在stdio模式下,MCP服务器进程由MCP客户端程序启动。运行以下命令启动MCP客户端和MCP服务器:

uv run client.py

添加新工具

步骤1:创建新的工具类或扩展现有类

  • 如果添加全新的工具类别,请在tools目录下创建新文件
  • 如果工具符合现有类别,则将其添加到现有类中
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]:
            """
            你的工具描述。
            
            Args:
                arg1: arg1的描述
                arg2: arg2的描述

            Returns:
                返回值的描述
            
            Raises:
                ValueError: 如果请求失败
            """
            # 使用self.higress_client进行API调用
            return self.higress_client.your_api_method(arg1, arg2)

步骤2:如果你的工具需要与Higress Console API交互,则添加新方法到HigressClient

  • 在utils/higress_client.py中添加封装API调用的方法
  • 使用现有的HTTP方法(get, put, post)进行实际API通信
def your_api_method(self, arg1: str, arg2: int) -> List[Dict]:
    """
    描述这个API方法的作用。
    
    Args:
        arg1: arg1的描述
        arg2: arg2的描述
        
    Returns:
        响应数据
        
    Raises:
        ValueError: 如果请求失败
    """
    path = "/v1/你的/api/endpoint"
    data = {"arg1": arg1, "arg2": arg2}
    return self.put(path, data)  # 或 self.get(path) 或 self.post(path, data)

步骤3:在服务器中注册你的工具类

  • 将你的工具类添加到server.py中的tool_classes列表
  • 该列表用于ToolsRegister实例化和注册所有工具
  • ToolsRegister将自动设置logger和higress_client属性
tool_classes = [
    CommonTools,
    RequestBlockTools,
    RouteTools,
    ServiceSourceTools,
    YourTools  # 在这里添加你的工具类
]

步骤4:如果你的工具需要人工确认,则添加到SENSITIVE_TOOLS

  • 该列表中的工具在执行前需要人工确认
# 定义需要人工确认的写操作
SENSITIVE_TOOLS = [
    "add_route", 
    "add_service_source",
    "update_route",
    "update_request_block_plugin", 
    "update_service_source",
    "your_tool_function"  # 如果你的工具需要确认,在这里添加工具名称
]

页面上的每个数字都来自记录下来的 stargazer 到达时间,没有评分公式,也没有 AI 判定。 任何结论都可以用 /api/v1/repos/{id}/stats 里的原始增量自己重算。