Skip to main content
Glama
tomtom-international

TomTom MCP Server

Official

TomTom Maps MCP Server

NPM Version License

The TomTom Maps MCP Server simplifies geospatial development by providing seamless access to TomTom’s location services, including search, routing, traffic and static maps data. It enables easy integration of precise and accurate geolocation data into AI workflows and development environments.

Demo

TomTom Maps MCP Demo

Related MCP server: mcp-tomtom

Table of Contents


Remote MCP Server (No Installation Required)

Public Preview — The TomTom Maps Remote MCP Server is currently in public preview.

The easiest way to get started is to connect directly to TomTom's hosted MCP Server — no Node.js, Docker, or local setup needed.

Endpoint:

https://mcp.tomtom.com/maps

Prerequisites:

Generic MCP Client Configuration

Add the following to your MCP client configuration:

{
  "mcpServers": {
    "tomtom-mcp": {
      "type": "http",
      "url": "https://mcp.tomtom.com/maps",
      "headers": {
        "tomtom-api-key": "your_api_key_here"
      }
    }
  }
}

Selecting a Map Backend

Add the optional tomtom-maps-backend header to choose your backend:

TomTom Maps (default):

{
  "mcpServers": {
    "tomtom-mcp": {
      "type": "http",
      "url": "https://mcp.tomtom.com/maps",
      "headers": {
        "tomtom-api-key": "your_api_key_here",
        "tomtom-maps-backend": "tomtom-maps"
      }
    }
  }
}

TomTom Orbis Maps:

{
  "mcpServers": {
    "tomtom-mcp": {
      "type": "http",
      "url": "https://mcp.tomtom.com/maps",
      "headers": {
        "tomtom-api-key": "your_api_key_here",
        "tomtom-maps-backend": "tomtom-orbis-maps"
      }
    }
  }
}

If the tomtom-maps-backend header is omitted, the server defaults to TomTom Maps.

VS Code (GitHub Copilot)

Create or edit .vscode/mcp.json in your workspace:

{
  "servers": {
    "tomtom-mcp": {
      "type": "http",
      "url": "https://mcp.tomtom.com/maps",
      "headers": {
        "tomtom-api-key": "your_api_key_here"
      }
    }
  }
}

Claude Desktop

The quickest option is to install the pre-built extension — see the Claude Desktop Setup guide for details.

Alternatively, configure Claude Desktop to use the remote server directly by editing your configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "tomtom-mcp": {
      "type": "http",
      "url": "https://mcp.tomtom.com/maps",
      "headers": {
        "tomtom-api-key": "your_api_key_here"
      }
    }
  }
}

Note: If your MCP client does not support remote HTTP connections with custom headers, use the local setup instead.


Security Notice

Keeping local deployments of the TomTom Maps MCP Server up-to-date is the responsibility of the MCP client/operator. TomTom publishes updates to address known vulnerabilities, but failing to apply updates, patches, or recommended security configurations to your local instance may expose it to known vulnerabilities.

Quick Start

Prerequisites

  • Node.js 22.x

  • TomTom API key

How to obtain a TomTom API key:

  1. Create a developer account on TomTom Developer Portal and Sign-in

  2. Go to API & SDK Keys in the left-hand menu.

  3. Click the red Create Key button.

  4. Select all available APIs to ensure full access, assign a name to your key, and click Create.

For more details, visit the TomTom API Key Management Documentation.

Installation

npm install @tomtom-org/tomtom-mcp@latest

# or run directly without installing
npx @tomtom-org/tomtom-mcp@latest

Configuration

Set your TomTom API key using one of the following methods:

# Option 1: Use a .env file (recommended)
echo "TOMTOM_API_KEY=your_api_key" > .env

# Option 2: Environment variable
export TOMTOM_API_KEY=your_api_key

# Option 3: Pass as CLI argument
TOMTOM_API_KEY=your_api_key npx @tomtom-org/tomtom-mcp@latest

Environment Variables

Variable

Description

Default

TOMTOM_API_KEY

Your TomTom API key

-

MAPS

Backend to use: tomtom-maps (TomTom Maps) or tomtom-orbis-maps (TomTom Orbis Maps)

tomtom-maps

PORT

Port for the HTTP server

3000

LOG_LEVEL

Logging level: debug, info, warn, or error. Use debug for local development to see all logs

info


Usage

Stdio Mode (Default - for AI assistants like Claude):

# Start MCP server via stdio
npx @tomtom-org/tomtom-mcp@latest

HTTP Mode (for web applications and API integration):

pnpm run build            # Build first (required)
pnpm run start:http
# or run the built binary directly
node bin/tomtom-mcp-http.js

When running in HTTP mode, you need to include your API key in the tomtom-api-key header. You can also optionally set the maps backend per-request using the tomtom-maps-backend header:

tomtom-api-key: <API_KEY>
tomtom-maps-backend: tomtom-maps        # or tomtom-orbis-maps

Note: The tomtom-maps-backend header is only used when the server is started without the MAPS env var (dual-backend mode). If MAPS is set at startup, the header is ignored and the server uses the fixed backend.

For example, to make a request using curl:

curl --location 'http://localhost:3000/mcp' \
--header 'Accept: application/json,text/event-stream' \
--header 'tomtom-api-key: <API KEY>' \
--header 'Content-Type: application/json' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "tomtom-geocode",
    "arguments": {
        "query": "Amsterdam Central Station"
    }
  },
  "jsonrpc": "2.0",
  "id": 24
}'

