Stadia Maps MCP Server (TypeScript)

Stadia Maps MCP Server (TypeScript)

Bringing location services, geocoding, and mapping to AI assistants via Stadia Maps APIs.

18
Stars
5
Forks
18
Watchers
1
Issues
Stadia Maps MCP Server (TypeScript) implements the Model Context Protocol to provide LLM-based assistants with structured access to Stadia Maps APIs. It enables AI tools to query for geocoding, routing, time zones, map generation, and isochrone calculations. Designed for integration with agentic tools and LLMs, the server enhances spatial intelligence and location-based features in AI workflows.

Key Features

Current time and time zone information for any location
Address and place geocoding
Point-of-interest search
Static map image generation with markers and routes
Travel time and route planning
Isochrone (reachable area) computation
Integration with LLM-based tools and assistants
Support for Claude Desktop and Warp environments
Programmatic access via Anthropic SDK
API-key based authentication

Use Cases

Determining current time and time zone for any city
Finding and mapping routes between points of interest
Bulk geocoding lists of addresses from files or spreadsheets
Generating static map images with custom overlays
Querying opening hours or location data for businesses
Spatial filtering and analysis of datasets
Integrating location-based abilities in LLM-powered workflows
Enhancing virtual assistants with geospatial reasoning
Automating travel time estimations for logistics applications
Creating isochrone maps to analyze reachable regions

README

Stadia Maps MCP Server (TypeScript)

This is a Model Context Protocol (MCP) server that provides AI assistants with access to Stadia Maps APIs for location services, geocoding, routing, and mapping capabilities.

Capabilities

  • Time information anywhere on earth
    • Current time
    • Time zone info (ID, UTC offset, and whether a special offset like daylight saving/summer time is in effect)
  • Geocoding
    • Address lookup
    • Place search (POIs like restaurants, cafes, etc.)
  • Static map image generation (including markers and route overlays)
  • Routing & travel time
  • Isochrones (reachable range; both time and distance contours)

Use cases

Here are just a few of the ways you can prompt an LLM to make use of the tools:

  • "What time is it in Tokyo?"
  • "Make me a map showing the walking route from Depoo Turg to the Põhjala Tap Room."
  • "Is the Põhjala Tap Room open right now? Use Stadia Maps to get this information."
  • "Geocode the addresses in the attached spreadsheet."

Quickstart

Building

We'll use bun for all of our instructions, but you can use npm too.

  1. Run bun install to fetch the dependencies.
  2. Then, execute the build script: bun run build.

The built code should be in the build directory now.

Configuration

This MCP server requires a Stadia Maps API key. Follow the directions here to get your free key. Then, set the API_KEY environment variable when running the server.

Integration Examples

API key in hand, here are a few ways you can use the MCP server.

Claude Desktop

See Claude Desktop Setup for detailed instructions on configuring this MCP server with Claude Desktop. Claude Desktop is a great tool for testing out workflows.

Warp

See Warp Setup for detailed instructions on setting up Warp with this MCP server. Warp is a powerful agentic environment that uses LLMs to do things on your behalf. Whereas you would need to upload a file to Claude, Warp can directly access files, write code, and execute programs on your computer.

Paired with the Stadia Maps MCP, it's a powerful tool for tasks like bulk geocoding, spatially filtering datasets, and more.

Programmatic Integration with Anthropic SDK

For developers who want to integrate the MCP server programmatically into their TypeScript applications, we have an Anthropic SDK Integration Example. This example demonstrates how to:

  • Connect to the MCP server from your code
  • Integrate with Claude's API for natural language queries
  • Enhance Claude with spatial intelligence using the Stadia Maps APIs via an MCP server

Tips and Tricks

LLMs are far from perfect, and sometimes you need to put some thought into crafting prompts to get good results.

When possible, be specific about which tool(s) to use

Sometimes the model needs a nudge to use the right tool. For example, if you ask for opening hours, many models will try to search the web. This information isn't always easily available for the model to find online.

For example, watch what a model does here:

A model struggling to find opening hours online

You can nudge the model to use the tools in this MCP like so:

A model using the Stadia Maps API after a different prompt

Get creative

LLMs are capable of a lot, but they can't always do everything. As an example, let's look at one way to bulk geocode addresses in a spreadsheet.

First, attach an Excel sheet in Claude Desktop which has a few addresses in a column.

Prompt: Geocode all the addresses in this spreadsheet. Add the geocoded latitude and longitude as new columns in the sheet.

At the time of this writing, Claude cannot generate a spreadsheet attachment directly, but it can generate an HTML page or other code which generates it for you! In fact, Claude Desktop may actually ask you if you want an Excel sheet download, but it will just go ahead and generate this for you instead.

