Mapbox Developer MCP Server

Mapbox Developer MCP Server

Direct access to Mapbox developer APIs for AI assistants. Enables style management, token management, GeoJSON preview, and other developer tools for building Mapbox applications.

931

16 Tools

Packaged by
Requires Secrets
Add to Docker Desktop

Version 4.43 or later needs to be installed to add the server automatically

About

Mapbox Developer MCP Server MCP Server

Direct access to Mapbox developer APIs for AI assistants. Enables style management, token management, GeoJSON preview, and other developer tools for building Mapbox applications.

What is an MCP Server?

MCP Info

Image Building InfoDockerfile|https://github.com/mapbox/mcp-devkit-server/blob/main/Dockerfile

Docker Image built by|Docker Inc. Docker Scout Health Score| Docker Scout Health ScoreVerify Signature|COSIGN_REPOSITORY=mcp/signatures cosign verify mcp/mapbox-devkit --key https://raw.githubusercontent.com/docker/keyring/refs/heads/main/public/mcp/latest.pubLicence|MIT License

Available Tools (16)

Tools provided by this ServerShort Description
bounding_box_toolCalculate GeoJSON Bounding Box Tool
coordinate_conversion_toolConvert Coordinates Tool
country_bounding_box_toolGet Country Bounding Box Tool
create_style_toolCreate Mapbox Style Tool
create_token_toolCreate Mapbox Token Tool
delete_style_toolDelete Mapbox Style Tool
geojson_preview_toolPreview GeoJSON Data Tool
get_latest_mapbox_docs_toolGet Mapbox Documentation Tool
list_styles_toolList Mapbox Styles Tool
list_tokens_toolList Mapbox Tokens Tool
preview_style_toolPreview Mapbox Style Tool
retrieve_style_toolRetrieve Mapbox Style Tool
style_builder_toolBuild Mapbox Style JSON Tool
style_comparison_toolCompare Mapbox Styles Tool
tilequery_toolMapbox Tilequery Tool
update_style_toolUpdate Mapbox Style Tool

Tools Details

Tool: bounding_box_tool

Calculates bounding box of given GeoJSON content, returns as [minX, minY, maxX, maxY]

ParametersTypeDescription
geojsonstringGeoJSON content to calculate bounding box for

This tool is read-only. It does not modify its environment.


Tool: coordinate_conversion_tool

Converts coordinates between WGS84 (longitude/latitude) and EPSG:3857 (Web Mercator) coordinate systems

ParametersTypeDescription
coordinatesarrayArray of two numbers representing coordinates
fromstringSource coordinate system: wgs84 (longitude/latitude) or epsg3857 (Web Mercator)
tostringTarget coordinate system: wgs84 (longitude/latitude) or epsg3857 (Web Mercator)

This tool is read-only. It does not modify its environment.


Tool: country_bounding_box_tool

Gets bounding box for a country by its ISO 3166-1 country code, returns as [minX, minY, maxX, maxY].

ParametersTypeDescription
iso_3166_1stringISO 3166-1 country code (2-10 characters, e.g., "CN", "US", "AE" )

This tool is read-only. It does not modify its environment.


Tool: create_style_tool

Create a new Mapbox style

ParametersTypeDescription
namestringName for the new style
styleobjectMapbox style specification object

This tool interacts with external entities.


Tool: create_token_tool

Create a new Mapbox public access token with specified scopes and optional URL restrictions.

ParametersTypeDescription
notestringDescription of the token
scopesarrayArray of scopes/permissions for the public token. Valid scopes: styles:tiles, styles:read, fonts:read, datasets:read, vision:read.
allowedUrlsarrayoptionalOptional array of URLs where the token can be used (max 100)
expiresstringoptionalOptional expiration time in ISO 8601 format (maximum 1 hour in the future)

This tool interacts with external entities.


Tool: delete_style_tool

Delete a Mapbox style by ID

ParametersTypeDescription
styleIdstringStyle ID to delete

This tool may perform destructive updates.

This tool is idempotent. Repeated calls with same args have no additional effect.

This tool interacts with external entities.


Tool: geojson_preview_tool

Generate a geojson.io URL to visualize GeoJSON data. Returns only the URL link.

