地图导航服务

Mapbox MCP Server 是一个提供地图导航、路线规划和地点搜索功能的服务器,适用于需要集成地图服务的应用开发。

  • by AidenYangX
  • TypeScript
  • 本地部署
  • 12 星标
  • 更新于
在 GitHub 查看 aidenyangx/mapbox-mcp-server

使用说明

Mapbox MCP服务器

用于Mapbox API的MCP服务器。

特性

导航工具

  1. mapbox_directions

    • 获取坐标之间的方向
    • 输入:
      • coordinates ({纬度:数字,经度:数字}[])
      • profile (可选):“行车”、“开车”、“步行”、“骑自行车”
    • 返回:路线详细信息,包括步骤、距离、持续时间
  2. mapbox_directions_by_places

    • 使用地名获取地点之间的路线
    • 输入:
      • places (string[]):地名数组
      • profile (可选):“行车”、“开车”、“步行”、“骑自行车”
      • language (可选):两个字母的语言代码(例如“zh”、“en”)
    • 退货:
      • 每个地点的地理编码结果
      • 路线细节,包括步骤、距离、持续时间
      • 处理过程中出现的任何错误
  3. mapbox_matrix

    • 计算坐标之间的行程时间和距离矩阵
    • 输入:
      • coordinates ({纬度:数字,经度:数字}[])
      • profile (可选):“驾驶”、“步行”、“骑自行车”
      • annotations (可选):“持续时间”、“距离”、“持续时间、距离”
      • sources (可选):源坐标索引
      • destinations (可选):目的地坐标索引
    • 返回值:点之间的持续时间和/或距离矩阵
  4. mapbox_matrix_by_places

    • 使用地点名称计算地点之间的旅行时间和距离矩阵
    • 输入:
      • places (string[]):地名数组(2-25个位置)
      • profile (可选):“驾驶”、“步行”、“骑自行车”
      • annotations (可选):“持续时间”、“距离”、“持续时间、距离”
      • language (可选):两个字母的语言代码
      • sources (可选):来源地索引
      • destinations (可选):目的地索引
    • 退货:
      • 每个地点的地理编码结果
      • 持续时间和/或距离矩阵
      • 处理过程中出现的任何错误

搜索工具

  1. mapbox_geocoding
    • 搜索地点并将地址转换为坐标
    • 输入:
      • searchText (string):要搜索的地点或地址
      • limit (可选):最大结果数(1-10)
      • types (可选):按地点类型(国家、地区、地点等)过滤
      • language (可选):两个字母的语言代码
      • fuzzyMatch (可选):启用/禁用模糊匹配
    • 返回:详细的位置信息,包括坐标和属性

Claude桌面集成

将此配置添加到您的Claude Desktop配置文件中(通常位于 ~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "mapbox-mcp-server": {
      "command": "node",
      "args": ["/absolute/path/to/mapbox-mcp-server/build/index.js"],
      "env": {
        "MAPBOX_ACCESS_TOKEN": "your-api-key"
      }
    }
  }
}

设置

先决条件

  • Node.js 16或更高版本
  • TypeScript 4.5或更高版本
  • 有效的Mapbox API密钥

API密钥

按照说明获取Mapbox API密钥 这里.

将API密钥设置为环境变量:

export MAPBOX_ACCESS_TOKEN=your_api_key_here

速率限制

  • 方向API:每分钟300次请求
  • 矩阵API:
    • 每分钟60次驾驶/步行/骑自行车请求
    • 每分钟30个行车请求
  • 地理编码API:每分钟600个请求

部署

结构

在mapbox-mcp服务器中,我们使用以下结构来管理服务器的处理程序:

  • src/server/handlers/base.ts:所有处理程序的基类
  • src/server/registry.ts:所有处理程序的注册表
  • src/server/main.ts:服务器的主要入口点

每个功能模块都遵循以下结构:

src/
├── types/          # Type definitions
├── schemas/        # Zod schemas for validation
├── tools/
│   ├── definitions/  # Tool definitions
│   └── handlers/     # Tool implementations
└── server/
    └── handlers/     # Handler classes

类图:


工艺流程图:

错误处理

所有工具都实现了全面的错误处理:

  • 输入验证错误
  • API请求失败
  • 速率限制错误
  • 服务特定错误(例如,找不到路线、坐标无效)

许可证

此MCP服务器根据MIT许可证获得许可。这意味着您可以根据MIT许可证的条款和条件自由使用、修改和分发软件。有关更多详细信息,请参阅项目存储库中的LICENSE文件。