The Docker setup is also configured to use this HTTP mode with the same authentication method.

Docker Mode (recommended):

# Option 1: Using docker run directly
# Note: TomTom Maps is the default backend (same as npm package)
docker run -p 3000:3000 ghcr.io/tomtom-international/tomtom-maps-mcp:latest

# To use TomTom Orbis Maps backend instead:
docker run -p 3000:3000 -e MAPS=tomtom-orbis-maps ghcr.io/tomtom-international/tomtom-maps-mcp:latest

# Option 2: Using Docker Compose (recommended for development)
# Clone the repository first
git clone https://github.com/tomtom-international/tomtom-maps-mcp.git
cd tomtom-maps-mcp

# Start the service (uses TomTom Maps backend by default)
docker compose up

Both Docker options run the server in HTTP mode. Pass your API key via the tomtom-api-key header as shown in the HTTP Mode curl example above.


Integration Guides

TomTom Maps MCP Server can be easily integrated into various AI development environments and tools.

These guides help you integrate the MCP server with your tools and environments:


Available Tools

Tool

Description

Documentation

tomtom-geocode

Convert addresses to coordinates with global coverage

https://developer.tomtom.com/geocoding-api/documentation/geocode

tomtom-reverse-geocode

Get addresses from GPS coordinates

https://developer.tomtom.com/reverse-geocoding-api/documentation/reverse-geocode

tomtom-fuzzy-search

Intelligent search with typo tolerance

https://developer.tomtom.com/search-api/documentation/search-service/fuzzy-search

tomtom-poi-search

Find specific business categories

https://developer.tomtom.com/search-api/documentation/search-service/points-of-interest-search

tomtom-nearby

Discover services within a radius

https://developer.tomtom.com/search-api/documentation/search-service/nearby-search

tomtom-routing

Calculate optimal routes between locations

https://developer.tomtom.com/routing-api/documentation/tomtom-maps/calculate-route

tomtom-waypoint-routing

Multi-stop route planning Routing API

https://developer.tomtom.com/routing-api/documentation/tomtom-maps/calculate-route

tomtom-reachable-range

Determine coverage areas by time/distance

https://developer.tomtom.com/routing-api/documentation/tomtom-maps/calculate-reachable-range

tomtom-traffic

Real-time incidents data

https://developer.tomtom.com/traffic-api/documentation/traffic-incidents/traffic-incidents-service

tomtom-static-map

Generate custom map images

https://developer.tomtom.com/map-display-api/documentation/raster/static-image

tomtom-dynamic-map

Advanced map rendering with custom markers, routes, and traffic visualization

https://developer.tomtom.com/map-display-api/documentation/raster/map-tile


TomTom Orbis Maps (optional backend)

By default the MCP tools use TomTom Maps APIs listed above. We also support using TomTom Orbis Maps for the same tools. To enable TomTom Orbis Maps for all tools set the environment variable MAPS=tomtom-orbis-maps.

Note: The Orbis Maps backend includes all the tools from TomTom Maps plus additional Orbis-exclusive tools: tomtom-ev-routing, tomtom-search-along-route, tomtom-area-search, tomtom-ev-search, and tomtom-data-viz. The tomtom-static-map tool is only available with the default TomTom Maps backend.

Tool

Description

TomTom Orbis Maps API (documentation)

tomtom-geocode

Forward geocoding: address → coordinates

https://developer.tomtom.com/geocoding-api/documentation/tomtom-orbis-maps/geocode

tomtom-reverse-geocode

Reverse geocoding: coordinates → address

https://developer.tomtom.com/reverse-geocoding-api/documentation/tomtom-orbis-maps/reverse-geocode

tomtom-fuzzy-search

General search with typo tolerance and suggestions

https://developer.tomtom.com/search-api/documentation/tomtom-orbis-maps/search-service/fuzzy-search

tomtom-poi-search

Points of Interest (category-based) search

https://developer.tomtom.com/search-api/documentation/tomtom-orbis-maps/search-service/points-of-interest-search

tomtom-nearby

Find POIs near a coordinate within a radius

https://developer.tomtom.com/search-api/documentation/tomtom-orbis-maps/search-service/nearby-search

tomtom-routing

Calculate optimal route between two points

https://developer.tomtom.com/routing-api/documentation/tomtom-orbis-maps/calculate-route

tomtom-waypoint-routing

Multi-stop / waypoint route planning

https://developer.tomtom.com/routing-api/documentation/tomtom-orbis-maps/calculate-route

tomtom-reachable-range

Compute coverage area by time or distance budget

https://developer.tomtom.com/routing-api/documentation/tomtom-orbis-maps/calculate-reachable-range

tomtom-traffic

Traffic incidents and related details

https://developer.tomtom.com/traffic-api/documentation/tomtom-orbis-maps/incident-details

tomtom-dynamic-map

Advanced map rendering with custom markers, routes, and traffic visualization

https://developer.tomtom.com/map-display-api/documentation/tomtom-orbis-maps/raster-tile

tomtom-ev-routing

Plan long-distance EV routes with automatic charging stop optimization

https://developer.tomtom.com/routing-api/documentation/tomtom-orbis-maps/long-distance-ev-routing

tomtom-search-along-route

Find POIs (restaurants, gas stations, hotels, etc.) along a route corridor

https://developer.tomtom.com/search-api/documentation/tomtom-orbis-maps/search-service/search-along-route

tomtom-area-search

