微信扫码
添加专属顾问
我要投稿
在技术挑战中寻找解决方案,本文展示了如何从一个问题的发现到最终解决的全过程。 核心内容: 1. 复现黄老师公众号文章操作时遭遇的HTTP 504错误 2. 尝试多种解决方案后确定问题可能在高德MCP 3. 通过更换Key和修改配置代码成功解决问题,并对问题原因进行分析
起因
昨天想要复现黄老师的一篇公众号文章里的操作:
复现过程遇到了一点问题。
高德MCP添加成功,显示“可使用”
在运行过程中却总是出现(HTTP 504)错误:
我在网上搜了很多解决方案,
CSDN:504 Gateway Timeout: 网关超时的完美解决方法
https://blog.csdn.net/qq_42055933/article/details/141760595
但都解决不了我的问题。服务器问题我解决不了,网络问题我没有,不知道怎么办。。。
后来请教了黄老师,他说可能是高德的问题
那没办法了,就先不管它了。
我不喜欢在自己控制不了的事情上浪费时间,就想着睡一觉起来服务器应该就没问题了吧?
今天早晨起来我再次尝试,依然显示 504错误,那如果真是服务器问题的话,这也太久了~
而且我在搜索的过程中也没见其他人问过这个问题
那就只能在自己身上找原因了~
我做了两件事:
(后来我才发现高德官网写了两种配置代码,第二种和 |
高德官网:https://lbs.amap.com/
在高德官网创建 key
然后根据官网指引接入 MCP 配置。
第一种配置代码:
{ "mcpServers": { "amap-amap-sse": { "url": "https://mcp.amap.com/sse?key=您在高德官网上申请的key" } }}
第二种配置代码:
https://mcp.so/server/amap-maps/amap?tab=content
{ "mcpServers": { "amap-maps": { "command": "npx", "args": [ "-y", "@amap/amap-maps-mcp-server" ], "env": { "AMAP_MAPS_API_KEY": "您在高德官网上申请的key" } } }}
这两个操作做完之后,高德MCP就调用成功了!
OK,问题已经解决了,但是,问题到底出在哪了呢?
我太着急解决问题,直接同时修改了 Key 和 MCP配置代码,所以现在没办法判断到底是哪里出了问题。
(现在Trae正在跑任务,稍后我会把 MCP配置代码改回去,看看还能不能成功,如果成功了,就说明是 key 的问题,如果失败了,就说明是配置代码的问题)
把这两段配置代码发给【豆包】,让它进行对比分析:
{ "mcpServers": { "amap-amap-sse": { "url": "https://mcp.amap.com/sse?key=您在高德官网上申请的key" } }}
{ "mcpServers": { "amap-maps": { "command": "npx", "args": [ "-y", "@amap/amap-maps-mcp-server" ], "env": { "AMAP_MAPS_API_KEY": "您在高德官网上申请的key" } } }}
这两段代码都是用来调用高德mcp的配置代码,它们的区别是什么?并分析优劣
第一段代码是远程服务器方式(sse),第二段代码是本地服务器方式(stdio) ,二者优劣如下:
这么看来有可能是配置代码的原因,用 SSE 方式接入“与本地服务器相比,远程请求存在网络传输耗时”,504错误就是网络超时问题。
下面通过测试验证猜想。
为了提高测试效率,我又单独创建了一个 智能体,它的角色就是 高德MCP测试员
智能体prompt
你是高德MCP调用测试员,目的是测试高德MCP是否可以成功被调用,优先采用最简单的实现路径,跑通即可。如果无法成功调用,返回错误信息,并给出原因和解决方案。
依然显示“可使用”
改回 SSE 方式接入MCP服务
{ "mcpServers": { "amap-amap-sse": { "url": "https://mcp.amap.com/sse?key=您在高德官网上申请的key" } }}
第一次测试结果:失败 (400错误)
重新确认配置无误,
第二次测试结果:失败(504错误)
再改为 Node.js I/O 模式接入 MCP 服务 (跟 mcp.so 的代码是一样的)
https://lbs.amap.com/api/mcp-server/gettingstarted#t1
{ "mcpServers": { "amap-maps": { "command": "npx", "args": ["-y", "@amap/amap-maps-mcp-server"], "env": { "AMAP_MAPS_API_KEY": "您在高德官网上申请的key" } } }}
测试结果:成功
本次 Trae 接入 高德MCP服务 出现504错误的问题,是接入方式的问题。
把 SSE方式接入 改成 Node.js I/O 模式接入就解决了。
Node.js采用异步式I/O(非阻塞式I/O) ,基于事件驱动架构 ,具体如下:
最终成果展示:
https://static-host-x4o0qwe4-yunnantravel.sealoshzh.site/
再复习一下瑞·达利欧在《原则》中说的“五步流程实现你的人生愿望”
凡墙皆是门
解决问题是一件很快乐的事?
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2025-06-06
Anthropic官方揭秘内部团队如何使用 Claude Code(附完整版手册)
2025-06-06
图像编辑模型SeedEdit 3.0发布!更强保持力,更高可用率
2025-06-05
如何构建AI Agent快速分析行业景气度
2025-06-05
MCP Server 之旅第 5 站:服务鉴权体系解密
2025-06-05
Cursor 1.0 正式发布!BugBot 自动代码审查,Background Agent 全面开放、MCP一键安装
2025-06-05
11张图全面总结 MCP、A2A、Function Calling 架构设计间关系
2025-06-05
一手实测地产首个Agent,实话说:不错!
2025-06-05
面向 Data+AI 的新一代数智开发平台
2024-08-13
2024-06-13
2024-08-21
2024-07-31
2024-09-23
2024-05-28
2024-08-04
2024-04-26
2024-07-09
2024-07-20
2025-06-05
2025-06-04
2025-06-04
2025-06-03
2025-06-02
2025-05-31
2025-05-29
2025-05-29