About WhereAmI MCP Server
WhereAmI MCP Server reports geolocation based on the current IP address using ipapi.co. It provides individual location fields as resources and a detailed report through a tool and a predefined prompt.
Key features
- 01Location fields via dynamic resources
- 02Detailed location report tool
- 03Predefined natural-language prompt
- 04API and network error handling
Use cases
- 01Check the IP address’s city and country
- 02Retrieve a full IP-based location report
MCP support
It exposes `location://{type}` resources, a `get_location()` tool, and a predefined prompt to MCP clients.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEWhereAmI MCP Server
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
mcpandhttpx.
Installation
Prerequisites
- Python 3.10+
pip
Setup
- Clone the repository:
git clone https://github.com/kukapay/whereami-mcp.git cd whereami-mcp - Install dependencies:
pip install mcp httpx - (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
- Install the server:
mcp install whereami_mcp.py --name "WhereAmI" - Query data:
- "My IP is
@location://ip" - "I’m in
@location://city,@location://country"
- "My IP is
- Get full report:
- "Where am I?"
get_location()
License
MIT License. See LICENSE for details.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.