跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像工具UI配色美学隐私政策关于联系
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
Go / GolangAI

Higress 网关实战:REST API 转 MCP Server 工具配置指南

综述由AI生成通过 Higress 网关的 MCP Server 插件,开发者无需编写代码即可将现有 REST API 转化为 AI 助手可调用的工具。该方案支持统一认证、限流及可观测性,利用 GJSON 模板语法灵活处理请求参数与响应数据。配置涵盖内置服务如 quark-search 及自定义 REST 接口(如高德地图),实现了 AI Agent 与外部数据源的无缝对接,显著提升开发效率。

kaikai发布于 2026/2/28更新于 2026/5/2320 浏览
Higress 网关实战:REST API 转 MCP Server 工具配置指南

Higress 网关实战:REST API 转 MCP Server 工具配置指南

Higress 是一款云原生 API 网关,集成了流量、微服务、安全及 AI 网关功能。基于 Istio 和 Envoy 开发,支持 Go/Rust/JS 等语言编写 Wasm 插件,提供开箱即用的控制台。

在 AI 场景下,Higress AI 网关支持 OpenAI、DeepSeek、通义千问等多种服务商,具备令牌限流、消费者鉴权、WAF 防护及语义缓存能力。今天重点聊聊如何利用其 MCP Server 插件,将现有的 REST API 快速转换为 AI 助手可调用的工具。

为什么需要 MCP Server 插件?

Model Context Protocol (MCP) 定义了 AI 模型与外部工具和资源交互的标准方式。通过 Higress 的 mcp-server 插件,我们可以实现以下目标:

  • 零代码转换:无需额外开发,直接将现有 REST API 暴露为 AI 工具。
  • 统一治理:复用网关的认证、鉴权、限流和可观测性能力,确保安全性与性能。
  • 快速部署:利用插件机制,几分钟内即可添加新的 MCP Server。

该插件默认阶段执行,优先级设为 30,适合大多数场景。

核心配置详解

配置主要分为两部分:Server 基础信息和具体的 REST-to-MCP 工具定义。

Server 配置

这是 MCP Server 的元数据部分。

字段名类型必填默认值说明
server.namestring是-Server 名称。内置服务(如 quark-search)只需填此项;REST 场景可自定义。
server.configobject否{}服务器级配置,例如全局 API Key。
server.allowToolsarray否-允许调用的工具列表。不指定则允许所有。

REST-to-MCP 工具配置

这是最核心的部分,定义了如何将 HTTP 请求映射为 AI 工具调用。

参数定义 (tools[].args)

你需要明确告诉 AI 这个工具需要什么输入。支持多种类型:

  • string:字符串(默认)
  • number / integer:数字或整数
  • boolean:布尔值
  • array:数组,需配合 items 定义元素模式
  • object:对象,需配合 定义属性模式
properties

每个参数还可以设置 required(是否必需)、default(默认值)以及 enum(枚举值),帮助 AI 更准确地生成参数。

请求模板 (requestTemplate)

这里决定了如何把 AI 生成的参数变成真实的 HTTP 请求。支持四种传递方式,它们是互斥的:

  1. JSON Body (argsToJsonBody: true):自动添加 Content-Type: application/json,参数直接转为 JSON 体。
  2. URL Params (argsToUrlParam: true):参数追加到 URL 查询串中。
  3. Form Data (argsToFormBody: true):以 application/x-www-form-urlencoded 格式编码。
  4. 手动构建 (body):最灵活,使用模板语法完全控制请求体内容。
响应模板 (responseTemplate)

AI 通常只关心结果,我们需要用 GJSON 路径语法提取关键信息返回给模型。例如 {{.body.data.result}}。

模板语法与实战技巧

Higress 使用 GJSON Template 语法,结合了 Go 模板和 GJSON 路径。这比纯正则强大得多。

  • 访问参数:{{.args.参数名}}
  • 访问配置:{{.config.字段名}}
  • 处理响应:使用 GJSON 路径如 users.#(age>=30)#.name 进行过滤。

注意:在手动构建 body 时,可以使用 toJson 函数将复杂对象序列化为 JSON 字符串。

