这是一个使用 Node.js 实现的 Model Context Protocol (MCP) 服务器,用于 Mapbox API。
Mapbox MCP Server 可以通过提供无缝访问 Mapbox 综合位置智能平台的方式,将任何 AI 代理或应用程序转变为具有地理空间感知能力的系统。有了这个服务器,您的 AI 可以理解并推理地点,导航物理世界,并访问丰富的地理空间数据,包括:
无论您是在构建一个 AI 旅行助手、物流优化器、基于位置的推荐系统,还是任何需要理解“在哪里”的应用程序,Mapbox MCP Server 都提供了实现这一目标的空间智能。您还可以在流行的客户端(如 Claude Desktop 和 VS Code)上启用它。详情如下:

使用此 MCP 服务器需要 Mapbox 访问令牌。
为了快速访问,您可以使用我们的托管 MCP 端点:
有关不同客户端的详细设置说明和 API 使用,请参阅 托管 MCP 服务器指南。
获取 Mapbox 访问令牌的方法:
有关 Mapbox 访问令牌的更多信息,请参阅 Mapbox 文档中的访问令牌。
对于不同的集成,详细的设置说明,请参阅以下指南:
设置后,尝试使用 Claude Desktop 或其他 MCP 客户端的这些提示:
MCP 服务器公开静态参考数据作为 MCP 资源。资源提供对数据的只读访问,客户端可以直接引用而无需调用工具。
URI 模式:mapbox://categories 或 mapbox://categories/{language}
访问可用于类别搜索工具的所有类别 ID 列表。类别可以用来按类型过滤搜索结果(例如,“餐厅”,“酒店”,“加油站”)。
示例:
mapbox://categories - 默认(英语)类别列表mapbox://categories/ja - 日语类别名称mapbox://categories/es - 西班牙语类别名称访问资源:
resources/read MCP 协议方法resource_reader_tool 和资源 URI此 MCP 服务器支持 MCP-UI,这是一个开放规范,允许兼容客户端渲染嵌入式 iframe 等交互式 UI 元素。这提供了更丰富的视觉体验,同时保持与不支持 MCP-UI 的客户端的完全向后兼容性。
MCP-UI 允许工具返回标准输出之外的交互式 UI 资源。兼容客户端可以将这些资源渲染为嵌入式 iframe,而不支持 MCP-UI 的客户端则忽略它们并使用标准输出。
MCP-UI 默认启用。要禁用它:
通过环境变量:
ENABLE_MCP_UI=false npm run build
通过命令行标志:
node dist/esm/index.js --disable-mcp-ui
在 Claude Desktop 配置中:
{
"mcpServers": {
"mapbox": {
"command": "npx",
"args": ["-y", "@mapbox/mcp-server", "--disable-mcp-ui"],
"env": {
"MAPBOX_ACCESS_TOKEN": "your_token_here"
}
}
}
}
更多详细信息,包括兼容客户端、技术实施细节和故障排除,请参阅 MCP-UI 文档。
为不支持原生 MCP 资源 API 的客户端提供访问 MCP 资源的途径。使用此工具读取资源,如类别列表。
参数:
uri:要读取的资源 URI(例如,mapbox://categories,mapbox://categories/ja)示例用法:
{"uri": "mapbox://categories"}{"uri": "mapbox://categories/ja"}注意:如果您的 MCP 客户端支持原生资源,请优先使用资源 API 直接读取以获得更好的性能。
⚠️ 已弃用:请改用带有 URI mapbox://categories 的 resource_reader_tool,或者如果您客户端支持 MCP 资源,则直接访问 mapbox://categories 资源。
此工具为不支持 MCP 资源或 resource_reader_tool 的客户端保留向后兼容性。
使用 Mapbox 矩阵 API 计算多个点之间的旅行时间和距离。功能包括:
使用 Mapbox 静态图像 API 生成静态地图图像。功能包括:
使用 Mapbox 搜索框类别搜索 API 进行类别搜索。功能包括:
使用 Mapbox 地理编码 V6 API 进行逆地理编码。功能包括:
使用 Mapbox 方向 API 获取路线方向。功能包括:
depart_at)适用于驾驶和驾驶-交通配置文件arrive_by)仅适用于驾驶配置文件使用 Mapbox 等时线 API 计算从某个位置出发,在指定时间内可到达的区域。功能包括:
使用 Mapbox 搜索框文本搜索 API 端点来驱动 POI、地址、地点和其他受该 API 支持类型的搜索和地理编码。 此工具整合了之前由 ForwardGeocodeTool 和 PoiSearchTool(来自此 MCP 服务器早期版本)提供的功能。
# 运行构建的镜像
npm run inspect:build
# 构建 Docker 镜像
docker build -t mapbox-mcp-server .
# 运行并检查服务器
npx @modelcontextprotocol/inspector docker run -i --rm --env MAPBOX_ACCESS_TOKEN="YOUR_TOKEN" mapbox-m- c-p-server
npx plop create-tool
# 提供工具名称(不带后缀,例如 Search)
此 MCP 服务器包括全面的 OpenTelemetry 追踪,用于生产可观测性:
# 1. 复制示例配置
cp .env.example .env
# 2. 编辑 .env 文件,添加您的 MAPBOX_ACCESS_TOKEN 并配置追踪
# 3. 启动 Jaeger 用于本地开发
npm run tracing:jaeger:start
# 4. 运行服务器(它会自动使用 .env 配置)
npm run inspect:build
# 5. 在 http://localhost:16686 查看跟踪
# 6. 完成后停止 Jaeger
npm run tracing:jaeger:stop
注意:服务器启动时会自动加载 .env 文件中的配置。.env.example 文件包括多个可观测性平台的配置示例。
在 .env.example 中包括配置示例的平台有:
云提供商:
SaaS 平台:
请参阅 docs/tracing.md 以获取完整的设置说明,包括:
追踪特性:
我们欢迎对 Mapbox MCP Server 的贡献!请在贡献前查阅我们的标准和指南:
所有贡献必须通过我们的 CI 检查和代码审查过程。请参阅 CLAUDE.md 以获取详细要求。
当您使用 MCP 服务器工具时,以下数据会直接从您的环境发送到 Mapbox API:
此 MCP 服务器由 Mapbox, Inc. 正式维护。我们提供: