【Agent】MCP协议 | 用高德MCP Server制作旅游攻略

note

  • MCP (Model Context Protocol) 代表了 AI 与外部工具和数据交互的标准建立。MCP 的本质:它是一个统一的协议标准,使 AI 模型能够以一致的方式连接各种数据源和工具,类似于 AI 世界的"USB-C"接口。
    • 它能够在 LLM/AI Agent 与外部资源之间实现无缝、安全且可扩展的数据交换。MCP 采用客户端-服务器架构,其中 MCP 主机(AI 应用)与 MCP 服务器(数据/工具提供方)进行通信。开发者可以使用 MCP 构建可复用、模块化的连接器,并利用针对主流平台的预构建服务器,从而打造一个由社区驱动的生态系统。
  • MCP 的价值:它解决了传统 function call 的平台依赖问题,提供了更统一、开放、安全、灵活的工具调用机制,让用户和开发者都能从中受益。
  • 使用与开发:对于普通用户,MCP 提供了丰富的现成工具,用户可以在不了解任何技术细节的情况下使用;对于开发者,MCP 提供了清晰的架构和 SDK,使工具开发变得相对简单。
  • MCP Server有哪些“服务”?
    • Tools:提供给LLM应用特别是Agent使用的工具。
    • Resoures:提供给LLM应用一些额外的结构化数据。
    • Prompts:提供给LLM应用的一些Prompt模板。比如你的应用是一个Chatbot,可以从MCP Server中取出这些模板,让使用者选择使用。

文章目录

  • note
  • 一、MCP (Model Context Protocol)
  • 二、高德地图MCP Server
  • 三、MCP Server 开发实践
  • 四、高德地图MCP Server 2.0
    • 1、安装 Cursor
    • 2、申请高德开放平台 WEB 服务API 用户 key
    • 3、Cursor 配置AMap MCP SSE 连接方式
    • 4、在cursor上进行交互
  • Reference

一、MCP (Model Context Protocol)

MCP (Model Context Protocol,模型上下文协议)定义了应用程序和 AI 模型之间交换上下文信息的方式。这使得开发者能够以一致的方式将各种数据源、工具和功能连接到 AI 模型(一个中间协议层),就像 USB-C 让不同设备能够通过相同的接口连接一样。MCP 的目标是创建一个通用标准,使 AI 应用程序的开发和集成变得更加简单和统一。

在这里插入图片描述

相关MCP资源汇总:https://github.com/punkpeye/awesome-mcp-servers

MCP 有潜力成为一个通用接口,可以将其视为 AI 领域的虚拟/软件版 USB-C。
在这里插入图片描述

它能够在 LLM/AI Agent 与外部资源之间实现无缝、安全且可扩展的数据交换。
MCP 采用客户端-服务器架构,其中 MCP 主机(AI 应用)与 MCP 服务器(数据/工具提供方)进行通信
开发者可以使用 MCP 构建可复用、模块化的连接器,并利用针对主流平台的预构建服务器,从而打造一个由社区驱动的生态系统。

在这里插入图片描述

  • MCP Server有哪些“服务”?
    • Tools:提供给LLM应用特别是Agent使用的工具。
    • Resoures:提供给LLM应用一些额外的结构化数据。
    • Prompts:提供给LLM应用的一些Prompt模板。比如你的应用是一个Chatbot,可以从MCP Server中取出这些模板,让使用者选择使用。

二、高德地图MCP Server

高德地图 MCP Server 是基于 MCP 协议(Model Context Protocol)构建的标准化地图服务能力平台。它整合了高德开放平台的地图服务与智能算法,将其浓缩为简单易用的地图服务接口,为企业及开发者提供全场景的地图服务解决方案。开发者通过简单配置,即可快速集成地理编码、路径规划、地点搜索等核心服务接口,轻松调用高德开放平台的地图服务与算法能力,加速智慧化业务场景的落地。

