Koskamo

MapParser MCP

A remote MCP server that allows AI assistants to parse Google Maps direction links to extract waypoints and coordinates, geocode addresses, retrieve route details like distance and time, and export data to CSV or KML formats. It also supports managing saved trips for authenticated users.

Endpoint and access

No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.

MapParser MCP logo, by MapParserCommunity listingStreamable HTTPNo sign-inEndpoint checked 2026-11-01Published by MapParser
MCP endpoint (Streamable HTTP)
https://mapparser.travel-tracker.org/mcp
Vendor documentation

What you can do with it

  • Parse Google Maps links to extract stops and coordinates
  • Geocode addresses and get route distance and time
  • Export waypoints to CSV or KML formats
  • List, get, save, update, or delete saved trips

Source and maintenance

Community listingRegistry 1.0.5

Protocol and capabilities

Server
map-parser 1.0.4
MCP protocol
2025-06-18
Tools
4 advertised
Resources
Not advertised
Resource templates
Not advertised
Prompts
Not advertised
Server-advertised capabilities
{
  "tools": {
    "listChanged": true
  }
}

Server-provided instructions

Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.

Map Parser turns Google Maps directions links into lists of stops with coordinates. Start with parse_map_link; pass its waypoints to get_route or export_waypoints. Personal tools (list_my_trips, get_trip, save_trip, update_trip, delete_trip) are available only with an agent token from https://mapparser.travel-tracker.org/ai-assistants.

Tools

4 advertised

parse_map_link — Parse Google Maps link
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Extract the stops (names and coordinates) of a Google Maps directions link, plus the likely region. Short links are expanded; links that hide stop names are opened in a headless browser, which can take up to a minute.

parse_map_link input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "url"
  ],
  "properties": {
    "url": {
      "type": "string",
      "minLength": 1,
      "description": "Google Maps directions link, full (google.com/maps/dir/...) or short (maps.app.goo.gl/...)"
    },
    "useBrowser": {
      "type": "boolean",
      "description": "Force the slower browser mode, e.g. when names come back as coordinates"
    }
  }
}
parse_map_link annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
geocode — Geocode
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Look up a place name or address (forward) or a coordinate (reverse) with OpenStreetMap Nominatim. Returns the "State, Country code" region and the full address.

geocode input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "lat": {
      "type": "number",
      "maximum": 90,
      "minimum": -90
    },
    "lng": {
      "type": "number",
      "maximum": 180,
      "minimum": -180
    },
    "query": {
      "type": "string",
      "minLength": 1,
      "description": "Place name or address"
    }
  }
}
geocode annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
get_route — Get route
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Distance and travel time through stops in order, per leg and in total, using OpenStreetMap routing (OSRM). Pass the waypoints from parse_map_link.

get_route input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "waypoints"
  ],
  "properties": {
    "mode": {
      "enum": [
        "driving",
        "walking",
        "cycling"
      ],
      "type": "string",
      "description": "Default driving"
    },
    "waypoints": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "lat",
          "lng"
        ],
        "properties": {
          "lat": {
            "type": "number",
            "maximum": 90,
            "minimum": -90
          },
          "lng": {
            "type": "number",
            "maximum": 180,
            "minimum": -180
          },
          "name": {
            "type": "string",
            "description": "Stop name"
          }
        }
      },
      "maxItems": 25,
      "minItems": 2
    }
  }
}
get_route annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
export_waypoints — Export waypoints
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Turn a Google Maps link or a list of stops into a CSV (import into Google My Maps) or KML (Google Earth, My Maps) file. Returns the file contents.

export_waypoints input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "format"
  ],
  "properties": {
    "url": {
      "type": "string",
      "minLength": 1,
      "description": "Google Maps directions link, full (google.com/maps/dir/...) or short (maps.app.goo.gl/...)"
    },
    "format": {
      "enum": [
        "csv",
        "kml"
      ],
      "type": "string"
    },
    "waypoints": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "name"
        ],
        "properties": {
          "lat": {
            "type": "number",
            "maximum": 90,
            "minimum": -90
          },
          "lng": {
            "type": "number",
            "maximum": 180,
            "minimum": -180
          },
          "name": {
            "type": "string",
            "minLength": 1
          }
        }
      },
      "maxItems": 100,
      "minItems": 1,
      "description": "Stops to export, when no url is given"
    }
  }
}
export_waypoints annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}

Prompts

Not advertised

No prompt definitions available.

Resources

Not advertised

No resource definitions available.

30-day availability

Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.

Successful checks
1 of 1 (100%)
Average latency
511 ms
95th percentile latency
511 ms

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · probe · passed · 511 ms · metadata changed · 4 tool(s)

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers the remote server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http mapparser-mcp https://mapparser.travel-tracker.org/mcp

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add mapparser-mcp --url https://mapparser.travel-tracker.org/mcp

Cursor

Merge this server into .cursor/mcp.json in your project, then enable mapparser-mcp in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "mapparser-mcp": {
      "url": "https://mapparser.travel-tracker.org/mcp"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure).
Cline configuration
{
  "mcpServers": {
    "mapparser-mcp": {
      "type": "streamableHttp",
      "url": "https://mapparser.travel-tracker.org/mcp",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start mapparser-mcp and inspect its tools.
VS Code configuration
{
  "servers": {
    "mapparser-mcp": {
      "type": "http",
      "url": "https://mapparser.travel-tracker.org/mcp"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http mapparser-mcp https://mapparser.travel-tracker.org/mcp

Claude Desktop

Merge this into claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\), then restart Claude Desktop.
Claude Desktop configuration
{
  "mcpServers": {
    "mapparser-mcp": {
      "url": "https://mapparser.travel-tracker.org/mcp"
    }
  }
}

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "mapparser-mcp": {
      "serverUrl": "https://mapparser.travel-tracker.org/mcp"
    }
  }
}

Let your agent find its tools

Find servers like MapParser MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.