Token导航 LogoToken导航TokenDH.com
OpenStreetMap MCP Server logo
地图位置stdio官方级别未说明来源级核验

OpenStreetMap MCP Server

MCP Server

An OpenStreetMap MCP server implementation that enhances LLM capabilities with location-based services and geospatial data.

工具数

12

提示词数

0

GitHub Stars

191

资源数

0
PythonClaude位置天气ClaudeClaude DesktopCursorWindsurf

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

jagan-shanmugam

提供方

jagan-shanmugam

最后核验

2026/5/18 04:04

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install -e .

详细介绍

OpenStreetMap(OSM)MCP服务器

OpenStreetMap MCP服务器实现,通过基于位置的服务和地理空间数据增强LLM功能。

演示

汇点优化

Meeting Point Use Case

邻域分析

Neighborhood Analysis Use Case

停车场搜索

Parking Search Use Case

安装

在MCP主机中,如Claude Desktop、Cursor、Windsurf等。

  • osm-mcp-server:主服务器,可供公众使用。
  "mcpServers": {
    "osm-mcp-server": {
      "command": "uvx",
      "args": [
        "osm-mcp-server"
      ]
    }
  }

特性

该服务器为LLM提供了与OpenStreetMap数据交互的工具,使基于位置的应用程序能够:

  • 地理代码地址和地名坐标
  • 将地理编码坐标反向转换为地址
  • 查找附近的景点
  • 获取位置之间的路线指示
  • 在边界框内按类别搜索地点
  • 为多人推荐最佳会面地点
  • 探索区域并获取全面的位置信息
  • 查找附近的学校和教育机构
  • 分析家庭和工作之间的通勤选择
  • 找到带连接器和电源滤波的电动汽车充电站
  • 对房地产进行邻里宜居性分析
  • 查找停车设施及其可用性和费用信息

组件

资源

服务器实现基于位置的资源:

  • location://place/{query}:按名称或地址获取有关地点的信息
  • location://map/{style}/{z}/{x}/{y}:在指定坐标处获取样式化的地图图块

工具

服务器实现了几个地理空间工具:

  • geocode_address:将文本转换为地理坐标
  • reverse_geocode:将坐标转换为人类可读的地址
  • find_nearby_places:发现某个地点附近的兴趣点
  • get_route_directions:获取位置之间的逐向指示
  • search_category:查找某个区域中特定类别的位置
  • suggest_meeting_point:为多人找到最佳会面地点
  • explore_area:获取有关社区的全面数据
  • find_schools_nearby:将教育机构设在特定地点附近
  • analyze_commute:比较家庭和工作之间的交通选择
  • find_ev_charging_stations:通过过滤定位电动汽车充电基础设施
  • analyze_neighborhood:评估房地产社区的宜居性
  • find_parking_facilities:查找目的地附近的停车位

局部测试

运行服务器

要在本地运行服务器,请执行以下操作:

  1. 在开发模式下安装软件包:
pip install -e .
  1. 启动服务器:
osm-mcp-server
  1. 服务器将启动并监听标准输入/输出上的MCP请求。

使用示例客户端进行测试

存储库中包括两个示例客户端 examples/ 目录:

基本客户端示例

client.py 演示了OSM MCP服务器的基本用法:

python examples/client.py

这将:

  • 连接到本地运行的服务器
  • 获取有关旧金山的信息
  • 搜索该地区的餐馆
  • 通过进度跟踪检索综合地图数据

LLM集成示例

llm_client.py 提供了一个为LLM集成设计的辅助类:

python examples/llm_client.py

此示例显示了LLM如何使用位置助手:

  • 从文本查询中获取位置信息
  • 查找附近的景点
  • 获取位置之间的路线
  • 寻找最佳会面地点
  • 探索社区

写自己的客户

要创建自己的客户端,请执行以下操作:

  1. 导入MCP客户端:
from mcp.client import Client
  1. 使用服务器URL初始化客户端:
client = Client("http://localhost:8000")
  1. 调用工具或访问资源:
# Example: Geocode an address
results = await client.invoke_tool("geocode_address", {"address": "New York City"})

本地服务器的Claude桌面配置

在MacOS上: ~/Library/Application\ Support/Claude/claude_desktop_config.json 在Windows上: %APPDATA%/Claude/claude_desktop_config.json

Development/Unpublished Servers Configuration

"mcpServers": {
  "osm-mcp-server": {
    "command": "uv",
    "args": [
      "--directory",
      "/path/to/osm-mcp-server",
      "run",
      "osm-mcp-server"
    ]
  }
}

发展

建筑与出版

准备分发包裹:

  1. 同步依赖关系并更新锁文件:
uv sync
  1. 构建包分发:
uv build

这将在 dist/ 目录。

  1. 发布到PyPI:
uv publish

注意:您需要通过环境变量或命令标志设置PyPI凭据。

调试

由于MCP服务器在stdio上运行,调试可能具有挑战性。为了达到最佳调试效果 经验,我们强烈建议使用 MCP检查员.

您可以通过以下方式启动MCP检查器 使用此命令:

npx @modelcontextprotocol/inspector uv --directory /path/to/osm-mcp-server run osm-mcp-server

启动后,检查器将显示一个URL,您可以在浏览器中访问该URL以开始调试。

目录标签

目录标签

PythonClaude位置天气location-servicesmcpopenstreetmapllmanthropic-claudemcp-server地理信息系统本地部署位置服务地图数据路线规划兴趣点搜索

支持客户端

ClaudeClaude DesktopCursorWindsurf

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

12

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP