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

基于 Higress 将 REST API 转换为 MCP Server 的配置实践

综述由AI生成Higress MCP Server 插件允许无需编写代码即可将现有 REST API 转换为 AI 助手可调用的工具。通过统一认证、鉴权和限流能力,保障服务安全与性能。配置涵盖服务器名称、工具定义及请求响应模板,支持多种参数类型和传递方式。结合 GJSON 模板语法,可灵活处理数据转换。示例展示了内置搜索服务及高德地图 API 的集成方法,帮助开发者快速为 AI Agent 扩展数据源能力。

暖阳发布于 2026/3/15更新于 2026/6/1315 浏览
基于 Higress 将 REST API 转换为 MCP Server 的配置实践

Higress MCP Server 插件配置指南

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

在 AI 网关场景下,Higress 支持多种 AI 服务提供商(如 OpenAI、DeepSeek、通义千问等),并具备令牌限流、消费者鉴权、WAF 防护及语义缓存等功能。

功能说明

mcp-server 插件基于 Model Context Protocol (MCP),专为 AI 助手设计,定义了 AI 模型与外部工具和资源交互的标准方式。

在实际使用中,这个插件主要有三个优势:

  1. 无需编写代码:直接将现有 REST API 转换为 AI 助手可调用的工具。
  2. 统一治理:利用 Higress 网关能力,实现认证、鉴权、限流和可观测性。
  3. 快速部署:通过插件机制,几分钟内即可添加新的 MCP Server。

运行属性

  • 执行阶段:默认阶段
  • 执行优先级:30

配置字段详解

Server 配置
字段名数据类型填写要求默认值描述
server.namestring必填-MCP Server 名称。内置 Server(如 quark-search)只需填此项;REST-to-MCP 场景可自定义。
server.configobject选填{}服务端配置,例如 API 密钥等。
server.allowToolsarray of string选填-允许调用的工具列表。未指定则允许所有工具。
REST-to-MCP 工具配置

这是核心部分,用于定义如何将 HTTP 请求映射为 MCP 工具。

字段名数据类型填写要求默认值描述
toolsarray of object选填[]工具配置列表。
tools[].namestring必填-工具名称。
tools[].descriptionstring必填-工具功能描述。
tools[].argsarray of object必填
[]
工具参数定义。
tools[].requestTemplateobject必填-HTTP 请求模板。
tools[].responseTemplateobject必填-HTTP 响应转换模板。

其中 tools[].args 支持多种类型,包括 string、number、integer、boolean、array 和 object。对于数组或对象类型,需配合 items 或 properties 字段定义模式。

请求参数传递方式

支持四种互斥的传递方式,根据业务需求选择:

  1. 表单提交 (argsToFormBody):参数以 application/x-www-form-urlencoded 格式编码,自动添加 Content-Type 头。

    requestTemplate:
      argsToFormBody: true
    
  2. 查询参数 (argsToUrlParam):参数作为查询字符串添加到 URL 中。

    requestTemplate:
      argsToUrlParam: true
    
  3. JSON 体 (argsToJsonBody):参数直接作为 JSON 对象发送,自动添加 Content-Type: application/json; charset=utf-8。

    requestTemplate:
      argsToJsonBody: true
    
  4. 手动构建 (body):最灵活的方式,适合复杂结构。

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

模板语法

配置中大量使用了 GJSON Template 语法,结合了 Go 模板和 GJSON 路径语法。

  • 访问配置值:{{.config.字段名}}
  • 访问工具参数:{{.args.参数名}}
  • 响应处理:使用 GJSON 路径访问 JSON 字段,结合模板函数(如 add, upper)和控制结构(if, range)。

常用 GJSON 路径示例:

  • 点表示法:address.city
  • 数组索引:users.0.name
  • 数组迭代:users.#.name
  • 数组过滤:users.#(age>=30)#.name

配置示例

1. 使用内置 MCP Server

如果是内置服务(如搜索),配置相对简单:

server:
  name: "quark-search"
  config:
    apiKey: "xxxx"
2. 转换高德地图 API

下面是一个将高德地图地理编码接口转换为 MCP 工具的完整示例。注意 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

通过 MCP Server,您可以快速为 AI Agent 添加各种数据源支持。任何 REST API 都可以通过简单的配置转换为 MCP Server,无需编写额外的代码,从而显著提高开发效率。

目录

  1. Higress MCP Server 插件配置指南
  2. 功能说明
  3. 运行属性
  4. 配置字段详解
  5. Server 配置
  6. REST-to-MCP 工具配置
  7. 请求参数传递方式
  8. 模板语法
  9. 配置示例
  10. 1. 使用内置 MCP Server
  11. 2. 转换高德地图 API
  • 💰 8折买阿里云服务器限时8折了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 🤖 一键搭建Deepseek满血版了解详情
  • 一键打造专属AI 智能体了解详情
极客日志微信公众号二维码

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

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

更多推荐文章

查看全部
  • AI Agent 生产级框架实战:架构设计与核心代码实现
  • OpenClaw 接入飞书机器人与 Ollama 本地大模型部署指南
  • 无需公网 IP 安全访问本地 AI 服务的实践方案
  • JavaScript 正则表达式详解与使用指南
  • 基于鳄鱼伏击算法的多无人机三维协同路径规划及 Matlab 实现
  • 渗透测试基本流程详解:从信息收集到报告撰写
  • Visual C++ 运行库缺失修复指南
  • 6 款主流 AI 模型评测:国产 Agent 第一梯队是谁?
  • VR + 具身智能 + 人形机器人:通往现实世界的智能接口
  • DJI DroneID 无人机信号解析工具与流程指南
  • Oracle 迁移至 MySQL 的关键差异与注意事项
  • AMD显卡llama.cpp Vulkan后端兼容性问题与部署指南
  • 滑动窗口算法实战:长度最小的子数组与无重复字符的最长子串
  • Vue Skills:让 AI 掌握 Vue 最佳实践
  • Linux 基础命令与文件操作实战笔记
  • C++ 异常处理机制:异常捕获、自定义与实战应用
  • 23 个 Python 实战项目与源码实例指南
  • 基于 YOLOv8 的无人机枸杞树病害检测数据集与训练方案
  • Python 基础语法练习题
  • Node.js 安装与环境配置教程

相关免费在线工具

  • 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