ParametersTypeDescription
geojsonstringGeoJSON data as a JSON string (e.g., {"type": "Point", "coordinates": [-122.4194, 37.7749]})

This tool is read-only. It does not modify its environment.


Tool: get_latest_mapbox_docs_tool

Get the latest official Mapbox documentation, APIs, SDKs, and developer resources directly from Mapbox. Always up-to-date, comprehensive coverage of all current Mapbox services including mapping, navigation, search, geocoding, and mobile SDKs. Use this for accurate, official Mapbox information instead of web search.

Tool: list_styles_tool

List styles for a Mapbox account. Use limit parameter to avoid large responses (recommended: limit=5-10). Use start parameter for pagination.

ParametersTypeDescription
limitnumberoptionalMaximum number of styles to return (recommended: 5-10 to avoid token limits, default: no limit)
startstringoptionalStart token for pagination (use the "start" value from previous response)

This tool is read-only. It does not modify its environment.

This tool interacts with external entities.


Tool: list_tokens_tool

List Mapbox access tokens for the authenticated user with optional filtering and pagination. When using pagination, the "start" parameter must be obtained from the "next_start" field of the previous response (it is not a token ID)

ParametersTypeDescription
defaultbooleanoptionalFilter to show only the default public token
limitnumberoptionalMaximum number of tokens to return (1-100)
sortbystringoptionalSort tokens by created or modified timestamp
startstringoptionalToken ID to start pagination from
usagestringoptionalFilter by token type: pk (public)

This tool is read-only. It does not modify its environment.

This tool interacts with external entities.


Tool: preview_style_tool

Generate preview URL for a Mapbox style using an existing public token

ParametersTypeDescription
accessTokenstringMapbox public access token (required, must start with pk.* and have styles:read permission). Secret tokens (sk.*) cannot be used as they cannot be exposed in browser URLs. Please use an existing public token or get one from list_tokens_tool or create one with create_token_tool with styles:read permission.
styleIdstringStyle ID to preview
titlebooleanoptionalShow title in the preview
zoomwheelbooleanoptionalEnable zoom wheel control

This tool is read-only. It does not modify its environment.


Tool: retrieve_style_tool

Retrieve a specific Mapbox style by ID

ParametersTypeDescription
styleIdstringStyle ID to retrieve

This tool is read-only. It does not modify its environment.

This tool interacts with external entities.


Tool: style_builder_tool

Generate Mapbox style JSON for creating new styles or updating existing ones.

The tool intelligently resolves layer types and filter properties using Streets v8 data. You don't need exact layer names - the tool automatically finds the correct layer based on your filters.

BASE STYLES: • standard: ALWAYS THE DEFAULT - Modern Mapbox Standard with best performance • Classic styles: streets-v12/light-v11/dark-v11/satellite-v9/outdoors-v12/satellite-streets-v12/navigation-day-v1/navigation-night-v1 Only use Classic when user explicitly says "create a classic style" or working with existing Classic style

STANDARD STYLE CONFIG: Use standard_config to customize the basemap: • Theme: default/faded/monochrome • Light: day/night/dawn/dusk • Show/hide: labels, roads, 3D buildings • Colors: water, roads, parks, etc.

LAYER ORDERING: • Layers are rendered in order - last layer in the array appears visually on top • The 'slot' parameter is OPTIONAL - by default, layer order in the array determines visibility • For Standard style, you can optionally use 'slot' to control placement:

  • No slot (default): Above all existing layers in the style
  • 'top': Behind Place and Transit labels
  • 'middle': Between basemap and labels
  • 'bottom': Below most basemap features

LAYER RENDERING: • render_type controls HOW to visualize the layer (line, fill, symbol, etc.) • Most important: Use render_type:"line" for outlines/borders even on polygon features • Default "auto" picks based on geometry, but override for specific effects:

  • Building outlines → render_type:"line" (not fill!)
  • Solid buildings → render_type:"fill" or "fill-extrusion" (3D)
  • Road lines → render_type:"line" (auto works too)
  • POI dots → render_type:"circle"
  • Labels → render_type:"symbol"

