路线距离计算服务

基于OSRM和Nominatim的路线距离计算服务,提供驾驶距离、行驶时间计算和地址坐标转换功能。

  • by dodbrian
  • TypeScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 dodbrian/osmaps-mcp

使用说明

osmaps mcp

MCP服务器,用于使用OSRM和Nominim计算路线距离。

特性

  • 路线距离:计算两个地点之间的行驶距离和行驶时间
  • 地理编码:使用Nominim(OpenStreetMap)将地址转换为坐标
  • 协调支持:接受地址和lat、lng坐标
  • 不需要API密钥:使用免费的OpenStreetMap服务

需求

  • Node.js 18+

安装

npm install
npm run setup

这将构建项目并链接 osmaps-mcp 二进制全局。

配置

运行后 npm run setup,配置您的MCP客户端以使用 osmaps-mcp:

克劳德桌面版

添加到您的Claude Desktop配置文件中:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

视窗: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "osmaps": {
      "command": "osmaps-mcp"
    }
  }
}

克劳德代码

通过CLI添加:

claude mcp add --transport stdio osmaps -- osmaps-mcp

或添加到 ~/.claude.json:

{
  "mcpServers": {
    "osmaps": {
      "command": "osmaps-mcp"
    }
  }
}

光标

创建 .cursor/mcp.json 在项目根目录中:

{
  "mcpServers": {
    "osmaps": {
      "command": "osmaps-mcp"
    }
  }
}

帆板运动

添加到您的Windsurf MCP配置中:

{
  "mcpServers": {
    "osmaps": {
      "command": "osmaps-mcp"
    }
  }
}

开源代码

添加到您的 opencode.json 配置文件:

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "osmaps": {
      "type": "local",
      "command": ["osmaps-mcp"],
      "enabled": true
    }
  }
}

Gemini CLI

通过CLI添加:

gemini mcp add osmaps osmaps-mcp -t stdio

或者添加到Gemini CLI配置文件中:

{
  "mcpServers": {
    "osmaps": {
      "command": "osmaps-mcp"
    }
  }
}

工具

获取路线距离

计算两个地点之间的行驶路线距离和行驶时间。

参数:

  • origin -起始位置(地址或纬度,lng坐标)
  • destination -结束位置(地址或纬度,lng坐标)

例子:

origin: "Berlin, Germany"
destination: "Paris, France"

退货: 452.31 km, 265 min

坐标示例:

origin: "52.5200,13.4050"
destination: "48.8566,2.3522"

使用的API

  • OSRM -开源路由计算机(免费,无API密钥)
  • 提名 -OpenStreetMap地理编码(免费,无API密钥)