使用说明
MCP_位置智能-瓦利德奇多! 🙃
mcp定位智能
WaliedChitos MCP服务器用于位置智能
该项目提供了一个符合模型上下文协议(MCP)的服务器,该服务器公开了来自各种位置智能地图数据和服务提供商的功能,如HERE平台、谷歌地图平台、Mapbox和OSM,作为LLM的工具。
视觉
通过标准化的MCP接口与地理空间上下文和位置智能服务(如直接和反向地理编码、发现地点、方向/路线等)交互,使LLM具有位置智能和合理的响应。
支持的MCP工具(到目前为止,这个列表应该还在增长)
- HERE平台服务:
-
地理编码:
- MCP工具:
here_platform_geocode - 说明: 通过HERE平台直接地理编码服务将给定的自由文本地址处理成坐标”,
- 参考: 地理编码和搜索API v7
- 输入:
address(字符串)
- 输出: JSON格式
location(lat/lng坐标),address(格式化地址),以及id
- MCP工具:
-
反向地理编码:
- MCP工具:
here_platform_reverse_geocode - 说明: 通过HERE平台反向地理编码服务将给定的一对坐标处理成地址
- 参考: 地理编码和搜索API v7
- 输入:
latitude(编号)longitude(编号)
- 输出: JSON格式
address(格式化地址),type(反向地理编码结果类型),position(lat/lng坐标),以及id
- MCP工具:
-
带速度限制的反向地理编码:
- MCP工具:
here_platform_reverse_geocode_with_speed_limit - 说明: 通过HERE平台反向地理编码服务,将给定的GPS观测坐标和方位值处理成街道地址和限速
- 参考: 地理编码和搜索API v7
- 输入:
latitude(编号)longitude(编号)bearing(编号)
- 输出: JSON格式
address(格式化地址),type(反向地理编码结果类型;可能是街道),speed limit(报告位置的限速),position(lat/lng坐标),以及id
- MCP工具:
-
AB路由:
- MCP工具:
here_platform_ab_routing - 说明: 通过HERE Platform AB路由服务获取两点之间的路线信息
- 此处API: 路由API v8
- 输入:
origin(“纬度、经度”格式的字符串)destination(“纬度、经度”格式的字符串)transportMode(字符串:“汽车”、“行人”、“自行车”、“卡车”、“踏板车”、“公共汽车”、“出租车”)
- 输出: JSON格式
summary(持续时间和长度),polyline(路线坐标),以及actions(导航说明)
- MCP工具:
-
公共交通路线:
- MCP工具:
here_platform_pt_routing - 说明: 通过HERE平台公共交通路线服务获取两点之间的公共交通路线信息
- 此处API: 公共交通路线API v8
- 输入:
origin(“纬度、经度”格式的字符串)destination(“纬度、经度”格式的字符串)
- 输出: JSON格式
summary(持续时间和长度),polyline(路线坐标),以及actions(导航说明)
- MCP工具:
-
发现地点:
- MCP工具:
here_platform_discover_places - 说明: 通过HERE平台发现端点发现位置周围的地点(例如,电动汽车充电站、公交车站等)
- 参考: 地理编码和搜索API v7
- 输入:
latitude(编号)longitude(编号)query(字符串,例如“电动汽车充电站”、“公交车站”)
- 输出: 地点列表,每个地点都有
name,address,position(lat/lng坐标),以及category
- MCP工具:
-
交通事故:
- MCP工具:
here_platform_traffic_incidents - 说明: 通过HERE平台实时交通服务检索位置周围缓冲区内的交通事件
- 此处API: 交通API v7
- 输入:
center(“纬度、经度”格式的字符串)radius(单位:米)
- 输出: 事件列表
description,startTime,endTime,type,以及criticality
- MCP工具:
-
地图图像:
- MCP工具:
here_platform_map_image - 说明: 以给定的缩放级别显示给定位置坐标周围的静态地图图像,具有给定的样式,如白天、夜晚、。..等通过HERE Map Image v3 API
- 此处API: 地图图像API v3
- 输入:
center(“纬度、经度”格式的字符串)zoomLevel(数字,缩放级别范围从0(全局级别)到20(最大放大级别)。默认值为14。)style(字符串:“explore.day”、“explore.night”、“explore.Stellite.day”、“lite.day”,“lite.night”,“lite.Stellite.day”,“logistics.day”和“logistics.night”
- 输出: 渲染的地图图像
- MCP工具:
让事情进展顺利
克隆存储库以在本地运行MCP服务器。
我假设您已经安装了node.js,如果没有,请按照下面的预请求步骤进行操作
- 预请求
-
安装Node.js和npm 按照以下说明操作 Node.js网站 安装最新版本的Node.js和npm。
-
注册您的HERE平台https://platform.here.com/,创建应用程序,并生成API密钥
- 运行repo
- 克隆存储库
git clone https://github.com/WaliedCheetos/mcp_location-intelligence.git
- 安装依赖项
cd mcp_location-intelligence
npm install
- 构建项目
cd mcp_location-intelligence
npm run build
- 运行MCP服务器
#if you have not set any environment variables in you server logic then the the command would look like the following
npx .
#if you have set any environment variables in you server logic (const env_var_name = process.env.ENV_VAR_NAME;) then the the command would look like the following
ENV_VAR_NAME=*** npx .
值得注意的是 npx . 命令无论如何都会调用“npm run build”命令,该命令构建MCP服务器项目,然后启动服务器。它应该打印以下消息:
location intelligence MCP Server running on stdio
这意味着MCP服务器正在运行并准备接受MCP请求。 为了停止服务器,您可以从启动它的同一个终端使用“Ctrl-C”。通常,我们在客户端应用程序(如Claude)中配置MCP服务器。正确配置后,客户端将自动启动服务器。
发展
为了更容易调试,建议使用 MCP检测工具。它启动本地Web服务器。在给定输入参数的情况下,可以很容易地检查每个工具调用是否返回预期结果。对于此项目,可以运行以下命令来启动MCP检查器工具:
cd mcp_location-intelligence
#if you have not set any environment variables in you server logic then the the command would look like the following
npm run build && npx @modelcontextprotocol/inspector node build/index.js
#if you have set any environment variables in you server logic (const env_var_name = process.env.ENV_VAR_NAME;) then the the command would look like the following
npm run build && npx @modelcontextprotocol/inspector npx @modelcontextprotocol/inspector -e ENV_VAR_NAME=*** node build/index.js
MCP客户端配置
- 将MCP服务器配置添加到MCP客户端,
我将使用Calude桌面(https://www.claude.com/download)举个例子,虽然有很多类似的工具可以免费使用,比如但不限于我最喜欢的AnythingLLM桌面(https://anythingllm.com/desktop)
“设置”->“开发人员”->“编辑配置”
{
"mcpServers": {
"location-intelligence": {
"command": "npx",
"args": [
"-y",
"/<You local checkout directory of this project>"
],
"env": {
"ENV_VAR_NAME": "<YOUR_ENV_VAR_VALUE>"
}
}
}
}
此特定项目的配置示例
{ “mcpServers”:{ “位置情报”:{ “命令”:“npx”, “args”:[ y “/PATH/mcp_location智能/” ] } } }
- 重新启动Claude桌面,您现在应该能够看到已配置的服务