requestTemplate:
  body: |
    {
      "query": "{{.args.query}}",
      "filters": {{toJson .args.filters}},
      "options": { "limit": {{.args.limit}} }
    }

配置示例

1. 内置服务:Quark Search

如果直接使用内置的搜索服务,配置非常简单:

server:
  name: "quark-search"
  config:
    apiKey: "xxxx"

2. 自定义 REST:高德地图 API

这是一个典型的 REST-to-MCP 场景。我们将高德地理编码接口包装成一个工具。

server:
  name: rest-amap-server
  config:
    apiKey: your-api-key-here
  tools:
    - name: maps-geo
      description: "将详细的结构化地址转换为经纬度坐标。支持对地标性名胜景区、建筑物名称解析为经纬度坐标"
      args:
        - name: address
          description: "待解析的结构化地址信息"
          type: string
          required: true
        - name: city
          description: "指定查询的城市"
          type: string
          required: false
        - name: output
          description: "输出格式"
          type: string
          enum:
            - json
            - xml
          default: "json"
      requestTemplate:
        url: "https://restapi.amap.com/v3/geocode/geo"
        method: GET
        argsToUrlParam: true

在这个例子中,我们使用了 argsToUrlParam: true,因为高德接口主要依赖查询参数。AI 会根据 args 的定义自动生成正确的 URL 请求。

总结

通过 Higress 网关的 MCP Server 插件,开发者无需编写额外的后端代码,就能让 AI Agent 轻松接入各种数据源。无论是简单的查询接口还是复杂的业务逻辑,只要配置得当,都能转化为 AI 可调用的工具。这不仅降低了集成门槛,还借助网关能力保障了系统的安全性和稳定性。

目录

  1. Higress 网关实战:REST API 转 MCP Server 工具配置指南
  2. 为什么需要 MCP Server 插件?
  3. 核心配置详解
  4. Server 配置
  5. REST-to-MCP 工具配置
  6. 参数定义 (tools[].args)
  7. 请求模板 (requestTemplate)
  8. 响应模板 (responseTemplate)
  9. 模板语法与实战技巧
  10. 配置示例
  11. 1. 内置服务:Quark Search
  12. 2. 自定义 REST:高德地图 API
  13. 总结
  • 💰 8折买阿里云服务器限时8折了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 🤖 一键搭建Deepseek满血版了解详情
  • 一键打造专属AI 智能体了解详情
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • C++ 中的 and、or、not 替代标记详解
  • Copilot 指令文件解析:copilot-instructions.md、AGENTS.md 与 .instructions.md 区别
  • C++11 右值引用与移动语义详解:从性能瓶颈到零拷贝优化
  • Z-Image-Turbo AI 绘画壁纸生成实战教程
  • 飞牛 NAS 原生 WebDAV 挂载 115 网盘配置指南
  • 自然语言处理在法律领域的应用与实战
  • 基于 AI 辅助的生鲜配送系统快速开发实践
  • MySQL 数据库核心操作:创建、配置与备份实战
  • 基于深度学习的智能害虫识别系统
  • 鸿蒙金融理财全栈项目:基础架构、数据安全与用户体验
  • BK7258 与 LiveKit WebRTC 端侧适配实战
  • VR-Reversal 工具使用指南:3D 视频转 2D 及视角控制
  • 企业实战中的 WebSocket 应用场景
  • JavaScript 基础语法中篇:运算符、条件、循环与数组详解
  • 本地部署 Apache Answer 问答平台并实现公网访问
  • Ubuntu 20.04 服务器搭建 k3s 轻量级 Kubernetes 集群及微服务部署指南
  • HarmonyOS PC 与手机双端协同开发实战:UI 适配、窗口管理与性能调优
  • Prophet Python 和 R 版本安装配置指南
  • Linux C/C++组件编译全解析:从源码到可执行文件
  • 前端团队协作最佳实践
  • 相关免费在线工具

    • RSA密钥对生成器

      生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

    • Mermaid 预览与可视化编辑

      基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

    • 随机西班牙地址生成器

      随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

    • Base64 字符串编码/解码

      将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

    • Base64 文件转换器

      将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online

    • Markdown转HTML

      将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online