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

基于 Higress 将 REST API 转换为 MCP Server 实战指南

Higress 网关通过 MCP Server 插件支持将现有 REST API 快速转化为 AI 助手可调用的工具,无需编写代码。配置包含服务器名称、认证信息及工具定义,支持 GET/POST 等多种请求方式及参数传递策略。利用 GJSON 模板语法可实现灵活的请求构造与响应转换,结合统一鉴权与限流能力,帮助开发者高效集成外部数据源至 AI Agent 生态中。

steve发布于 2026/3/15更新于 2026/7/2437 浏览
基于 Higress 将 REST API 转换为 MCP Server 实战指南

Higress MCP Server 插件:REST API 快速接入 AI 助手

Higress 是一款云原生 API 网关,集成了流量、微服务及安全网关功能。它基于 Istio 和 Envoy 开发,支持 Go/Rust/JS 等语言编写 Wasm 插件。除了常规的网关能力外,Higress AI 网关还支持 OpenAI、DeepSeek、通义千问等多种 AI 服务提供商,具备令牌限流、消费者鉴权及语义缓存等功能。

核心能力

MCP Server 插件基于 Model Context Protocol (MCP),专为 AI 助手设计,定义了 AI 模型与外部工具交互的标准方式。通过该插件,我们可以实现以下目标:

  • 零代码转换:直接将现有的 REST API 暴露为 AI 助手可调用的工具。
  • 统一治理:利用 Higress 网关的认证、鉴权、限流和可观测性能力,确保安全性与性能。
  • 快速部署:通过插件机制,无需修改后端服务即可快速添加新的 MCP Server。

配置详解

基础参数

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

REST-to-MCP 工具定义

这是最核心的部分,用于描述如何将 HTTP 请求映射为工具调用。

tools:
  - name: maps-geo
    description: "将结构化地址转换为经纬度坐标"
    args:
      - name: address
        type: string
        required: true
        description: 
        
         
         
         
    
       
       
       
"待解析的地址信息"
-
name:
city
type:
string
required:
false
description:
"查询城市"
requestTemplate:
url:
"https://restapi.amap.com/v3/geocode/geo"
method:
GET
argsToUrlParam:
true
参数类型支持

为了更精确地定义工具参数,支持多种类型:

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

这四种方式是互斥的,根据后端接口需求选择最合适的一种:

  1. argsToFormBody:参数以 application/x-www-form-urlencoded 编码,自动设置 Content-Type。
  2. argsToUrlParam:参数作为查询参数追加到 URL 中,适合 GET 请求。
  3. argsToJsonBody:参数直接转为 JSON 对象放入请求体,自动设置 Content-Type: application/json。
  4. body:手动构建请求体,灵活性最高。可使用模板语法动态填充内容。

示例(手动构建 Body):

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

响应转换模板

HTTP 响应需要经过转换才能被 AI 理解。使用 GJSON 路径语法访问返回的 JSON 字段,结合 Go 模板函数进行加工。

  • 访问配置:{{.config.字段名}}
  • 访问参数:{{.args.参数名}}
  • GJSON 路径:支持点表示法 (address.city)、数组索引 (users.0.name)、过滤 (users.#(age>=30)#.name) 等。

实战案例

1. 使用内置 MCP Server

如果使用的是 Higress 内置的服务(如搜索),配置非常简单:

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

2. 转换高德地图 API

下面是一个完整的配置示例,展示了如何定义参数、设置请求模板以及处理响应。注意 YAML 的缩进必须严格对齐。

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

通过这种方式,任何 REST API 都可以通过简单的配置转换为 MCP Server,无需编写额外的代码逻辑。这不仅提高了开发效率,也让 AI Agent 能够灵活地调用各种数据源。

目录

  1. Higress MCP Server 插件:REST API 快速接入 AI 助手
  2. 核心能力
  3. 配置详解
  4. 基础参数
  5. REST-to-MCP 工具定义
  6. 参数类型支持
  7. 请求参数传递策略
  8. 响应转换模板
  9. 实战案例
  10. 1. 使用内置 MCP Server
  11. 2. 转换高德地图 API
  • 免费图片AI生成工具免费生成了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 免费图片视频在线生成30秒,将你的创意变成现实开始设计
  • X/Twitter免费视频下载器免登陆无限额度免费视频解析下载了解详情
  • 100+免费在线小游戏爽一把
极客日志微信公众号二维码

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

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

更多推荐文章

查看全部
  • JiuwenClaw AI 智能体上手体验:任务规划与上下文管理
  • OpenClaw 生态 16 款 AI Agent 选型指南
  • Java 直播商城架构规划与常见营销模式解析
  • SQL Server 到 KingbaseES V9R4C12 的零改造迁移实战
  • LLaMA-Factory 微调 Qwen3-VL 详细流程
  • Qwen3-VL-WEBUI 视频理解能力实测:256K 上下文部署实战
  • Stable Diffusion v1.5 实战指南:将 SD1.5 嵌入 Figma 与 PS 工作流
  • Selenium Web 自动化测试入门与实战指南
  • Dify AI 智能体部署与使用详解
  • Spring Boot 数据可视化与图表集成实战
  • C++ 特殊类设计:不可拷贝、堆栈限制及单例模式实现
  • PID 控制算法:手动与自动模式切换机制
  • .NET 集成 GoView 低代码可视化大屏实战指南
  • .NET 集成 GoView 低代码可视化大屏实战指南
  • VS Code 远程连接服务器后 Github Copilot 无法使用
  • 国内升级 GitHub Copilot 专业版:PayPal 支付方案详解
  • JDK 21 安装与环境配置指南
  • MySQL 基础入门指南
  • 鸿蒙 NAPI 开发入门:从概念理解到实战避坑
  • GitHub 教育认证通过后领取 Copilot Pro 指南

相关免费在线工具

  • 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