heremaps
LLM MCP server using HereMaps API
claude mcp add --transport stdio limingchina-heremaps-mcp-server npx -y /<You local checkout directory of this project>/src/node \ --env HERE_MAPS_API_KEY="<YOUR_HERE_API_KEY>"
How to use
This MCP server exposes HERE Maps Platform APIs as tools that a language model can invoke via the MCP protocol. The implemented tools include geocoding, reverse geocoding, places search, routing (directions), traffic incidents, and a display map. Each tool is exposed under a specific MCP tool name: maps_geocode for converting an address to coordinates, maps_reverse_geocode for turning coordinates into an address, maps_search_places for POI searches around a location, maps_directions for routing between two points, maps_get_traffic_incidents for traffic data around a location, and maps_display to render a map image given a center, zoom, and style. When integrated with an MCP client, you configure the server (as described in the MCP configuration) and the client can call these tools in a standardized way, receiving structured JSON responses that include location data, addresses, routes, and other relevant details. Start by providing a location or query to the model, which will then trigger the appropriate tool(s) (for example, geocode then search for places nearby) and present the results in an easily consumable format for follow-up actions.
How to install
Prerequisites:
- Node.js and npm installed on your system
- Access to clone this repository or have the code checked out locally
- HERE Maps API key for authentication
Install steps:
- Clone the repository
git clone https://github.com/limingchina/here-maps-mcp-server.git
- Install dependencies (navigate to the node client folder)
cd here-maps-mcp-server/src/node
npm install
- Obtain a HERE Maps API key from the HERE developer portal and export it when running the server (or set as an environment variable later). Example:
export HERE_MAPS_API_KEY=<YOUR_HERE_API_KEY>
- Run the MCP server using npx as described in the README (the server will build automatically and start). Example:
HERE_MAPS_API_KEY=<YOUR_HERE_API_KEY> npx .
This will print a startup message like: HERE Maps MCP Server running on stdio
Notes:
- The README specifies that the npm package is not yet published, so you typically run the server locally via npx from your local checkout.
- You can adapt the MCP client configuration to point to the local checkout path for the server as shown in the example MCP configuration.
Additional notes
Tips and considerations:
- Ensure the HERE_MAPS_API_KEY environment variable is set in the environment that runs the MCP server; the tools will rely on it for API calls.
- If you update the server code, rebuild may occur automatically as part of the start script; confirm the startup log shows the server is ready to accept MCP requests.
- Some MCP clients (like Claude) require a restart after adding or updating MCP server configurations to load the new settings.
- When using maps_directions, provide origin and destination in 'latitude,longitude' string format and a valid transportMode (car, pedestrian, bicycle, truck, scooter, bus, taxi).
- The maps_display tool outputs a rendered map image; include center coordinates, a zoom level, and a style from the supported set to get the desired visualization.
Related MCP Servers
zen
Selfhosted notes app. Single golang binary, notes stored as markdown within SQLite, full-text search, very low resource usage
MCP -Deepseek_R1
A Model Context Protocol (MCP) server implementation connecting Claude Desktop with DeepSeek's language models (R1/V3)
mcp-fhir
A Model Context Protocol implementation for FHIR
mcp
Inkdrop Model Context Protocol Server
mcp-appium-gestures
This is a Model Context Protocol (MCP) server providing resources and tools for Appium mobile gestures using Actions API..
dubco -npm
The (Unofficial) dubco-mcp-server enables AI assistants to manage Dub.co short links via the Model Context Protocol. It provides three MCP tools: create_link for generating new short URLs, update_link for modifying existing links, and delete_link for removing short links.