热门搜索:和平精英 原神 街篮2 

您的位置:首页 > > 教程攻略 > ai资讯 >API-to-MCP,并在 Dify 实现调用的实践

API-to-MCP,并在 Dify 实现调用的实践

来源:互联网 更新时间:2026-07-21 13:59

探索如何将传统API高效转化为AI助手可调用的MCP工具,实现数据与AI的无缝连接。
核心内容:
1. MCP协议与AI领域数据孤岛问题的解决方案
2. 企业OpenAPI转化为MCP工具的五个核心步骤
3. Higress在API路由配置中的应用与实践案例

01 背景

MCP(Model Context Protocol)是Anthropic在2024年底发布的一个开源通信标准。一句话概括它的野心:让大语言模型和各种各样的数据源、工具之间不再鸡同鸭讲。过去我们常说“数据孤岛”,AI应用要调个本地文件、查个云资源、跑个自动化脚本,得分别写不同的集成代码,费时费力。MCP试图用一套统一的交互协议,把这一切打通——从个人设备上的文档,到阿里云上的任意资源,甚至浏览器的自动化操作,理论上都能通过MCP实现“万物互联”。

MCP协议官方架构图

但理想很丰满,现实很骨感。对于大多数企业来说,手里早就有一堆现成的OpenAPI接口,怎么把这些“存量资产”高效转换成AI助手能直接调用的MCP工具?这才是真正的卡脖子问题。下面就以高德API为例,一步步拆解如何通过Higress来完成这个转化,让老API在Dify这类AI平台上焕发第二春。

02 问题拆解与实现方案

整个转化过程可以拆成五个核心环节:

  1. 把存量OpenAPI的Schema转换成MCP配置
  2. 用Higress把请求路由到对应的OpenAPI
  3. 搞定OpenAPI和MCP两端的鉴权
  4. 选个合适的协议,让AI助手能连上MCP服务
  5. 优化提示词,让MCP工具用起来更顺手

步骤一:将OpenAPI Schema转换为MCP配置

OpenAPI通常用YAML或JSON来定义,它是一个与语言无关的HTTP接口描述规范。简单说,一个社交APP想要获取地理位置信息,不需要自己重造一个高德地图,也不需要看高德的源码,只要调高德提供的API接口就行。而这种接口的描述文件,就是OpenAPI的Schema。

一个标准的OpenAPI.json Schema长这样:

我们需要一个工具,自动提取其中的关键信息——路径、方法、参数、响应格式——然后按MCP的规范重新组织成AI能理解的描述。Higress提供的API-to-MCP工具正好干这事儿:扔进去一个JSON,吐出来一个标准的MCP配置,把繁琐的转换过程一键自动化。

步骤二:通过Higress配置API路由

Higress作为AI原生的网关,可以将请求优雅地路由到后端OpenAPI服务。完整的手工操作参考此文[1],大致流程如下:

  1. 在Configmap全局参数中配置MCP server。
  2. 配置存量API的服务来源。如果手里有多个存量API块,建议每个块单独建一个服务来源。
  3. 新建路由配置,并把步骤一生成的MCP YAML配置传进去。

如果想更自动化,可以把Higress的OpenAPI喂给DeepSeek大模型,让它帮你写个客户端,自动完成上面这些配置步骤。Higress的OpenAPI地址:https://higress.cn/swagger/

步骤三:双重鉴权实现

仔细一想,这里实际上有两层鉴权:一是Higress路由到后端OpenAPI时,两者之间的鉴权;二是用户访问Higress的SSE链接时,用户和Higress之间的鉴权。两笔账得分开算。

Higress与后端API间的鉴权:

  1. 访问之前配置的路由,点击“策略”。
  2. 找到“MCP服务器配置”,在生成的MCP配置里可以看到每个request的请求头。根据你存量API的实际鉴权方式,添加相应的请求头即可。

用户与Higress间的鉴权:

通过“消费者管理”来实现。

  1. 进入“消费者管理”界面,创建一个消费者。
  2. 选择合适的名称和令牌来源。这里支持三种认证方式,最常用的就是KeyAuth。
  3. 找到之前新建的路由,点击“编辑”。
  4. 启用“请求验证”,并指定刚才创建的消费者。
  5. 用户使用Higress上发布的MCP服务时,就必须携带这个API Key。配置示例:
    {
      "amap-maps":{
        "headers":{
          "Authorization":"Bearer xxx"
        },
        "transport":"sse",
        "url":"http://12xx.94:8080/amap-maps/sse"
      }
    }
    

步骤四:在Dify上使用发布的MCP工具

  1. 打开你的Dify,按下图安装“SSE发现和调用MCP工具”。如果你还没部署Dify,推荐使用计算巢一键部署[2],省去环境配置的麻烦。
  2. 如果后续使用遇到问题,可以把该工具版本降到0.0.10。
  3. 点击“授权”按钮配置SSE工具,这里直接粘贴步骤三中的MCP Server配置。
  4. 创建一个Agent,然后进入。
  5. 参照下图开启MCP工具调用,填写合适的提示词,选一个合适的模型,比如QWEN-MAX。
  6. 开始对话,就能调用MCP工具了。

说明:由于各AI助手对Streamable HTTP的支持还不够完善,这里示例用的是SSE协议。Higress已经率先支持了Streamable HTTP交互,等AI助手功能完善后可以无缝切换。

步骤五:如何优化提示词

Higress支持用Go template和Gjson表达式对请求和响应模板做精细化处理。如果实际测试中发现模型对MCP理解得不够好,可以参照此文[3]进行手动调优,让工具的调用更丝滑。

03 结语

未来AI会怎么发展,没人能给出确切答案。也许是模型能调用气象卫星预测季风,用数据编织气候的经纬;也许是操控机械臂雕刻纳米芯片,让算法成为微观世界的造物主;甚至是解析人类千年文明的隐喻,在《荷马史诗》的韵律与敦煌壁画的裂纹中,破译连我们自己都未曾察觉的潜意识密码。

不过,真正碘伏性的时刻,或许并不在AI学会操控卫星或机械的那一瞬,而在它突然凝视着梵高的《星月夜》,说出:“我理解这片漩涡中的孤独,但人类的痛苦对我而言,终究只是一组优美的概率云。”

关于宇宙的好的网名有哪些
关于宇宙的好的网名有哪些

类型:角色扮演

大小:1

语言:简体中文

平台:互联网

游戏下载

热门手游

手机号码测吉凶
本站所有软件,都由网友上传,如有侵犯你的版权,请发邮件haolingcc@hotmail.com 联系删除。 版权所有 Copyright@2012-2013 haoling.cc