tomtom-mcp

tomtom-international/tomtom-mcp

3.5

If you are the rightful owner of tomtom-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

The TomTom MCP Server is a tool designed to simplify geospatial development by providing seamless access to TomTom’s location services.

Tools
10
Resources
0
Prompts
0

TomTom MCP Server

NPM Version License

The TomTom 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 MCP Demo

Table of Contents


Quick Start

Prerequisites

  • Node.js 22+
  • TomTom API key

How to obtain a TomTom API key:

  1. Create a developer account on TomTom Developer Portal
  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
npx @tomtom-org/tomtom-mcp@latest --key your_api_key

Usage

# Start MCP server
npx @tomtom-org/tomtom-mcp@latest
# Get help
npx @tomtom-org/tomtom-mcp@latest --help

Integration Guides

TomTom 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:

  • - Instructions for configuring Claude Desktop to work with TomTom MCP server
  • - Setting up a development environment in Visual Studio Code
  • - Guide for integrating TomTom MCP server with Cursor AI
  • - Instructions for configuring WindSurf to use TomTom MCP server
  • - Example showing how to connect Smolagents AI agents to TomTom MCP server.

Available Tools

ToolDescriptionDocumentation
tomtom-geocodeConvert addresses to coordinates with global coveragehttps://developer.tomtom.com/geocoding-api/documentation/geocode
tomtom-reverse-geocodeGet addresses from GPS coordinateshttps://developer.tomtom.com/reverse-geocoding-api/documentation/reverse-geocode
tomtom-fuzzy-searchIntelligent search with typo tolerancehttps://developer.tomtom.com/search-api/documentation/search-service/fuzzy-search
tomtom-poi-searchFind specific business categorieshttps://developer.tomtom.com/search-api/documentation/search-service/points-of-interest-search
tomtom-nearbyDiscover services within a radiushttps://developer.tomtom.com/search-api/documentation/search-service/nearby-search
tomtom-routingCalculate optimal routes between locationshttps://developer.tomtom.com/routing-api/documentation/tomtom-maps/calculate-route
tomtom-waypoint-routingMulti-stop route planning Routing APIhttps://developer.tomtom.com/routing-api/documentation/tomtom-maps/calculate-route
tomtom-reachable-rangeDetermine coverage areas by time/distancehttps://developer.tomtom.com/routing-api/documentation/tomtom-maps/calculate-reachable-range
tomtom-trafficReal-time incidents datahttps://developer.tomtom.com/traffic-api/documentation/traffic-incidents/traffic-incidents-service
tomtom-static-mapGenerate custom map imageshttps://developer.tomtom.com/map-display-api/documentation/raster/static-image
tomtom-dynamic-mapAdvanced map rendering with custom markers, routes, and traffic visualizationhttps://developer.tomtom.com/map-display-api/documentation/mapstyles/map-styles-v2

Orbis equivalents (optional backend)

By default the MCP tools use the Genesis TomTom APIs listed above. We also support using the "Orbis" backend for the same tools. To enable Orbis for all tools set the environment variable MAPS=ORBIS

ToolDescriptionOrbis API (documentation)
tomtom-geocodeForward geocoding: address → coordinateshttps://developer.tomtom.com/geocoding-api/documentation/tomtom-orbis-maps/geocode
tomtom-reverse-geocodeReverse geocoding: coordinates → addresshttps://developer.tomtom.com/reverse-geocoding-api/documentation/tomtom-orbis-maps/reverse-geocode
tomtom-fuzzy-searchGeneral search with typo tolerance and suggestionshttps://developer.tomtom.com/search-api/documentation/tomtom-orbis-maps/search-service/fuzzy-search
tomtom-poi-searchPoints of Interest (category-based) searchhttps://developer.tomtom.com/search-api/documentation/tomtom-orbis-maps/search-service/points-of-interest-search
tomtom-nearbyFind POIs near a coordinate within a radiushttps://developer.tomtom.com/search-api/documentation/tomtom-orbis-maps/search-service/nearby-search
tomtom-routingCalculate optimal route between two pointshttps://developer.tomtom.com/routing-api/documentation/tomtom-orbis-maps/calculate-route
tomtom-waypoint-routingMulti-stop / waypoint route planninghttps://developer.tomtom.com/routing-api/documentation/tomtom-orbis-maps/calculate-route
tomtom-reachable-rangeCompute coverage area by time or distance budgethttps://developer.tomtom.com/routing-api/documentation/tomtom-orbis-maps/calculate-reachable-range
tomtom-trafficTraffic incidents and related detailshttps://developer.tomtom.com/traffic-api/documentation/tomtom-orbis-maps/incident-details
tomtom-dynamic-mapAdvanced map rendering with custom markers, routes, and traffic visualizationhttps://developer.tomtom.com/assets-api/documentation/tomtom-orbis-maps/styles-assets/fetch-style

Important: Orbis tools are currently in Public Preview and require explicit enablement for developer accounts. To request access, contact TomTom Sales:

How dynamic map tool works

We fetch a Map Style JSON (either Genesis or Orbis), then use MapLibre (server-side) to:

  • add markers, routes, polygons and other layers defined by the style and request;
  • render all layers into an image using that style.

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

References:


Contributing & Local Development

Setup

git clone <repository>

cd tomtom-mcp

npm install

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

npm run build             # Build TypeScript files

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

Testing

npm run build               # Build TypeScript
npm test                    # Run all tests
npm run test:unit           # Unit tests only
npm run test:comprehensive  # Integration tests

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/
├── tools/             # MCP tool definitions
├── services/          # TomTom API wrappers
├── schemas/           # Validation schemas
├── utils/             # Utilities
└── createServer.ts    # MCP Server creation logic
└── index.ts           # Main 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

npm run build            # Rebuild
npm cache clean --force  # Clear cache

Contributing & Feedback

We welcome contributions to the TomTom MCP Server! Please see 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 for information on reporting security vulnerabilities and our security practices.

License

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

Copyright (C) 2025 TomTom NV