WhereAmI MCP Server logo

WhereAmI MCP Server

by kukapay

WhereAmI MCP Server is a lightweight server that determines your location based on your IP address using the ipapi.co service. It provides dynamic resources and a detailed tool for geolocation data.

View on GitHub

Last updated: N/A

WhereAmI MCP Server

Python

Python

License

License

Status

Status

A lightweight mcp server that tells you exactly where you are based on your current IP, powered by ipapi.co.

Features

  • Dynamic Resources: Fetch specific data (e.g., IP, country, city) via location://{type}.
  • Detailed Tool: Generate a comprehensive location report with get_location().
  • Natural Language Prompt: Ask "Where am I?" to get detailed results.
  • Robust Error Handling: Gracefully manages API and network issues.
  • Minimal Dependencies: Requires only mcp and httpx.

Installation

Prerequisites

  • Python 3.10+
  • pip

Setup

  1. Clone the repository:
    git clone https://github.com/kukapay/whereami-mcp.git
    cd whereami-mcp
    
  2. Install dependencies:
    pip install mcp httpx
    
  3. (Optional) Install as an MCP service:
    mcp install whereami_mcp.py --name "WhereAmI"
    

Usage

Running the Server

  • Direct execution:
    python whereami_mcp.py
    
  • Development mode:
    mcp dev whereami_mcp.py
    

Components

Resource: location://{type}

Returns a specific location detail based on {type}.

  • Supported Types: ip, country, country_code, region, city, latitude, longitude, timezone, isp, asn
  • Examples:
    • @location://ip"8.8.8.8"
    • @location://city"Mountain View"
    • @location://country"United States"
Tool: get_location()

Generates a detailed Markdown table of geolocation data.

  • Fields:
    • IP
    • Country
    • Country Code
    • Region
    • City
    • Latitude
    • Longitude
    • Timezone
    • ISP
    • ASN
  • Sample Output:
    | Field          | Value             |
    |----------------|-------------------|
    | IP            | 8.8.8.8           |
    | Country       | United States     |
    | Country Code  | US                |
    | Region        | California        |
    | City          | Mountain View     |
    | Latitude      | 37.4223           |
    | Longitude     | -122.0848         |
    | Timezone      | America/Los_Angeles |
    | ISP           | GOOGLE            |
    | ASN           | AS15169           |
    
Prompt: where_am_i_prompt

Predefined query: "Please tell me where I am based on my current IP address." Triggers get_location().

Examples in Claude Desktop

  1. Install the server:
    mcp install whereami_mcp.py --name "WhereAmI"
    
  2. Query data:
    • "My IP is @location://ip"
    • "I’m in @location://city, @location://country"
  3. Get full report:
    • "Where am I?"
    • get_location()

License

MIT License. See LICENSE for details.