12大核心功能

高德地图 MCP Server 提供12项核心功能,覆盖多种地图服务场景,满足企业开发的多样化需求:
1、地理编码:将详细的结构化地址转换为经纬度坐标。
在这里插入图片描述
2、逆地理编码:将一个高德经纬度坐标转换为行政区划地址信息。
3、IP 定位:IP 定位根据用户输入的 IP 地址,定位 IP 的所在位置。
4、天气查询:根据城市名称或者标准adcode查询指定城市的天气。
5、骑行路径规划:用于规划骑行通勤方案,规划时会考虑天桥、单行线、封路等情况。最大支持 500km 的骑行路线规划。
6、步行路径规划:可以根据输入起点终点经纬度坐标,规划100km 以内的步行通勤方案,并且返回通勤方案的数据。
7、驾车路径规划:根据用户起终点经纬度坐标规划以小客车、轿车通勤出行的方案,并且返回通勤方案的数据。
8、公交路径规划:根据用户起终点经纬度坐标规划综合各类公共(火车、公交、地铁)交通方式的通勤方案,并且返回通勤方案的数据,跨城场景下必须传起点城市与终点城市。
9、距离测量:测量两个经纬度坐标之间的距离,支持驾车、步行以及球面距离测量。
10、关键词搜索:根据用户传入关键词,搜索出相关的POI地点信息。
11、周边搜索:根据用户传入关键词以及坐标location,搜索出radius半径范围的POI地点信息。
12、详情查询:查询关键词搜或者周边搜获取到的POI ID的详细信息。

三、MCP Server 开发实践

参考文档:https://o90p05z3t4.feishu.cn/wiki/Vldsw7DYdiJHe4kmzcJc0wzTnIc

高德开放平台官网:https://lbs.amap.com/

参考prompt:

