logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

mcp-dndzgz

Provides real-time transit information for Zaragoza, including arrival estimations for trams, bus details, and public bicycle rental services. Includes Google Maps links for easy navigation to transit points.

Author

mcp-dndzgz logo

danilat

No License

Quick Info

GitHub GitHub Stars 9
NPM Weekly Downloads 0
Tools 1
Last Updated 2026-02-19

Tags

zaragozatransitdndzgzinformation zaragozazaragoza includingtransit information

DNDzgz MCP Server

This is an MCP (Model Context Protocol) server that provides information about the Zaragoza tram system, including real-time tram arrival estimations and station information using the DNDzgz API.

Installation

  1. Clone the repository:
git clone https://github.com/danilat/mcp-dndzgz.git
cd mcp-dndzgz
  1. Install dependencies:
npm install

Running the Application

Add a the environment variable with a valid google maps api key and run it with the http transport

GOOGLE_MAPS_API_KEY=your-api-key npm start:http

The server will start you should configure yout MCP client to connect.

Or start the server using stdio trasport: Configure in your MCP client using npx, for example:

{
    "mcpServers": {
      "dndzgz": {
        "command": "npx @dndzgz/mcp",
        "env": {
          "GOOGLE_MAPS_API_KEY": "your-api-key"
        }
      }
    }
}

The server will start and connect to the MCP server.

Available Tools

The server provides the following tools:

  1. zaragoza-tram-estimations: Get real-time arrival estimations for a specific tram station
  2. Parameters:
    • station (number): ID of the tram station
  3. Returns: JSON with estimated arrival times for both directions

  4. zaragoza-tram-stations: Get a list of all tram stations in Zaragoza

  5. Parameters:
    • latitude (number): Latitude to sort stations by proximity
    • longitude (number): Longitude to sort stations by proximity
  6. Returns: JSON with station information including location, name, and ID

  7. zaragoza-bus-stops: Get all bus stops in Zaragoza

  8. Parameters:
    • latitude (number): Latitude to sort stops by proximity
    • longitude (number): Longitude to sort stops by proximity
  9. Returns: JSON with bus stop locations, names, IDs, and lines

  10. zaragoza-bus-estimations: Get real-time arrival estimations for a specific bus stop

  11. Parameters:
    • stop (number): ID of the bus stop
  12. Returns: JSON with estimated arrival times for each line serving that stop

  13. zaragoza-bizi-stations: Get all Bizi stations in Zaragoza (public bicycle rental service)

  14. Parameters:
    • latitude (number): Latitude to sort stations by proximity
    • longitude (number): Longitude to sort stations by proximity
  15. Returns: JSON with Bizi station locations, names, and IDs

  16. zaragoza-bizi-estimations: Get real-time availability of bikes and free slots in a Bizi station

  17. Parameters:
    • station (number): ID of the Bizi station
  18. Returns: JSON with bikes and parking slot availability

  19. google-maps-link: Get a Google Maps link for a specific location

  20. Parameters:
    • latitude (number): Latitude of the location
    • longitude (number): Longitude of the location
  21. Returns: Google Maps URL showing the specified location

  22. geolocation-from-address: Get the geolocation (latitude and longitude) from an address and the formatted address that was found

  23. Parameters:
    • address (string): The address to geolocate (e.g., "Plaza de San Francisco, Zaragoza, Spain")
  24. Returns: JSON with latitude, longitude, confidence level, and formatted address

Dependencies

  • @modelcontextprotocol/sdk: ^1.9.0

Example

There is an screenshot with example using Claude Desktop

See Also

`