This sort of creativity is necessary, particularly when interacting with current generation LLMs through the usual user interfaces. A lot of the power of MCPs is that you can interact with them through code, which can overcome some of these limitations to provide a delightful user experience.

Customize it!

Just like a human, LLMs do better when given the right tools for the job. And just like a master craftsman, you'll probably need some expert knowledge to know how best to combine the right tools and materials.

Additionally, models have a context limit. While there are advanced techniques to squeeze more out of this, you can only benefit by tailoring the MCP to the specific API functionality you need. Not to mention, it will be much cheaper for you to operate with just the tools you need for a specific context. Tool schemas are vast majority of the context cost, in a simple demo! If you build the suite out to ~10 tools, you can end up with tens of thousands of input tokens.

This project is a starting point, and we've left comments throughout index.ts noting our approach to building tools, and how you can tailor them for your use case.

Star History

Star History Chart

Repository Owner

stadiamaps
stadiamaps

Organization

Repository Details

Language TypeScript
Default Branch main
Size 700 KB
Contributors 3
License BSD 3-Clause "New" or "Revised" License
MCP Verified Nov 12, 2025

Programming Languages

TypeScript
100%

Tags

Join Our Newsletter

Stay updated with the latest AI tools, news, and offers by subscribing to our weekly newsletter.

We respect your privacy. Unsubscribe at any time.

Related MCPs

Discover similar Model Context Protocol servers

  • Stape MCP Server

    Stape MCP Server

    An MCP server implementation for integrating Stape with AI model context protocols.

    Stape MCP Server provides an implementation of the Model Context Protocol server tailored for the Stape platform. It enables secure and standardized access to model context capabilities, allowing integration with tools such as Claude Desktop and Cursor AI. Users can easily configure and authenticate MCP connections using provided configuration samples, while managing context and credentials securely. The server is open source and maintained by the Stape Team under the Apache 2.0 license.

    • 4
    • MCP
    • stape-io/stape-mcp-server
  • MCP-Geo

    MCP-Geo

    Geocoding and reverse geocoding MCP server for LLMs.

    MCP-Geo provides geocoding and reverse geocoding capabilities to AI models using the Model Context Protocol, powered by the GeoPY library. It offers various tools such as address lookup, reverse lookup from coordinates, distance calculations, and batch processing of locations, all accessible via standard MCP tool interfaces. Safety features like rate limiting and robust error handling ensure reliable and compliant usage of geocoding services. The server is compatible with environments like Claude Desktop and can be easily configured elsewhere.

    • 28
    • MCP
    • webcoderz/MCP-Geo
  • mcp-time

    mcp-time

    A Model Context Protocol server for time and date operations

    mcp-time is a Model Context Protocol (MCP) server that enables AI assistants and MCP clients to perform standardized time and date-related operations. It provides natural language parsing for relative time expressions, supports flexible formatting, and allows manipulation and comparison of times. The server offers multiple integration methods, including stdio, HTTP stream, Docker, and npx for compatibility with various clients. It is designed for robust time handling and easy integration with AI tools.

    • 8
    • MCP
    • TheoBrigitte/mcp-time
  • Weblate MCP Server

    Weblate MCP Server

    Seamlessly connect AI assistants to Weblate for translation management via the Model Context Protocol.

    Weblate MCP Server enables AI assistants and clients to directly manage Weblate translation projects through the Model Context Protocol (MCP). It integrates with the Weblate REST API, allowing natural language interaction for project and translation management. The tool offers multiple transport options including HTTP, SSE, and STDIO, and is optimized for large language model workflows. Full support for project, component, and translation operations is provided, with a focus on type safety and flexible environment configuration.

    • 9
    • MCP
    • mmntm/weblate-mcp
  • MCP Weather Server

    MCP Weather Server

    Provides weather forecasts to LLMs via the Model Context Protocol.

    MCP Weather Server enables large language models to access real-time, accurate weather forecasts by interfacing with the AccuWeather API. It offers both hourly and daily weather data, supporting metric and imperial units, and can be seamlessly integrated with MCP-compatible clients like Claude Desktop or supergateway. The server provides tools for retrieving weather based on location and settings, with robust configuration options. It is designed for straightforward deployment using Node.js and environment-configured API keys.

    • 27
    • MCP
    • TimLukaHorstmann/mcp-weather
  • Lara Translate MCP Server

    Lara Translate MCP Server

    Context-aware translation server implementing the Model Context Protocol.

    Lara Translate MCP Server enables AI applications to seamlessly access professional translation services via the standardized Model Context Protocol. It supports features such as language detection, context-aware translations, and translation memory integration. The server acts as a secure bridge between AI models and Lara Translate, managing credentials and facilitating structured translation requests and responses.

    • 76
    • MCP
    • translated/lara-mcp
  • Didn't find tool you were looking for?

    Be as detailed as possible for better results