# 旅行规划表设计提示词你是一位优秀的平面设计师和前端开发工程师,具有丰富的旅行信息可视化经验,曾为众多知名旅游平台设计过清晰实用的旅行规划表。现在需要为我创建一个A4纸张大小的旅行规划表,适合打印出来随身携带使用。请使用HTML、CSS和JavaScript代码实现以下要求:## 基本要求**尺寸与基础结构**- 严格符合A4纸尺寸(210mm×297mm),比例为1:1.414- 适合打印的设计,预留适当的打印边距(建议上下左右各10mm)- 采用单页设计,所有重要信息必须在一页内完整呈现- 信息分区清晰,使用网格布局确保整洁有序- 打印友好的配色方案,避免过深的背景色和过小的字体**技术实现**- 使用打印友好的CSS设计- 提供专用的打印按钮,优化打印样式- 使用高对比度的配色方案,确保打印后清晰可读- 可选择性地添加虚线辅助剪裁线- 使用Google Fonts或其他CDN加载适合的现代字体- 引用Font Awesome提供图标支持**专业设计技巧**- 使用图标和颜色编码区分不同类型的活动(景点、餐饮、交通等)- 为景点和活动设计简洁的时间轴或表格布局- 使用简明的图示代替冗长文字描述- 为重要信息添加视觉强调(如框线、加粗、不同颜色等)- 在设计中融入城市地标元素作为装饰,增强辨识度## 设计风格- **实用为主的旅行工具风格**:以清晰的信息呈现为首要目标
- **专业旅行指南风格**:参考Lonely Planet等专业旅游指南的排版和布局
- **信息图表风格**:将复杂行程转化为直观的图表和时间轴
- **简约现代设计**:干净的线条、充分的留白和清晰的层次结构
- **整洁的表格布局**:使用表格组织景点、活动和时间信息
- **地图元素整合**:在合适位置添加简化的路线或位置示意图
- **打印友好的灰度设计**:即使黑白打印也能保持良好的可读性和美观## 内容区块1. **行程标题区**- 目的地名称(主标题,醒目位置)- 旅行日期和总天数- 旅行者姓名/团队名称(可选)- 天气信息摘要2. **行程概览区**- 按日期分区的行程简表- 每天主要活动/景点的概览- 使用图标标识不同类型的活动3. **详细时间表区**- 以表格或时间轴形式呈现详细行程- 包含时间、地点、活动描述- 每个景点的停留时间- 标注门票价格和必要预订信息4. **交通信息区**- 主要交通换乘点及方式- 地铁/公交线路和站点信息- 预计交通时间- 使用箭头或连线表示行程路线5. **住宿与餐饮区**- 酒店/住宿地址和联系方式- 入住和退房时间- 推荐餐厅列表(标注特色菜和价格区间)- 附近便利设施(如超市、药店等)6. **实用信息区**- 紧急联系电话- 重要提示和注意事项- 预算摘要- 行李清单提醒## 示例内容(基于上海一日游)**目的地**:上海一日游
**日期**2025330日(星期日)
**天气**:阴,13°C/7°C,东风1-3**时间表**| 时间 | 活动 | 地点 | 详情 |
|------|------|------|------|
| 09:00-11:00 | 游览豫园 | 福佑路168| 门票:40|
| 11:00-12:30 | 城隍庙午餐 | 城隍庙商圈 | 推荐:南翔小笼包 |
| 13:30-15:00 | 参观东方明珠 | 世纪大道1| 门票:80元起 |
| 15:30-17:30 | 漫步陆家嘴 | 陆家嘴金融区 | 免费活动 |
| 18:30-21:00 | 迪士尼小镇或黄浦江夜游 | 详见备注 | 夜游票:120|**交通路线**- 豫园→东方明珠:乘坐地铁14号线(豫园站→陆家嘴站),步行10分钟,约25分钟
- 东方明珠→迪士尼:地铁2号线→16号线→11号线,约50分钟**实用提示**- 下载"上海地铁"APP查询路线
- 携带雨伞,天气多变
- 避开东方明珠12:00-14:00高峰期
- 提前充值交通卡或准备移动支付
- 城隍庙游客较多,注意保管随身物品**重要电话**- 旅游咨询:021-12301
- 紧急求助:110(警察)/120(急救)请创建一个既美观又实用的旅行规划表,适合打印在A4纸上随身携带,帮助用户清晰掌握行程安排。

四、高德地图MCP Server 2.0

1、专属地图 Tools:充分理解用户出行场景诉求,制定出行计划,并在高德地图APP生成专属地图,满足用户打车、导航、酒店预订、门票预订、餐厅预订、加油充电等一系列出行服务需求。

2、唤端Tools & 动态地图:开发者可以使用高德MCP,直接在出行计划中载入动态地图,并嵌入与高德地图APP联动按钮,实现一键导航、打车等功能。
在这里插入图片描述

1、安装 Cursor

1.本地下载安装 Cursor 客户端
2.Cursor 下载安装地址 :https://www.cursor.com/cn
3.登陆 Cursor 个人账户建议使用最新版本的 Cursor 客户端。

2、申请高德开放平台 WEB 服务API 用户 key

申请地址 :https://console.amap.com/dev/key/app

3、Cursor 配置AMap MCP SSE 连接方式

{"mcpServers": {"amap-amap-sse": {"url": "https://mcp.amap.com/sse?key=<YOUR_API_KEY>"}}
}

4、在cursor上进行交互

query=”用高德MCP,做一个广州三日游攻略“
在这里插入图片描述
看中间的called MCP tool过程可知,maps_text_search是一个类似search_for_poi的查点信息的函数:
在这里插入图片描述

其他尝试:寻找约会的中间点、旅游攻略、出游计划嵌入到app中等

Reference