LAYER ACTIONS: • color: Apply a specific color • highlight: Make prominent • hide: Remove from view • show: Display with defaults

AUTO-DETECTION: The tool automatically finds the correct layer from your filter_properties. Examples: • { class: 'park' } → finds 'landuse' layer • { type: 'wetland' } → finds 'landuse_overlay' layer • { maki: 'restaurant' } → finds 'poi_label' layer • { toll: true } → finds 'road' layer • { admin_level: 0 } → finds 'admin' layer (for country boundaries) • { admin_level: 1 } → finds 'admin' layer (for state/province boundaries)

IMPORTANT LAYER NAMES: • Use "admin" for all boundaries (countries, states, etc.) • Use "building" (singular, not "buildings") • Use "road" for all streets, highways, paths

If a layer type is not recognized, the tool will provide helpful suggestions showing: • All available source layers from Streets v8 • Which fields are available in each layer • Examples of how to properly specify layers and filters

ParametersTypeDescription
layersarrayLayer configurations based on the mapbox-style-layers resource
base_stylestringoptionalBase style template. ALWAYS use "standard" as the default for all new styles. Standard style provides the best performance and modern features. Only use Classic styles (streets/light/dark/satellite/outdoors/navigation) when explicitly requested with "create a classic style" or when working with an existing Classic style.
global_settingsobjectoptionalGlobal style settings
standard_configobjectoptionalConfiguration for the base Mapbox Standard style. These properties customize the underlying Standard style features - you can still add your own custom layers on top using the layers parameter. The Standard style provides a rich basemap that you can configure and enhance with additional layers.
style_namestringoptionalName for the style

This tool is read-only. It does not modify its environment.


Tool: style_comparison_tool

Generate a comparison URL for comparing two Mapbox styles side-by-side

ParametersTypeDescription
accessTokenstringMapbox public access token (required, must start with pk.* and have styles:read permission). Secret tokens (sk.*) cannot be used as they cannot be exposed in browser URLs. Please use a public token or create one with styles:read permission.
afterstringMapbox style for the "after" side. Accepts: full style URL (mapbox://styles/username/styleId), username/styleId format, or just styleId if using your own styles
beforestringMapbox style for the "before" side. Accepts: full style URL (mapbox://styles/username/styleId), username/styleId format, or just styleId if using your own styles
latitudenumberoptionalLatitude coordinate for the initial map center (-90 to 90). Must be provided together with longitude and zoom.
longitudenumberoptionalLongitude coordinate for the initial map center (-180 to 180). Must be provided together with latitude and zoom.
zoomnumberoptionalInitial zoom level for the map view (0-22). If provided along with latitude and longitude, sets the initial map position.

This tool is read-only. It does not modify its environment.


Tool: tilequery_tool

Query vector and raster data from Mapbox tilesets at geographic coordinates

ParametersTypeDescription
latitudenumberLatitude coordinate to query
longitudenumberLongitude coordinate to query
bandsarrayoptionalSpecific band names to query (for rasterarray tilesets)
dedupebooleanoptionalWhether to deduplicate identical features (default: true)
geometrystringoptionalFilter results by geometry type
layersarrayoptionalSpecific layer names to query from the tileset
limitnumberoptionalNumber of features to return (1-50, default: 5)
radiusnumberoptionalRadius in meters to search for features (default: 0)
tilesetIdstringoptionalTileset ID to query (default: mapbox.mapbox-streets-v8)

This tool is read-only. It does not modify its environment.

This tool interacts with external entities.


Tool: update_style_tool

Update an existing Mapbox style

ParametersTypeDescription
styleIdstringStyle ID to update
namestringoptionalNew name for the style
styleobjectoptionalUpdated Mapbox style specification object

This tool interacts with external entities.


Use this MCP Server

{
  "mcpServers": {
    "mapbox-devkit": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "MAPBOX_ACCESS_TOKEN",
        "mcp/mapbox-devkit"
      ],
      "env": {
        "MAPBOX_ACCESS_TOKEN": "YOUR_API_KEY_HERE"
      }
    }
  }
}

Why is it safer to run MCP Servers with Docker?

Manual installation

You can install the MCP server using:

Installation for

Related servers