Search for places within a geographic area (circle, polygon, or bounding box)

https://developer.tomtom.com/search-api/documentation/tomtom-orbis-maps/search-service/geometry-search

tomtom-ev-search

Find EV charging stations with real-time availability and connector types

https://developer.tomtom.com/search-api/documentation/tomtom-orbis-maps/search-service/ev-charging-stations-availability

tomtom-data-viz

Visualize custom GeoJSON data on an interactive TomTom basemap (markers, heatmaps, clusters, choropleths)

https://developer.tomtom.com/map-display-api/documentation/tomtom-orbis-maps/raster-tile

How dynamic map tool works

The dynamic map tool fetches raster tiles from TomTom (either TomTom Maps or TomTom Orbis Maps), then uses skia-canvas (server-side) to:

  • stitch map tiles into a single canvas at the appropriate zoom level;

  • add markers, routes, polygons, and other overlays;

  • render the final composited image.

The server converts the rendered image to PNG and returns it as a Base64 string.

References:


Debug UI

A built-in debug UI lets you visually test MCP tools and their interactive map widgets without needing an AI client.

Quick Start

pnpm run ui

This starts both the MCP HTTP server (port 3000) and the debug UI host (port 8080). Open http://localhost:8080 in your browser.

Features

  • Tool browser — searchable sidebar listing all available tools, with icons distinguishing map-enabled tools from plain tools

  • Pre-filled examples — each tool loads with example parameters (including show_ui: true for map widgets)

  • Live map widgets — tools with UI resources render interactive TomTom maps directly in the browser

  • Response metadata — latency, payload size, estimated token count, content parts, and timestamps for every call

  • Dark / light mode — toggle with the theme button or follows system preference

  • Keyboard shortcutsCmd+Enter to run, Cmd+K to search tools

Requirements

  • The MCP server must be running in HTTP mode (handled automatically by pnpm run ui)

  • A valid TOMTOM_API_KEY in your .env file

  • To see map widgets, use the TomTom Orbis Maps backend (MAPS=tomtom-orbis-maps in .env)

Building the UI separately

The UI host is a workspace package (tomtom-mcp-app-host in ui/), so the root pnpm install already installed its dependencies.

pnpm run ui:build                              # Build the UI
pnpm --filter tomtom-mcp-app-host start        # Start only the UI host (assumes MCP server is already running)

Local Development

This project uses pnpm (>=11) as its package manager. Install it with npm install -g pnpm or corepack enable. Linting and formatting are handled by Biome.

Setup

git clone https://github.com/tomtom-international/tomtom-maps-mcp.git

cd tomtom-maps-mcp

pnpm install

cp .env.example .env      # Add your API key in .env

pnpm run build            # Build TypeScript files

node ./bin/tomtom-mcp.js   # Start the MCP server

Testing

pnpm run build              # Build TypeScript
pnpm test                   # Run all tests
pnpm run test:all           # All tests (unit + stdio + http)

Testing Requirements

⚠️ Important: All tests require a valid API key in .env as they make real API calls (not mocked). This will consume your API quota.

Project Structure

src/
├── apps/              # MCP App UI resources
├── handlers/          # Request handlers
├── schemas/           # Validation schemas
├── services/          # TomTom API wrappers
├── tools/             # MCP tool definitions
├── types/             # TypeScript type definitions
├── utils/             # Utilities
├── createServer.ts    # MCP Server creation logic
├── index.ts           # Main entry point (stdio)
└── indexHttp.ts       # HTTP server entry point

Troubleshooting

API Key Issues

echo $TOMTOM_API_KEY  # Check if set

Test Failures

ls -la .env          # Verify .env exists
cat .env             # Check API key

Build Issues

pnpm run build           # Rebuild
pnpm store prune         # Clear cache

Forbidden (403) Errors

If you see an error stating "missing permissions", it means your API key does not have access to the TomTom Orbis Maps or EV services.

Note: TomTom Orbis Maps and certain EV routing features are currently in Public Preview. They may not be available on all developer accounts by default.

How to troubleshoot:

  1. Log in to the TomTom Developer Portal.

  2. Ensure all available products are selected for your API key.

  3. If you still encounter 403 errors when using MAPS=tomtom-orbis-maps, your account may not yet have access to the Orbis preview. You can continue using the standard tomtom-maps backend in the meantime.


Contributing & Feedback

We welcome contributions to the TomTom Maps MCP Server! Please see CONTRIBUTING.md for details on how to submit pull requests, report issues, and suggest improvements.

All contributions must adhere to our Code of Conduct and be signed-off according to the Developer Certificate of Origin (DCO).

Open issues on the GitHub repo

Security

Please see our Security Policy for information on reporting security vulnerabilities and our security practices.

License

This project is licensed under the Apache License 2.0 - see the LICENSE.md file for details.

Copyright (C) 2025 TomTom Navigation B.V.

Available Tools