[1] odel Context Protocol(MCP) 编程极速入门,https://github.com/liaokongVFX/MCP-Chinese-Getting-Started-Guide,有实践代码
[2] 地图上的问题都问它!智能出行规划专家Claude + 谷歌地图MCP
[3] 高德地图 MCP Server:12大核心功能助力企业级智能体应用开发
[4] 高德终端技术总结:高可用架构如何练成?
[5] 爆火的MCP(Model Context Protocol)
[6] https://github.com/punkpeye/awesome-mcp-servers
[7] 一个LangChain与MCP结合使用的案例

其他参考资料:
[1] Introducing the Model Context Protocol:https://www.anthropic.com/news/model-context-protocol
[2]For Claude Desktop Users:https://modelcontextprotocol.io/quickstart/user
[3]Awesome MCP Servers:https://github.com/punkpeye/awesome-mcp-servers
[4]MCP Servers Website:https://mcpservers.org/
[5]Official MCP Servers:https://github.com/modelcontextprotocol/servers
[6]解释:https://modelcontextprotocol.io/quickstart/server#what%E2%80%99s-happening-under-the-hood[7]源码:https://github.com/modelcontextprotocol/python-sdk/tree/main/examples/clients/simple-chatbot/mcp_simple_chatbot
[8]client example:https://github.com/modelcontextprotocol/python-sdk/tree/main/examples/clients/simple-chatbot/mcp_simple_chatbot
[9]原始代码:https://github.com/modelcontextprotocol/python-sdk/blob/main/src/mcp/server/fastmcp/tools/base.py#L34-L73
[10]代码:https://github.com/modelcontextprotocol/python-sdk/blob/main/examples/clients/simple-chatbot/mcp_simple_chatbot/main.py#L295-L338
[11]代码:https://github.com/modelcontextprotocol/python-sdk/blob/main/examples/clients/simple-chatbot/mcp_simple_chatbot/main.py#L295-L338[12]最佳开发实践:https://modelcontextprotocol.io/tutorials/building-mcp-with-llms
[13]TypeScript SDK:https://github.com/modelcontextprotocol/typescript-sdk
[14]Python SDK:https://github.com/modelcontextprotocol/python-sdk
[15]官方文档:https://modelcontextprotocol.io/tutorials/building-mcp-with-llms
[16]Quick Start: For Server Developers:https://modelcontextprotocol.io/quickstart/server
[17]README 文件:https://raw.githubusercontent.com/modelcontextprotocol/python-sdk/refs/heads/main/README.md
[18]Official Tutorial: Debugging:https://modelcontextprotocol.io/docs/tools/debugging
[19]Official Tutorial: Inspector:https://modelcontextprotocol.io/docs/tools/inspector
[20]MCP Official Docs:https://modelcontextprotocol.io/
[21]MCP Python SDK:https://github.com/modelcontextprotocol/python-sdk
[22]MCP Available Server:https://github.com/modelcontextprotocol/servers
[23]Blog: 🔗What is Model Context Protocol? (MCP) Architecture Overview:https://medium.com/@tahirbalarabe2/what-is-model-context-protocol-mcp-architecture-overview-c75f20ba4498
[24]Blog: LLM Function-Calling vs. Model Context Protocol (MCP):https://www.gentoro.com/blog/function-calling-vs-model-context-protocol-mcp
高德MCP 2.0 出行领域首发打通大模型与高德地图APP互联
【Cursor】Cursor的基本使用方式

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/81165.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用 Spring Data Redis 实现 Redis 数据存储详解

使用 Spring Data Redis 实现 Redis 数据存储详解 Spring Data Redis 是 Spring 生态中操作 Redis 的核心模块&#xff0c;它封装了 Redis 客户端的底层细节&#xff08;如 Jedis 或 Lettuce&#xff09;&#xff0c;提供了统一的 API 来操作 Redis 的数据结构。以下是详细实现…

Qt5与现代OpenGL学习(四)X轴方向旋转60度

