Openroute Mcp

io.github.vemonet由 GitHub 账号 vemonet 发布v0.0.4更新于 Oct 24, 2026

Plan routes using the OpenRouteService API, such as for hiking, mountain biking, or driving.

已验证STDIO仅桌面位置与生活媒体与设计

概览

AI 生成的概览

本地 MCP 服务器,通过 OpenRouteService API 规划徒步、骑行和驾车路线,并返回 GPX 文件与地图可视化。

可以做什么
根据地名查询坐标,并根据给定坐标查找附近地址,返回候选列表供选择。在起点与终点之间创建路线,可添加途经点,支持徒步、山地骑行、普通骑行和驾车,返回 GPX、PNG 和可交互 HTML 文件。在指定边界框内搜索兴趣点,可按名称筛选。查找起点与终点附近的已知步道,目前仅支持瑞士。按时间或距离计算从一个或多个起点可到达的区域,结果为 GeoJSON。
适用场景
适合让助手起草户外或驾车路线、沿已知步道建议途经点、查找附近设施,或估算在给定时间或距离内能到达的范围。
运行要求
以 Python 包形式在本地运行,通过 uvx 启动,需要 Python 环境和 uv。需要 OpenRouteService 账号,并通过环境变量 OPENROUTESERVICE_API_KEY 提供 API 密钥。需要访问 OpenRouteService API 的网络连接;已知步道搜索还会查询瑞士 geo.admin.ch 服务。
安装前请注意
API 密钥属于机密,通过环境变量传入,请勿写入共享配置文件。生成的路线仅供参考,不保证安全、合法或适用,出行前应使用官方地图和当前路况独立核实。默认会将路线文件保存到本地数据文件夹,除非关闭该功能。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Openroute Mcp,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

🗺️ OpenRoute MCP

[PyPI - Version] [PyPI - Python Version] [Tests] [MCP registry]

Model Context Protocol (MCP) server to plan routes using the OpenRouteService API, for activities such as hiking or mountain biking.

[!CAUTION]

DISCLAIMER: The routes generated by this service are provided for informational purposes only and are not guaranteed to be safe, legal, or suitable for your intended use. Always verify routes independently using official maps, local authorities, and current conditions before attempting any journey. Users assume all risks and responsibilities for their safety and compliance with local laws and regulations.

[!TIP]

Copy the whole GPX file returned as part of the tool call results, and use a service such as gpx.studio to load the generated GPX file on a map.

