如何从零开始构建一个高德地图的MCP服务,涵盖了以下内容:
MCP服务的基本概念和配置
如何使用高德地图API进行IP定位和周边搜索
如何编写MCP服务的核心功能,包括配置管理、日志系统和高德地图SDK
如何编写MCP服务的主程序和入口
如何调试MCP服务,包括使用Inspector和编写测试代码
如何使用Makefile管理项目命令
如何配置MCP客户端连接到我们的服务
配置开发环境
⚠ 请务必根据自己的操作系统调整命令,powershell 和 bash 的命令语法有所不同。
作者使用的是windows+git终端。 本教程前半段与官方基本无异,可查考官方文档中server开发示例。
安装UV
创建虚拟环境初始化项目
在 src/build_mcp/config.yaml 文件中添加以下内容:
⚠ config.yaml 文件需要放在 src/build_mcp/ 目录下,这样在加载配置时可以正确找到。
安装代码
⚠ 首次安装代码时需要使用 pip install -e . 命令,这样可以将当前目录作为一个可编辑的包安装到虚拟环境中。这样在开发过程中对代码的修改会立即生效,无需重新安装。
通过以下命令来运行 MCP 服务:
启动stdio协议的MCP服务:
启动streamable-http协议的MCP服务:
2.使用Inspector进行测试
Inspector是官方提供的一个MCP服务调试工具,可以通过它来启动一个本地web界面,在界面中可以直接调用MCP服务的工具。 相对更加直观和易用,比较推荐这种方式,详情可以查看官方文档。
如何使用这个MCP服务?
首先你得拥有一个MCP客户端,目前市场上各种类型得MCP客户端层出不穷,至于用什么全凭你的爱好了。
这里有一份非常详细的MCP客户端使用攻略,是github上一个非常棒的项目:MCP客户端使用攻略
选择一个客户端下载安装,然后我们对我们开发的服务进行配置。
配置Stdio协议的MCP服务
⚠ 要注意本地UV环境,如果安装了多个UV可能会导致环境混乱,这是开发过程中比较头疼的一点,要自己注意。
配置Streamable-HTTP协议的MCP服务
启动项目
启动成功后会在8000端口启动一个HTTP服务。
客户端配置
local-only server
The server can only run on the client's local machine because it depends on local resources.
Enables AI assistants to perform IP geolocation and nearby place searches using the Amap (Gaode Maps) API in China.