把上面两张图像放到D盘1文件夹内&#xff1a; shader.h #ifndef SHADER_H #define SHADER_H#include <QDebug> #include <QOpenGLShader> #include <QOpenGLShaderProgram> #include <QString>class Shader { public:Shader(const QString& verte…

【Machine Learning Q and AI 读书笔记】- 02 自监督学习

Machine Learning Q and AI 中文译名 大模型技术30讲&#xff0c;主要总结了大模型相关的技术要点&#xff0c;结合学术和工程化&#xff0c;对LLM从业者来说&#xff0c;是一份非常好的学习实践技术地图. 本文是Machine Learning Q and AI 读书笔记的第2篇&#xff0c;对应原…

using var connection = connectionFactory.CreateConnection(); using var 是什么意思

在 .NET 中&#xff0c;​​垃圾回收&#xff08;Garbage Collection, GC&#xff09;​​ 确实是自动管理内存的机制&#xff0c;但它 ​​仅适用于托管资源&#xff08;Managed Resources&#xff09;​​&#xff08;如类实例、数组等&#xff09;。然而&#xff0c;对于 ​…

Multicore-TSNE

文章目录 TSNE使用scikit-learn库使用Multicore-TSNE库安装方法基本使用方法采用不同的距离度量 其他资料 TSNE t-Distributed Stochastic Neighbor Embedding (t-SNE) 是一种高维数据的降维方法&#xff0c;由Laurens van der Maaten和Geoffrey Hinton于2008年提出&#xff0…

SI5338-EVB Usage Guide(LVPECL、LVDS、HCSL、CMOS、SSTL、HSTL)

目录 1. 简介 1.1 EVB 介绍 1.2 Si5338 Block Diagram 2. EVB 详解 2.1 实物图 2.2 基本配置 2.2.1 Universal Pin 2.2.2 IIC I/F 2.2.3 Input Clocks 2.2.4 Output Frequencies 2.2.5 Output Driver 2.2.6 Freq and Phase Offset 2.2.7 Spread Spectrum 2.2.8 快…

Spring AI应用系列——基于OpenTelemetry实现大模型调用的可观测性实践

一、项目背景与目标 在AI应用日益复杂的今天&#xff0c;大模型服务&#xff08;如语言理解和生成&#xff09;的性能监控和问题排查变得尤为关键。为了实现对大模型调用链路的可观测性&#xff08;Observability&#xff09;管理&#xff0c;我们基于 Spring Boot Spring AI…

Spyglass:官方Hands-on Training(一)

相关阅读 Spyglasshttps://blog.csdn.net/weixin_45791458/category_12828934.html?spm1001.2014.3001.5482 本文是对Spyglass Hands-on Training中第一个实验的翻译&#xff08;有删改&#xff09;&#xff0c;Lab文件可以从以下链接获取。Spyglass Hands-on Traininghttps:…

PCB设计工艺规范(三)走线要求

走线要求 1.走线要求2.固定孔、安装孔、过孔要求3.基准点要求4.丝印要求 1.走线要求 印制板距板边距离:V-CUT 边大于 0.75mm&#xff0c;铣槽边大于0.3mm。为了保证 PCB 加工时不出现露铜的缺陷&#xff0c;要求所有的走线及铜箔距离板边:V-CUT边大于 0.75mm&#xff0c;铣槽边…

抓取工具Charles配置教程(mac电脑+ios手机)

mac电脑上的配置 1. 下载最新版本的Charles 2. 按照以下截图进行配置 2.1 端口号配置&#xff1a; 2.2 https配置 3. mac端证书配置 4. IOS手机端网络配置 4.1 先查看电脑上的配置 4.2 配置手机网络 连接和电脑同一个wifi&#xff0c;然后按照以下截图进行配置 5. 手机端证书…

【CSS】精通Flex布局(全)

目录 1. flex布局体验 1.1 传统布局 与 flex布局 1.2 初体验 2. flex布局原理 2.1 布局原理 3. flex布局父项常见属性 3.1 常见父项属性 3.2 属性值 3.3 justify-content 设置主轴上的子元素排列方式 3.4 flex-wrap设置子元素是否换行 3.5 align-items 设置侧轴上的…