🛠️ Available tools

  • 📍 Find possible coordinates for a location
    • Arguments:
      • location (string): location to get coordinates for
    • Returns: list of 10 coordinates with available description to enable the agent figure out the right one
  • 🏠 Find possible locations (addresses) for given coordinates.
    • Arguments:
      • lon (float): Longitude of the location
      • lat (float): Latitude of the location
    • Returns: list of objects close to the given coordinates
  • 🗺️ Create a route from a starting location to a destination, optionally with waypoints
    • Arguments:
      • route_type (string): Type of route, e.g. "cycling-mountain", "cycling-regular", "foot-hiking", "driving-car"
      • from_coordinates (list[float]): Starting location as [longitude, latitude]
      • from_coordinates (list[float]): Destination location as [longitude, latitude]
      • waypoints (list[list[float]]): optional list of waypoints coordinates as [[lon, lat], ...]
    • Returns:
      • a resource file containing the route GPX (e.g. route://foot-hiking-98.gpx)
      • a resource file containing a PNG image visualization of the route (e.g. route://foot-hiking-98.png)
      • a resource file containing a HTML interactive visualization of the route (e.g. ui://foot-hiking-98.html) that can be directly opened with your browser
  • 📌 Search for Points of Interest (POIs) in an area
    • Arguments:
      • bounding_box_coordinates (list[list[float]]): coordinates defining a bounding box as [[min_lon, min_lat], [max_lon, max_lat]]
      • filters_name (list[string]): optional list of names to filter POIs, e.g. ["Gas station", "Restaurant"]
    • Returns: found POIs information
  • 🔎 Search for known routes close to a given start and end coordinates, this enables to suggest waypoints to go through known trails when creating a route. It is only working in Switzerland for now thanks to the Swiss Confederation api3.geo.admin.ch 🇨🇭
    • Arguments:
      • route_type (string): Type of route, e.g. "cycling-mountain", "cycling-regular", "foot-hiking", "driving-car"
      • from_coordinates (list[float]): Starting location as [longitude, latitude]
      • from_coordinates (list[float]): Destination location as [longitude, latitude]
    • Returns: known trails trace and description when available to help the agent build a nice route
  • ⏱️ Computes the area that can be reached within a given time or distance from one or more starting points.
    • Arguments:

      • coordinates_list: 1 or more coordinates to compute reachable area from as [[lon, lat], ...]
      • route_type: Type of route, e.g. "cycling-mountain", "cycling-regular", "foot-hiking", "driving-car"
      • range_type: Type of range, either time (in seconds) or distance (in metres)
      • area_range: maximum range value of the analysis in seconds for time and metres for distance. Or a comma separated list of specific range values
    • Returns: Reachable area information in GeoJSON format

🗃️ Available Resources

  • 🚏 Route files
    • URL pattern: route://{filename}
    • Type: GPX (.gpx), HTML (.html), or PNG (.png)
    • Description: Returns a previously generated route file by filename.
    • Produced by: create_route_from_to tool

🔌 Connect client to MCP server

Follow the instructions of your client, and use the /mcp URL of your deployed server (e.g. http://localhost:8888/mcp)

For example, for GitHub Copilot in VSCode, to add a new MCP server through the VSCode UI:

  • Open side panel chat (ctrl+shift+i or cmd+shift+i), and make sure the mode is set to Agent in the bottom right
  • Open command palette (ctrl+shift+p or cmd+shift+p), and search for MCP: Open User Configuration, this will open a mcp.json file

⌨️ Use stdio transport

[!IMPORTANT]

Login with GitHub to openrouteservice.org and get an API key that you can provide through the OPENROUTESERVICE_API_KEY environment variable.

sh
OPENROUTESERVICE_API_KEY=YYY uvx openroute-mcp

In VSCode mcp.json file you should have:

json
{  "servers": {    "openroute-mcp": {      "command": "uvx",      "args": [        "openroute-mcp"      ],      "env": {        "OPENROUTESERVICE_API_KEY": "YOUR_API_KEY"      }    }  }}

[!IMPORTANT]

Click on Start just on top of "openroute-mcp" to start the connection to the MCP server.

You can click the wrench and screwdriver button 🛠️ (Configure Tools...) to enable/disable specific tools

Full details of the CLI options:

sh
usage: openroute-mcp [-h] [--http] [--port PORT] [--openroute-api OPENROUTE_API] [--openroute-api-key OPENROUTE_API_KEY]                     [--data-folder DATA_FOLDER] [--no-save] [--no-img] [--no-html]
A Model Context Protocol (MCP) server for building routes using OpenRouteService.
options:  -h, --help            show this help message and exit  --http                Use Streamable HTTP transport  --port PORT           Port to run the server on  --openroute-api OPENROUTE_API                        OpenRouteService API URL (default: https://api.openrouteservice.org)  --openroute-api-key OPENROUTE_API_KEY                        OpenRouteService API key (default: taken from env var OPENROUTESERVICE_API_KEY)  --data-folder DATA_FOLDER                        Folder to save generated routes  --no-save             Don't save generated routes to disk (also disable image and HTML generation)  --no-img              Do not add PNG image visualization of the routes to the response (image not supported by all LLMs)  --no-html            Do not add HTML interactive map for routes to the response

🧑‍💻 Development

Checkout the CONTRIBUTING.md page for more details on running in development and contributing.

来源:README.md,提交 18499d5

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.0.4最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分