10 tools
tomtom-geocodeD
ParametersJSON Schema
NameRequiredDescriptionDefault
addressRangesNoInclude address ranges in the response
btmRightNoBottom-right coordinates of bounding box (format: 'lat,lon'). Must be used with topLeft
countrySetNoLimit results to specific countries using ISO codes. Examples: 'US', 'FR,GB', 'CA,US'
entityTypeSetNoFilter results by geographic entity types. Valid values: PostalCodeArea, CountryTertiarySubdivision, CountrySecondarySubdivision, MunicipalitySubdivision, MunicipalitySecondarySubdivision, Country, CountrySubdivision, Neighbourhood, Municipality. Note: This parameter is for geographic entities only, not POIs. For POI filtering, use categorySet instead
extendedPostalCodesForNoInclude extended postal codes for specific index types. Examples: 'PAD', 'PAD,Addr', 'POI'
geometriesNoInclude geometries information in the response
languageNoPreferred language for results using IETF language tags. Examples: 'en-US', 'fr-FR', 'de-DE', 'es-ES'
latNoCenter latitude for location bias
limitNoMaximum number of results to return (1-100). Default: 5
lonNoCenter longitude for location bias
mapcodesNoInclude mapcode information in the response. Mapcodes represent specific locations within a few meters and are designed to be short, easy to recognize and communicate. Options: Local, International, Alternative. Examples: 'Local' (local mapcode only), 'Local,Alternative' (multiple types). Accepts array of string(s).
queryYesFull address to convert to coordinates. Include as much detail as possible (street, city, country) for accurate results. Examples: '1600 Pennsylvania Ave, Washington DC', 'Eiffel Tower, Paris, France'
radiusNoSearch radius in meters when lat/lon provided
timeZoneNoUsed to indicate the mode in which the timeZone object should be returned. Values: iana Mode shows the IANA ID which allows the user to determine the current time zone for the POI. Usage examples: timeZone=iana
topLeftNoTop-left coordinates of bounding box (format: 'lat,lon'). Must be used with btmRight
viewNoGeopolitical view for disputed territories. Options: 'Unified', 'AR', 'IL', 'IN', 'MA', 'PK', 'RU', 'TR', 'CN'

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tomtom-nearbyD
ParametersJSON Schema
NameRequiredDescriptionDefault
addressRangesNoInclude address ranges in the response
brandSetNoFilter by brand names. Examples: 'Starbucks,Peet\'s', 'Marriott,Hilton'. Use quotes for brands with commas.
categorySetNoPOI category filter. Common: '7315' (restaurants), '7309' (gas), '9663' (EV charging), '7311' (hotels), '9376' (parking).
chargingAvailabilityNoInclude charging availability information for EV stations
connectorSetNoEV connector types: 'IEC62196Type2CableAttached', 'Chademo', 'TeslaConnector'
countrySetNoLimit results to specific countries using ISO codes. Examples: 'US', 'FR,GB', 'CA,US'
entityTypeSetNoFilter results by entity types
extNoExtended parameters for the search
extendedPostalCodesForNoInclude extended postal codes for specific index types. Examples: 'PAD', 'PAD,Addr', 'POI'
fuelAvailabilityNoInclude fuel availability information for gas stations
fuelSetNoFuel types: 'Petrol', 'Diesel', 'LPG', 'Hydrogen', 'E85'
geometriesNoInclude geometries information in the response
languageNoPreferred language for results using IETF language tags. Examples: 'en-US', 'fr-FR', 'de-DE', 'es-ES'
latYesCenter latitude for nearby search. Use precise coordinates from geocoding.
limitNoMaximum number of results to return (1-100). Default: 5
lonYesCenter longitude for nearby search. Use precise coordinates from geocoding.
mapcodesNoInclude mapcode information in the response. Mapcodes represent specific locations within a few meters and are designed to be short, easy to recognize and communicate. Options: Local, International, Alternative. Examples: 'Local' (local mapcode only), 'Local,Alternative' (multiple types). Accepts array of string(s).
maxFuzzyLevelNoMaximum fuzzy matching level (1-4)
maxPowerKWNoMaximum charging power in kW for EV stations
minFuzzyLevelNoMinimum fuzzy matching level (1-4)
minPowerKWNoMinimum charging power in kW for EV stations
ofsNoOffset for pagination of results
openingHoursNoList of opening hours for a POI (Points of Interest).Value: `nextSevenDays` Mode shows the opening hours for next week, starting with the current day in the local time of the POI. Usage example: openingHours=nextSevenDays
parkingAvailabilityNoInclude parking availability information
radiusNoSearch radius in meters. Default: 1000. Recommended: 500 (walking), 1000 (local), 5000 (driving), 20000 (wide area).
relatedPoisNoInclude related points of interest
roadUseNoInclude road usage information
sortNoSort options for results
timeZoneNoUsed to indicate the mode in which the timeZone object should be returned. Values: iana Mode shows the IANA ID which allows the user to determine the current time zone for the POI. Usage examples: timeZone=iana
vehicleTypeSetNoA comma-separated list of vehicle types that could be used to restrict the result to the Points Of Interest of specific vehicles. If vehicleTypeSet is specified, the query can remain empty. Only POIs with a proper vehicle type will be returned. Value: A comma-separated list of vehicle type identifiers (in any order). When multiple vehicles types are provided, only POIs that belong to (at least) one of the vehicle types from the provided list will be returned. Available vehicle types: Car , Truck
viewNoGeopolitical view for disputed territories. Options: 'Unified', 'AR', 'IL', 'IN', 'MA', 'PK', 'RU', 'TR', 'CN'

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tomtom-reachable-rangeD
ParametersJSON Schema
NameRequiredDescriptionDefault
accelerationEfficiencyNoEfficiency during acceleration (0-1).
auxiliaryPowerInLitersPerHourNoAuxiliary power consumption for combustion vehicles in L/hr.
auxiliaryPowerInkWNoAuxiliary power consumption in kW for electric vehicles.
avoidNoRoute features to avoid. May increase travel time. Options: 'tollRoads','motorways','ferries','unpavedRoads','carpools','alreadyUsedRoads'. Accepts array of string(s).
chargeMarginsInkWhNoComma-separated charge margins in kWh for route planning.
constantSpeedConsumptionInLitersPerHundredkmNoCombustion speed-to-consumption mappings: '50,6.3:130,11.5' (speed in km/h, consumption in L/100km).
constantSpeedConsumptionInkWhPerHundredkmNoEV speed-to-consumption mappings format: '50,8.2:130,21.3' (speed in km/h, consumption in kWh/100km).
consumptionInkWhPerkmAltitudeGainNoEnergy used per km of altitude gain.
currentChargeInkWhNoCurrent EV battery charge in kWh. Required for EV routing.
currentFuelInLitersNoCurrent fuel level in liters for combustion vehicles.
decelerationEfficiencyNoEfficiency during deceleration (0-1).
departAtNoDeparture time in ISO format (e.g., '2025-06-24T14:30:00Z').
distanceBudgetInMetersNoMaximum travel distance in meters. Examples: 5000 (5km), 10000 (10km), 20000 (20km). Either time or distance budget required.
downhillEfficiencyNoEfficiency during downhill driving (0-1).
energyBudgetInkWhNoMaximum energy budget in kWh for electric vehicles. Example: 10 (10 kWh).
fuelBudgetInLitersNoMaximum fuel budget in liters for combustion vehicles. Example: 5 (5 liters).
fuelEnergyDensityInMJoulesPerLiterNoFuel energy density in megajoules per liter.
hillinessNoPreference for avoiding hills. Use 'low' for flatter routes. This can be only used when `routeType` parameter is set to `thrilling`.
maxChargeInkWhNoMaximum EV battery capacity in kWh. Required for EV routing.
maxFerryLengthInMetersNoMaximum allowed ferry length in meters.
originYesStarting point for reachable area calculation. Typically current location or point of interest.
recuperationInkWhPerkmAltitudeLossNoEnergy recovered per km of altitude loss.
reportNoSpecifies which data should be reported for diagnostic purposes. A possible value is: effectiveSettings. Reports the effective parameters or data used when calling the API. In the case of defaulted parameters, the default will be reflected where the parameter was not specified by the caller. Default value: effectiveSettings
routeTypeNoRoute optimization: 'fastest' (time-optimized), 'shortest' (distance-optimized), 'eco' (fuel-efficient).
timeBudgetInSecNoMaximum travel time in seconds. Examples: 900 (15min), 1800 (30min), 3600 (1h). Either time or distance budget required.
trafficNoInclude real-time traffic data for more accurate reachable area calculation.
travelModeNoTravel mode affects reachable area shape. Default: 'car'. Note: Pedestrian/bicycle modes not supported by API.
uphillEfficiencyNoEfficiency during uphill driving (0-1).
vehicleAdrTunnelRestrictionCodeNoADR tunnel restriction code for hazardous materials.
vehicleAxleWeightNoVehicle axle weight in kg for weight-restricted roads.
vehicleCommercialNoCommercial vehicle flag. Affects road access restrictions.
vehicleEngineTypeNoEngine type for fuel/energy consumption calculation.
vehicleHeightNoVehicle height in meters. Used to avoid low bridges.
vehicleLengthNoVehicle length in meters. Affects maneuverability restrictions.
vehicleLoadTypeNoCargo type for hazardous materials routing.
vehicleMaxSpeedNoMaximum vehicle speed in km/h for commercial routing.
vehicleNumberOfAxlesNoNumber of axles on the vehicle. Used for toll calculations and restrictions.
vehicleWeightNoVehicle weight in kg. Important for truck routing restrictions.
vehicleWidthNoVehicle width in meters. Used to avoid narrow roads.
windingnessNoPreference for avoiding winding roads. Use 'low' for straighter routes. This can be only used when `routeType` parameter is set to `thrilling`.

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tomtom-reverse-geocodeD
ParametersJSON Schema
NameRequiredDescriptionDefault
addressRangesNoInclude address ranges in the response
allowFreeformNewLineNoAllow newlines in freeform addresses
countrySetNoLimit results to specific countries using ISO codes. Examples: 'US', 'FR,GB', 'CA,US'
entityTypeSetNoFilter by entity types: 'Country', 'Municipality', etc.
extendedPostalCodesForNoInclude extended postal codes for specific index types. Examples: 'PAD', 'PAD,Addr', 'POI'
geometriesNoInclude geometries information in the response
headingNoHeading direction in degrees (0-360) for improved accuracy on roads
languageNoPreferred language for results using IETF language tags. Examples: 'en-US', 'fr-FR', 'de-DE', 'es-ES'
latYesLatitude coordinate (-90 to +90). Precision to 4+ decimal places recommended.
limitNoMaximum number of results to return (1-100). Default: 5
lonYesLongitude coordinate (-180 to +180). Precision to 4+ decimal places recommended.
mapcodesNoInclude mapcode information in the response. Mapcodes represent specific locations within a few meters and are designed to be short, easy to recognize and communicate. Options: Local, International, Alternative. Examples: 'Local' (local mapcode only), 'Local,Alternative' (multiple types). Accepts array of string(s).
maxResultsNoMaximum results to return (alias for limit)
ofsNoOffset for pagination of results
radiusNoSearch radius in meters. Default: 100
returnAddressNamesNoInclude address names in the response
returnCommuneNoInclude commune information in the results
returnMatchTypeNoInclude information about the type of geocoding match achieved
returnRoadAccessibilityNoInclude road accessibility information
returnRoadUseNoInclude road use types for street level results
returnSpeedLimitNoInclude posted speed limit for street results
roadUseNoTypes of road use to include in the results. Examples: 'Arterial', 'Ferry', 'Highway', etc.
timeZoneNoUsed to indicate the mode in which the timeZone object should be returned. Values: iana Mode shows the IANA ID which allows the user to determine the current time zone for the POI. Usage examples: timeZone=iana
viewNoGeopolitical view for disputed territories. Options: 'Unified', 'AR', 'IL', 'IN', 'MA', 'PK', 'RU', 'TR', 'CN'

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tomtom-routingD
ParametersJSON Schema
NameRequiredDescriptionDefault
accelerationEfficiencyNoEfficiency during acceleration (0-1).
alternativeTypeNoWhen maxAlternatives is greater than 0, it allows the definition of computing alternative routes: finding routes that are significantly different from the reference route, or finding routes that are better than the reference route. Possible values are: `anyRoute` (returns alternative routes that are significantly different from the reference route.), `betterRoute` (only returns alternative routes that are better than the reference route, according to the given planning criteria (set by routeType). If there is a road block on the reference route, then any alternative that does not contain any blockages will be considered a better route. The summary in the route response will contain information (see the planningReason parameter) about the reason for the better alternative.) Note: The betterRoute value can only be used when reconstructing a reference route. Default value: `anyRoute` Other values: `betterRoute`
arriveAtNoArrival time in ISO format (e.g., '2025-06-24T17:00:00Z'). Cannot be used with departAt.
auxiliaryPowerInLitersPerHourNoAuxiliary power consumption for combustion vehicles in L/hr.
auxiliaryPowerInkWNoAuxiliary power consumption in kW for electric vehicles.
avoidNoRoute features to avoid. May increase travel time. Options: 'tollRoads','motorways','ferries','unpavedRoads','carpools','alreadyUsedRoads'. Accepts array of string(s).
chargeMarginsInkWhNoComma-separated charge margins in kWh for route planning.
computeBestOrderNoReorder waypoints for optimization. Use with multiple waypoints to find the most efficient route order.
computeTravelTimeForNoCalculate travel times for all segments ('all') or none ('none').
constantSpeedConsumptionInLitersPerHundredkmNoCombustion speed-to-consumption mappings: '50,6.3:130,11.5' (speed in km/h, consumption in L/100km).
constantSpeedConsumptionInkWhPerHundredkmNoEV speed-to-consumption mappings format: '50,8.2:130,21.3' (speed in km/h, consumption in kWh/100km).
consumptionInkWhPerkmAltitudeGainNoEnergy used per km of altitude gain.
currentChargeInkWhNoCurrent EV battery charge in kWh. Required for EV routing.
currentFuelInLitersNoCurrent fuel level in liters for combustion vehicles.
decelerationEfficiencyNoEfficiency during deceleration (0-1).
departAtNoDeparture time in ISO format (e.g., '2025-06-24T14:30:00Z'). Cannot be used with arriveAt.
destinationYesDestination coordinates. Obtain from geocoding for best results.
downhillEfficiencyNoEfficiency during downhill driving (0-1).
extendedRouteRepresentationNoAdditional routing data formats to include in the response.
fuelEnergyDensityInMJoulesPerLiterNoFuel energy density in megajoules per liter.
hillinessNoPreference for avoiding hills. Use 'low' for flatter routes.
includeTollPaymentTypesNoInclude toll payment types in the toll section. If a toll section has different toll payment types in its subsections, this toll section is split into multiple toll sections with the toll payment types. Possible values: all(Include toll payment types in the toll section.), none (Do not include toll payment types in the toll section). The value `all` must be used together with sectionType=toll. Default value: none
instructionsTypeNoInstruction format: 'text' (human-readable), 'coded' (machine-readable), 'tagged' (HTML).
languageNoLanguage code for instructions (e.g., 'en-US', 'de-DE').
maxAlternativesNoNumber of alternative routes (0-5). More alternatives = more options but larger response.
maxChargeInkWhNoMaximum EV battery capacity in kWh. Required for EV routing.
originYesStarting point coordinates. Obtain from geocoding for best results.
recuperationInkWhPerkmAltitudeLossNoEnergy recovered per km of altitude loss.
reportNoSpecifies which data should be reported for diagnostic purposes. A possible value is: `effectiveSettings`. Reports the effective parameters or data used when calling the API. In the case of defaulted parameters, the default will be reflected where the parameter was not specified by the caller. Default value: effectiveSettings
routeRepresentationNoRepresentation of routes in response: 'polyline' (default, includes points), 'encodedPolyline' (compressed format), 'summaryOnly' (no points), 'none' (with computeBestOrder only). It cannot be used when `maxAlternatives` is set
routeTypeNoRoute optimization: 'fastest' (time-optimized), 'shortest' (distance-optimized), 'eco' (fuel-efficient), 'thrilling' (scenic).
sectionTypeNoHighlight specific road section types in response for route analysis: toll (toll roads), motorway (highways), tunnel, urban (city areas), country (rural areas), pedestrian (walking paths), etc.
supportingPointsNoAdditional coordinates that influence the route shape without being stops (format: 'lat,lon;lat,lon').
trafficNoInclude real-time traffic data for more accurate ETAs and route suggestions.
travelModeNoTransportation mode. Default: 'car'.
uphillEfficiencyNoEfficiency during uphill driving (0-1).
vehicleAdrTunnelRestrictionCodeNoADR tunnel restriction code for hazardous materials.
vehicleAxleWeightNoVehicle axle weight in kg for weight-restricted roads.
vehicleCommercialNoCommercial vehicle flag. Affects road access restrictions.
vehicleEngineTypeNoEngine type for fuel/energy consumption calculation.
vehicleHeadingNoHeading of the vehicle in degrees (0-359) for more accurate initial routing.
vehicleHeightNoVehicle height in meters. Used to avoid low bridges.
vehicleLengthNoVehicle length in meters. Affects maneuverability restrictions.
vehicleLoadTypeNoCargo type for hazardous materials routing.
vehicleMaxSpeedNoMaximum vehicle speed in km/h for commercial routing.
vehicleNumberOfAxlesNoNumber of axles on the vehicle. Used for toll calculations and restrictions.
vehicleWeightNoVehicle weight in kg. Important for truck routing restrictions.
vehicleWidthNoVehicle width in meters. Used to avoid narrow roads.
windingnessNoPreference for avoiding winding roads. Use 'low' for straighter routes.

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tomtom-static-mapD
ParametersJSON Schema
NameRequiredDescriptionDefault
bboxNoBounding box in format [west, south, east, north]. Alternative to center+zoom. Example: [-122.42, 37.77, -122.40, 37.79] for part of San Francisco.
centerYesMap center coordinates. Use results from geocoding or search operations for best positioning.
formatNoImage format: 'png' (better quality, supports transparency), 'jpg' (smaller file size).
heightNoMap height in pixels (50-2048). Examples: 300-500 (preview), 800-1200 (detailed). Default: 512.
languageNoLanguage for map labels (IETF language tag). Examples: 'en-US', 'es-ES', 'fr-FR'.
layerNoMap layer type: 'basic' (streets), 'labels' (text only, transparent background), 'hybrid' (satellite with labels).
styleNoMap style: 'main' (default daytime), 'night' (dark theme).
viewNoGeopolitical view for border disputes and territories. 'Unified' is the international standard view.
widthNoMap width in pixels (50-2048). Examples: 300-500 (preview), 800-1200 (detailed). Default: 512.
zoomNoZoom level (0-22). Examples: 3 (continent), 6 (country), 10 (city), 15 (neighborhood), 18 (street). Default: 15.

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tomtom-trafficD
ParametersJSON Schema
NameRequiredDescriptionDefault
bboxNoBounding box for traffic area: 'minLon,minLat,maxLon,maxLat'. Example: '-74.02,40.70,-73.96,40.80' for lower Manhattan. Use smaller areas for better results.
categoryFilterNoFilter by incident categories (comma-separated): '0' (Accident), '1' (Fog), '2' (Dangerous Conditions), '3' (Rain), '4' (Ice), '5' (Lane Restrictions), '6' (Lane Closure), '7' (Road Closure), '8' (Road Works), '9' (Wind), '10' (Flooding), '11' (Detour), '14' (Cluster).
incidentTypesNoFilter by incident types (comma-separated): '0' (Accident), '1' (Fog), '4' (Ice), '5' (Lane Restrictions), '7' (Closure), '8' (Roadworks).
languageNoLanguage for incident descriptions: 'en-US', 'de-DE', 'fr-FR', 'es-ES'. Default: 'en-US'.
maxResultsNoMaximum incidents to return (1-1000). Use 10-20 for readability in high-traffic areas.
tNoUnix Timestamp in seconds for traffic model. Use current time if not provided.
timeFilterNoTime validity filter: 'present' (current), 'future' (upcoming), 'all' (both). Default: 'present'.

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tomtom-waypoint-routingD
ParametersJSON Schema
NameRequiredDescriptionDefault
accelerationEfficiencyNoEfficiency during acceleration (0-1).
alternativeTypeNoWhen maxAlternatives is greater than 0, it allows the definition of computing alternative routes: finding routes that are significantly different from the reference route, or finding routes that are better than the reference route. Possible values are: `anyRoute` (returns alternative routes that are significantly different from the reference route.), `betterRoute` (only returns alternative routes that are better than the reference route, according to the given planning criteria (set by routeType). If there is a road block on the reference route, then any alternative that does not contain any blockages will be considered a better route. The summary in the route response will contain information (see the planningReason parameter) about the reason for the better alternative.) Note: The betterRoute value can only be used when reconstructing a reference route. Default value: `anyRoute` Other values: `betterRoute`
arriveAtNoArrival time in ISO format (e.g., '2025-06-24T17:00:00Z'). Cannot be used with departAt.
auxiliaryPowerInLitersPerHourNoAuxiliary power consumption for combustion vehicles in L/hr.
auxiliaryPowerInkWNoAuxiliary power consumption in kW for electric vehicles.
avoidNoRoute features to avoid. May increase travel time. Options: 'tollRoads','motorways','ferries','unpavedRoads','carpools','alreadyUsedRoads'. Accepts array of string(s).
chargeMarginsInkWhNoComma-separated charge margins in kWh for route planning.
computeBestOrderNoReorder waypoints for optimization. Use with multiple waypoints to find the most efficient route order.
computeTravelTimeForNoCalculate travel times for all segments ('all') or none ('none').
constantSpeedConsumptionInLitersPerHundredkmNoCombustion speed-to-consumption mappings: '50,6.3:130,11.5' (speed in km/h, consumption in L/100km).
constantSpeedConsumptionInkWhPerHundredkmNoEV speed-to-consumption mappings format: '50,8.2:130,21.3' (speed in km/h, consumption in kWh/100km).
consumptionInkWhPerkmAltitudeGainNoEnergy used per km of altitude gain.
currentChargeInkWhNoCurrent EV battery charge in kWh. Required for EV routing.
currentFuelInLitersNoCurrent fuel level in liters for combustion vehicles.
decelerationEfficiencyNoEfficiency during deceleration (0-1).
departAtNoDeparture time in ISO format (e.g., '2025-06-24T14:30:00Z'). Cannot be used with arriveAt.
downhillEfficiencyNoEfficiency during downhill driving (0-1).
extendedRouteRepresentationNoAdditional routing data formats to include in the response.
fuelEnergyDensityInMJoulesPerLiterNoFuel energy density in megajoules per liter.
hillinessNoPreference for avoiding hills. Use 'low' for flatter routes.
includeTollPaymentTypesNoInclude toll payment types in the toll section. If a toll section has different toll payment types in its subsections, this toll section is split into multiple toll sections with the toll payment types. Possible values: all(Include toll payment types in the toll section.), none (Do not include toll payment types in the toll section). The value `all` must be used together with sectionType=toll. Default value: none
instructionsTypeNoInstruction format: 'text' (human-readable), 'coded' (machine-readable), 'tagged' (HTML).
languageNoLanguage code for instructions (e.g., 'en-US', 'de-DE').
maxAlternativesNoNumber of alternative routes (0-5). More alternatives = more options but larger response.
maxChargeInkWhNoMaximum EV battery capacity in kWh. Required for EV routing.
recuperationInkWhPerkmAltitudeLossNoEnergy recovered per km of altitude loss.
reportNoSpecifies which data should be reported for diagnostic purposes. A possible value is: `effectiveSettings`. Reports the effective parameters or data used when calling the API. In the case of defaulted parameters, the default will be reflected where the parameter was not specified by the caller. Default value: effectiveSettings
routeRepresentationNoRepresentation of routes in response: 'polyline' (default, includes points), 'encodedPolyline' (compressed format), 'summaryOnly' (no points), 'none' (with computeBestOrder only). It cannot be used when `maxAlternatives` is set
routeTypeNoRoute optimization: 'fastest' (time-optimized), 'shortest' (distance-optimized), 'eco' (fuel-efficient), 'thrilling' (scenic).
sectionTypeNoRoad section types to highlight for route analysis. Options: toll (toll roads), motorway (highways), tunnel, urban (city areas), country (rural areas), pedestrian (walking paths), traffic (traffic incidents), toll_road, ferry, travel_mode, important_road_stretch. Accepts array of string(s).
supportingPointsNoAdditional coordinates that influence the route shape without being stops (format: 'lat,lon;lat,lon').
trafficNoInclude real-time traffic data for more accurate ETAs and route suggestions.
travelModeNoTransportation mode. Default: 'car'.
uphillEfficiencyNoEfficiency during uphill driving (0-1).
vehicleAdrTunnelRestrictionCodeNoADR tunnel restriction code for hazardous materials.
vehicleAxleWeightNoVehicle axle weight in kg for weight-restricted roads.
vehicleCommercialNoCommercial vehicle flag. Affects road access restrictions.
vehicleEngineTypeNoEngine type for fuel/energy consumption calculation.
vehicleHeadingNoHeading of the vehicle in degrees (0-359) for more accurate initial routing.
vehicleHeightNoVehicle height in meters. Used to avoid low bridges.
vehicleLengthNoVehicle length in meters. Affects maneuverability restrictions.
vehicleLoadTypeNoCargo type for hazardous materials routing.
vehicleMaxSpeedNoMaximum vehicle speed in km/h for commercial routing.
vehicleNumberOfAxlesNoNumber of axles on the vehicle. Used for toll calculations and restrictions.
vehicleWeightNoVehicle weight in kg. Important for truck routing restrictions.
vehicleWidthNoVehicle width in meters. Used to avoid narrow roads.
waypointsYesOrdered array of waypoint coordinates (minimum 2). Route calculated in exact sequence provided. Use geocoding for accurate coordinates.
windingnessNoPreference for avoiding winding roads. Use 'low' for straighter routes.

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

C2.1/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose based on its name: fuzzy-search, geocode, nearby, poi-search, reachable-range, reverse-geocode, routing, static-map, traffic, and waypoint-routing. There is no overlap or ambiguity between these tools as they target different geographic and mapping functions.

Naming Consistency5/5

All tool names follow a consistent pattern: 'tomtom-' prefix followed by a hyphenated descriptive term (e.g., fuzzy-search, geocode). This uniform naming convention makes the tool set predictable and easy to understand.

Tool Count5/5

With 10 tools, this server is well-scoped for a mapping and location services domain. Each tool appears to serve a specific, non-redundant function, making the count appropriate and manageable.

Completeness4/5

The tool set covers core mapping operations like geocoding, routing, POI search, and traffic, with no obvious gaps for basic functionality. However, without descriptions, it's unclear if advanced features (e.g., batch processing or custom map styling) are missing, but the surface seems largely complete for typical use cases.

Maintenance

ActivityActive
ResponsivenessUnresponsive

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/tomtom-international/tomtom-maps-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server