# Mapbox

```json
{
  "name": "Mapbox",
  "slug": "mapbox",
  "url": "https://composio.dev/toolkits/mapbox",
  "markdown_url": "https://composio.dev/toolkits/mapbox.md",
  "logo_url": "https://logos.composio.dev/api/mapbox",
  "categories": [
    "data & analytics"
  ],
  "is_composio_managed": false,
  "updated_at": "2026-05-12T10:18:31.242Z"
}
```

![Mapbox logo](https://logos.composio.dev/api/mapbox)

## Description

Securely connect your AI agents and chatbots (Claude, ChatGPT, Cursor, etc) with Mapbox MCP or direct API to search locations, generate maps, calculate routes, and analyze geospatial data through natural language.

## Summary

Mapbox is a platform providing powerful maps, navigation, and location services for developers. Integrate Mapbox for dynamic, interactive mapping and geospatial insights in your apps.

## Categories

- data & analytics

## Toolkit Details

- Tools: 32

## Images

- Logo: https://logos.composio.dev/api/mapbox

## Authentication

- **Api Key**
  - Type: `api_key`
  - Description: Api Key authentication for Mapbox.
  - Setup:
    - Configure Api Key credentials for Mapbox.
    - Use the credentials when creating an auth config in Composio.

## Suggested Prompts

- Batch geocode these 10 addresses
- Get directions from Times Square to JFK
- Reverse geocode this latitude and longitude
- Embed a styled map for our office location

## Supported Tools

| Tool slug | Name | Description |
|---|---|---|
| `MAPBOX_GEOCODE_BATCH_V6` | Batch Geocode V6 | Tool to perform batch geocoding with up to 1000 queries in a single request. Use when you need to geocode multiple locations efficiently (forward, reverse, or structured). Supports mixing query types in the same batch. |
| `MAPBOX_GEOCODE_FORWARD_V5` | Forward Geocode V5 | Tool to search for places by name or address using Mapbox Geocoding v5 API (forward geocoding). Use when you need to convert place names or addresses to geographic coordinates using the v5 endpoint. |
| `MAPBOX_GEOCODING_BATCH` | Batch Geocoding | Tool to perform batch forward or reverse geocoding for multiple locations. Use when you need consistent geocoding of up to 50 queries in one call. |
| `MAPBOX_GEOCODING_FORWARD` | Forward Geocoding | Tool to convert free-form or structured address into geographic coordinates and place features. Use when you need forward geocoding from text or address components. |
| `MAPBOX_GEOCODING_PERMANENT_FORWARD` | Permanent Forward Geocoding | Tool to perform permanent forward geocoding. Use when you need enterprise-grade permanent geocoding after confirming account privileges. |
| `MAPBOX_GEOCODING_PERMANENT_REVERSE` | Permanent Reverse Geocoding | Tool to perform permanent reverse geocoding. Use after obtaining coordinates to get cacheable place data. Example: lon=-73.989, lat=40.733 |
| `MAPBOX_GEOCODING_REVERSE` | Reverse Geocoding | Tool to reverse geocode coordinates into place names. Use after obtaining coordinates. |
| `MAPBOX_GET_ACCESS_TOKEN` | Get Access Token | Tool to extract and validate Mapbox access token from connection metadata. Use when you need a valid token for downstream actions. |
| `MAPBOX_GET_ISOCHRONE` | Get Isochrone | Tool to calculate areas reachable within a specified amount of time or distance from a location. Use when you need to visualize travel time or distance zones for routing analysis. |
| `MAPBOX_GET_MAP_MATCHING` | Get Map Matching | Tool to snap fuzzy GPS traces to roads on the road network. Use when you need to clean up inaccurate location traces for display or analysis. |
| `MAPBOX_GET_OPTIMIZATION_V1` | Get Optimization V1 | Tool to calculate optimal driving routes and trips that visit a set of waypoints. Use when you need to find the best order to visit multiple locations with optimized routing. |
| `MAPBOX_GET_SPRITE` | Get Sprite | Tool to retrieve a sprite image or its JSON document from a Mapbox style. Use when you need sprite assets for rendering map icons. Sprites are collections of small icons used in map styles. The JSON format returns metadata about icon positions and dimensions within the sprite sheet, while the PNG format returns the actual image. Sprite sheets optimize performance by combining multiple icons into a single image. |
| `MAPBOX_GET_STATIC_IMAGE` | Get Static Image | Request a static map image from a Mapbox Studio style. Returns a PNG or JPEG image of the specified map area with customizable parameters including location, zoom level, camera angle, and optional overlays like markers or GeoJSON features. Use when you need to generate static map images for embedding in documents, emails, or web pages without interactive map functionality. |
| `MAPBOX_GET_STATIC_TILES` | Get Static Tiles | Tool to retrieve raster tiles from a Mapbox Studio style. Use when you need map tiles for specific coordinates and zoom levels. Returns PNG or JPG raster tiles that can be assembled to create map visualizations. Tiles follow the XYZ tiling scheme where the world is divided into a grid at each zoom level. Supports retina/high-DPI displays via the @2x suffix. |
| `MAPBOX_GET_TOKEN` | Get Token Information | Tool to retrieve information about a Mapbox access token and validate its status. Use when you need to check token validity or retrieve token metadata. |
| `MAPBOX_GET_VECTOR_TILES` | Get Vector Tiles | Tool to retrieve vector tiles from Mapbox-hosted vector tilesets. Use when you need tile data for mapping applications at specific zoom levels and coordinates. |
| `MAPBOX_POST_MAP_MATCHING` | Map Matching (POST) | Tool to snap GPS coordinates to the road network using POST method for longer coordinate lists. Use when you have GPS traces to match to roads (2-100 coordinates). |
| `MAPBOX_QUERY_TILE_FEATURES` | Query Tile Features | Tool to retrieve data about specific features from vector tilesets based on a location. Use when you need to query tileset features at a geographic point, such as finding buildings, roads, or points of interest near coordinates. |
| `MAPBOX_REQUEST_STYLE_EMBED_HTML` | Request Style Embed HTML | Retrieve embeddable HTML for a Mapbox style that can be embedded in an iframe. Returns a complete HTML document with Mapbox GL JS code that renders an interactive map with the specified style. Useful for quickly embedding Mapbox maps into web pages without custom JavaScript code. |
| `MAPBOX_RETRIEVE_DIRECTIONS` | Retrieve Directions | Tool to retrieve directions between waypoints. Use when you need navigation routes with optional turn-by-turn instructions after confirming origin and destination. |
| `MAPBOX_RETRIEVE_FONT_GLYPH_RANGES` | Retrieve Font Glyph Ranges | Tool to retrieve font glyph ranges as PBF tiles. Use when you have confirmed the font name, codepoint range, and valid token. |
| `MAPBOX_RETRIEVE_MARKER` | Retrieve Marker | Tool to retrieve a standalone marker image without any background map. Returns a PNG image file of the specified marker type. Use when you need to obtain marker icons for display or reference purposes. |
| `MAPBOX_RETRIEVE_MATRIX` | Retrieve Matrix | Retrieve a travel time and distance matrix between multiple locations. Use this tool when you need to calculate travel times and/or distances between many origin-destination pairs efficiently (e.g., comparing routes from multiple starting points to multiple destinations, finding the nearest location from a set, or optimizing multi-stop routing). Returns matrices showing durations (in seconds) and distances (in meters) between all coordinate pairs. |
| `MAPBOX_RETRIEVE_SEARCHBOX_PLACE` | Retrieve Searchbox Place Details | Tool to retrieve full details for a specific place by its Mapbox ID. Use when you have a mapbox_id from a search suggestion and need complete place information. |
| `MAPBOX_RETRIEVE_STYLE` | Retrieve Style | Retrieves the complete Mapbox style specification as JSON, including all layers, sources, sprites, and configuration. A Mapbox style defines how a map is rendered, including data sources, layer styling, fonts, and sprites. This action returns the full style specification conforming to the Mapbox Style Specification, which can be used with Mapbox GL JS, mobile SDKs, or for analyzing map configurations. Use this action when you need to: - Inspect or analyze a map style's configuration - Retrieve style definitions for programmatic rendering - Examine layers, sources, and styling rules - Get complete style specifications for custom map implementations |
| `MAPBOX_RETRIEVE_STYLE_WMTS` | Retrieve Style WMTS | Retrieve a WMTS (Web Map Tile Service) capabilities document for a Mapbox style. This action returns an OGC-compliant WMTS XML document that describes how to access map tiles for the specified style. The document includes tile matrix sets, supported coordinate systems (EPSG:3857), and tile URL templates. Use this when integrating Mapbox styles with desktop GIS applications (ArcGIS, QGIS, CARTO, Tableau) or any WMTS-compliant mapping client. The WMTS endpoint works with both Mapbox's official styles (e.g., streets-v12, satellite-v9) and custom styles created in Mapbox Studio. |
| `MAPBOX_RETRIEVE_TILESET_METADATA` | Retrieve Tileset Metadata | Tool to retrieve metadata for a Mapbox tileset. Use when you need TileJSON details including bounds, zooms, and layer info. |
| `MAPBOX_REVERSE_GEOCODE_V6` | Reverse Geocoding V6 | Tool to convert geographic coordinates to place names using Geocoding v6 API. Use when you need to perform reverse geocoding from latitude/longitude coordinates. |
| `MAPBOX_REVERSE_SEARCHBOX` | Search Box Reverse Geocoding | Tool to convert coordinates to places using the Search Box API (reverse geocoding). Use when you need to find place names, addresses, or points of interest for given coordinates. |
| `MAPBOX_SEARCH_BOX_FORWARD` | Search Box Forward | Tool to search for places by name or address using the Search Box API. Use when you need to find locations, addresses, or points of interest based on a text query. |
| `MAPBOX_SEARCH_CATEGORY` | Search by Category | Tool to search for places by category (e.g., restaurants, hotels, coffee shops). Use when you need to find POIs in a specific category, optionally filtered by location, bounding box, or proximity. |
| `MAPBOX_SUGGEST_SEARCHBOX` | Search Box Suggest | Tool to get autocomplete suggestions for a partial search query. Use when you need address or place suggestions as users type, before retrieving full details. |

## Supported Triggers

None listed.

## Installation and MCP Setup

### Path 1: SDK Installation

#### Path 1, Step 1: Install Composio

Install the Composio SDK
```python
pip install composio_openai
```

```typescript
npm install @composio/openai
```

#### Path 1, Step 2: Initialize Composio and Create Tool Router Session

Import and initialize Composio client, then create a Tool Router session
```python
from openai import OpenAI
from composio import Composio
from composio_openai import OpenAIResponsesProvider

composio = Composio(provider=OpenAIResponsesProvider())
openai = OpenAI()
session = composio.create(user_id='your-user-id')
```

```typescript
import OpenAI from 'openai';
import { Composio } from '@composio/core';
import { OpenAIResponsesProvider } from '@composio/openai';

const composio = new Composio({
  provider: new OpenAIResponsesProvider(),
});
const openai = new OpenAI({});
const session = await composio.create('your-user-id');
```

#### Path 1, Step 3: Execute Mapbox Tools via Tool Router with Your Agent

Get tools from Tool Router session and execute Mapbox actions with your Agent
```python
tools = session.tools
response = openai.responses.create(
  model='gpt-4.1',
  tools=tools,
  input=[{
    'role': 'user',
    'content': 'Get driving directions from Times Square to Central Park'
  }]
)
result = composio.provider.handle_tool_calls(
  response=response,
  user_id='your-user-id'
)
print(result)
```

```typescript
const tools = session.tools;
const response = await openai.responses.create({
  model: 'gpt-4.1',
  tools: tools,
  input: [{
    role: 'user',
    content: 'Get driving directions from Times Square to Central Park'
  }],
});
const result = await composio.provider.handleToolCalls(
  'your-user-id',
  response.output
);
console.log(result);
```

### Path 2: MCP Server Setup

#### Path 2, Step 1: Install Composio

Install the Composio SDK and Claude Agent SDK
```python
pip install composio claude-agent-sdk
```

```typescript
npm install @composio/core ai @ai-sdk/openai @ai-sdk/mcp
```

#### Path 2, Step 2: Create Tool Router Session

Initialize the Composio client and create a Tool Router session
```python
from composio import Composio
from claude_agent_sdk import ClaudeSDKClient, ClaudeAgentOptions

composio = Composio(api_key='your-composio-api-key')
session = composio.create(user_id='your-user-id')
url = session.mcp.url
```

```typescript
import { Composio } from '@composio/core';

const composio = new Composio({ apiKey: 'your-api-key' });

console.log("Creating Tool Router session...");
const { mcp } = await composio.create('your-user-id');
console.log(`Tool Router session created: ${mcp.url}`);
```

#### Path 2, Step 3: Connect to AI Agent

Use the MCP server with your AI agent
```python
import asyncio

options = ClaudeAgentOptions(
    permission_mode='bypassPermissions',
    mcp_servers={
        'tool_router': {
            'type': 'http',
            'url': url,
            'headers': {
                'x-api-key': 'your-composio-api-key'
            }
        }
    },
    system_prompt='You are a helpful assistant with access to Mapbox tools.',
    max_turns=10
)

async def main():
    async with ClaudeSDKClient(options=options) as client:
        await client.query('Get driving directions from Times Square to Central Park in New York City')
        async for message in client.receive_response():
            if hasattr(message, 'content'):
                for block in message.content:
                    if hasattr(block, 'text'):
                        print(block.text)

asyncio.run(main())
```

```typescript
import { openai } from '@ai-sdk/openai';
import { experimental_createMCPClient as createMCPClient } from '@ai-sdk/mcp';
import { generateText, stepCountIs } from 'ai';

const client = await createMCPClient({
  transport: {
    type: 'http',
    url: mcp.url,
    headers: { 'x-api-key': 'your-composio-api-key' }
  }
});

const tools = await client.tools();

const { text } = await generateText({
  model: openai('gpt-4o'),
  tools,
  messages: [{ role: 'user', content: 'Get driving directions from Times Square to Central Park in New York City' }],
  stopWhen: stepCountIs( 5 )
});

console.log(`Agent: ${text}`);
```

## Why Use Composio?

### 1. AI Native Mapbox Integration

- Supports both Mapbox MCP and direct API based integrations
- Structured, LLM-friendly schemas for reliable tool execution
- Rich coverage for geocoding, mapping, and navigation features

### 2. Managed Auth

- Centralized API key management with secure storage
- Easy rotation and environment-specific credentials
- Quickly onboard users without sharing sensitive keys

### 3. Agent Optimized Design

- Tools tuned for natural language map queries and results
- Reliable execution and full logging of agent interactions

### 4. Enterprise Grade Security

- Fine-grained RBAC for Mapbox tool usage
- Scoped access so agents only reach what they need
- Complete audit trail of every map, search, or route request

## Use Mapbox with any AI Agent Framework

Choose a framework you want to connect Mapbox with:

- [OpenAI Agents SDK](https://composio.dev/toolkits/mapbox/framework/open-ai-agents-sdk)
- [Claude Agent SDK](https://composio.dev/toolkits/mapbox/framework/claude-agents-sdk)
- [Claude Code](https://composio.dev/toolkits/mapbox/framework/claude-code)
- [Claude Cowork](https://composio.dev/toolkits/mapbox/framework/claude-cowork)
- [Codex](https://composio.dev/toolkits/mapbox/framework/codex)
- [OpenClaw](https://composio.dev/toolkits/mapbox/framework/openclaw)
- [Hermes](https://composio.dev/toolkits/mapbox/framework/hermes-agent)
- [Google ADK](https://composio.dev/toolkits/mapbox/framework/google-adk)
- [LangChain](https://composio.dev/toolkits/mapbox/framework/langchain)
- [Vercel AI SDK](https://composio.dev/toolkits/mapbox/framework/ai-sdk)
- [Mastra AI](https://composio.dev/toolkits/mapbox/framework/mastra-ai)
- [LlamaIndex](https://composio.dev/toolkits/mapbox/framework/llama-index)
- [CrewAI](https://composio.dev/toolkits/mapbox/framework/crew-ai)
- [Pydantic AI](https://composio.dev/toolkits/mapbox/framework/pydantic-ai)
- [AutoGen](https://composio.dev/toolkits/mapbox/framework/autogen)

## Related Toolkits

- [Excel](https://composio.dev/toolkits/excel) - Microsoft Excel is a robust spreadsheet application for organizing, analyzing, and visualizing data. It's the go-to tool for calculations, reporting, and flexible data management.
- [21risk](https://composio.dev/toolkits/_21risk) - 21RISK is a web app built for easy checklist, audit, and compliance management. It streamlines risk processes so teams can focus on what matters.
- [Abstract](https://composio.dev/toolkits/abstract) - Abstract provides a suite of APIs for automating data validation and enrichment tasks. It helps developers streamline workflows and ensure data quality with minimal effort.
- [Addressfinder](https://composio.dev/toolkits/addressfinder) - Addressfinder is a data quality platform for verifying addresses, emails, and phone numbers. It helps you ensure accurate customer and contact data every time.
- [Agenty](https://composio.dev/toolkits/agenty) - Agenty is a web scraping and automation platform for extracting data and automating browser tasks—no coding needed. It streamlines data collection, monitoring, and repetitive online actions.
- [Ambee](https://composio.dev/toolkits/ambee) - Ambee is an environmental data platform providing real-time, hyperlocal APIs for air quality, weather, and pollen. Get precise environmental insights to power smarter decisions in your apps and workflows.
- [Ambient weather](https://composio.dev/toolkits/ambient_weather) - Ambient Weather is a platform for personal weather stations with a robust API for accessing local, real-time, and historical weather data. Get detailed environmental insights directly from your own sensors for smarter apps and automations.
- [Anonyflow](https://composio.dev/toolkits/anonyflow) - Anonyflow is a service for encryption-based data anonymization and secure data sharing. It helps organizations meet GDPR, CCPA, and HIPAA data privacy compliance requirements.
- [Api ninjas](https://composio.dev/toolkits/api_ninjas) - Api ninjas offers 120+ public APIs spanning categories like weather, finance, sports, and more. Developers use it to supercharge apps with real-time data and actionable endpoints.
- [Api sports](https://composio.dev/toolkits/api_sports) - Api sports is a comprehensive sports data platform covering 2,000+ competitions with live scores and 15+ years of stats. Instantly access up-to-date sports information for analysis, apps, or chatbots.
- [Apify](https://composio.dev/toolkits/apify) - Apify is a cloud platform for building, deploying, and managing web scraping and automation tools called Actors. It lets you automate data extraction and workflow tasks at scale—no infrastructure headaches.
- [Autom](https://composio.dev/toolkits/autom) - Autom is a lightning-fast search engine results data platform for Google, Bing, and Brave. Developers use it to access fresh, low-latency SERP data on demand.
- [Beaconchain](https://composio.dev/toolkits/beaconchain) - Beaconchain is a real-time analytics platform for Ethereum 2.0's Beacon Chain. It provides detailed insights into validators, blocks, and overall network performance.
- [Big data cloud](https://composio.dev/toolkits/big_data_cloud) - BigDataCloud provides APIs for geolocation, reverse geocoding, and address validation. Instantly access reliable location intelligence to enhance your applications and workflows.
- [Bigpicture io](https://composio.dev/toolkits/bigpicture_io) - BigPicture.io offers APIs for accessing detailed company and profile data. Instantly enrich your applications with up-to-date insights on 20M+ businesses.
- [Bitquery](https://composio.dev/toolkits/bitquery) - Bitquery is a blockchain data platform offering indexed, real-time, and historical data from 40+ blockchains via GraphQL APIs. Get unified, reliable access to complex on-chain data for analytics, trading, and research.
- [Brightdata](https://composio.dev/toolkits/brightdata) - Brightdata is a leading web data platform offering advanced scraping, SERP APIs, and anti-bot tools. It lets you collect public web data at scale, bypassing blocks and friction.
- [Builtwith](https://composio.dev/toolkits/builtwith) - BuiltWith is a web technology profiler that uncovers the technologies powering any website. Gain actionable insights into analytics, hosting, and content management stacks for smarter research and lead generation.
- [Byteforms](https://composio.dev/toolkits/byteforms) - Byteforms is an all-in-one platform for creating forms, managing submissions, and integrating data. It streamlines workflows by centralizing form data collection and automation.
- [Cabinpanda](https://composio.dev/toolkits/cabinpanda) - Cabinpanda is a data collection platform for building and managing online forms. It helps streamline how you gather, organize, and analyze responses.

## Frequently Asked Questions

### Do I need my own developer credentials to use Mapbox with Composio?

Yes, Mapbox requires you to configure your own API key credentials. Once set up, Composio handles secure credential storage and API request handling for you.

### Can I use multiple toolkits together?

Yes! Composio's Tool Router enables agents to use multiple toolkits. [Learn more](https://docs.composio.dev/tool-router/overview).

### Is Composio secure?

Composio is SOC 2 and ISO 27001 compliant with all data encrypted in transit and at rest. [Learn more](https://trust.composio.dev).

### What if the API changes?

Composio maintains and updates all toolkit integrations automatically, so your agents always work with the latest API versions.

---
[See all toolkits](https://composio.dev/toolkits) · [Composio docs](https://docs.composio.dev/llms.txt)