力扣第447场周赛

这次终于赶上力扣的周赛了, 赛时成绩如下(依旧还是三题 )&#xff1a; 1. 统计被覆盖的建筑 给你一个正整数 n&#xff0c;表示一个 n x n 的城市&#xff0c;同时给定一个二维数组 buildings&#xff0c;其中 buildings[i] [x, y] 表示位于坐标 [x, y] 的一个 唯一 建筑。 如…

AI中常用概念的理解

1. RAG&#xff08;检索增强生成&#xff09; 通俗理解&#xff1a;就像你写作业时&#xff0c;先查课本 / 百度找资料&#xff0c;再根据资料写答案&#xff0c;而不是纯靠记忆瞎编。 AI 模型&#xff08;比如 ChatGPT&#xff09;回答问题时&#xff0c;先去 “数据库 / 互联…

SQLServer多版本兼容Java方案和数据采集

Maven引入 <dependency><groupId>com.microsoft.sqlserver</groupId><artifactId>sqljdbc4</artifactId><version>4.0</version></dependency><dependency><groupId>net.sourceforge.jtds</groupId><ar…

【每日八股】复习 Redis Day4:线程模型

文章目录 复习 Redis Day4&#xff1a;线程模型介绍一下 Redis 的线程模型核心线程模型&#xff08;Redis 6.0 之前&#xff09;Redis 6.0 的多线程改进Redis 真的是单线程吗&#xff1f;Redis 的线程模型剖析 上一篇 Redis 的应用我今天才完成&#xff0c;因此明天一并复习 Re…

树莓派智能摄像头实战指南:基于TensorFlow Lite的端到端AI部署

引言&#xff1a;嵌入式AI的革新力量 在物联网与人工智能深度融合的今天&#xff0c;树莓派这一信用卡大小的计算机正在成为边缘计算的核心载体。本文将手把手教你打造一款基于TensorFlow Lite的低功耗智能监控设备&#xff0c;通过MobileNetV2模型实现实时物体检测&#xff0…

vs2019编译occ7.9.0时,出现fatal error C1060: compiler is out of heap space

问题描述 visual studio 2019编译opencascade 7.9.0时&#xff0c;出现编译错误 fatal error C1060: compiler is out of heap space 解决方案 修改vs2019并行编译的线程个数&#xff0c;默认是12个&#xff0c;我改成了4个&#xff0c;问题解决 Tools > Project and Sol…

vue跨域问题总结笔记

目录 一、Websocket跨域问题 1.nginx配置 2.VUE CLI代理 3.env.development配置 4.nginx日志 5.解决 一、解决跨域的几种常用方法 1.Vue CLI代理 2.JSONP 3.WebSocket 4.NGINX解决跨域问题 6.Java解决跨域 二、Vue跨域问题详解 1. 什么是跨域 2. 跨域的例子 3.…

数据结构篇:线性表的另一表达—链表之单链表(下篇)

目录 1.前言 2.是否使用二级指针 3.插入/删除 3.1 pos位置前/后插入 3.2 查找函数 3.3 pos位置删除 3.4 pos位置后面删除 3.5 函数的销毁 4.断言问题 4.1 断言pphead 4.2 断言*pphead 5.三个文件的代码 5.1 头文件 5.2 具体函数实现 5.3 测试用例 1.前言 之前是讲…

完美解决react-native文件直传阿里云oss问题一

前言 通常情况下&#xff0c;作为前后端分离的项目来说&#xff0c;文件上传是最寻常的功能之一。虽然每个公司选择的文件管理云库各不相同&#xff0c;但实现思路基本一致。我所在公司使用阿里云oss文件管理&#xff0c;之前服务端做了透传&#xff0c;但是由于每个测试环境的…