
chenmingyong0423/mcp-ip-geo
Developer toolsAn MCP Server that provides IP geolocation lookup (country, region, city, etc.) via ip-api.com.
Overview
mcp-ip-geo is an MCP (Model Context Protocol) server that provides IP geolocation lookup services (country, region, city, etc.) using the ip-api.com service. You can integrate the mcp-ip-geo service in two ways: Add the following to your MCP configuration to run the latest version directly from GitHub: Once running successfully, the service will listen on 0.0.0.0:8000 within the container (listening on all network interfaces), and can be accessed via http:// :8000/mcp, where can be: - Local development environment: Use localhost or 127.0.0.1 - LAN environment: Use the server's internal IP address (e.g., 192.168.x.x) - Public network environment: Use the server's public IP address or domain name Note: The service is configured to listen on the 0.0.0.0 address inside the container, which is standard practice for containerized applications, ensuring the service can be accessed from outside the container.
README
📝 mcp-ip-geo
mcp-ip-geo is an MCP (Model Context Protocol) server that provides IP geolocation lookup services (country, region, city, etc.) using the ip-api.com service.
🔌 MCP Integration
You can integrate the mcp-ip-geo service in two ways:
Method 1: Using the go run command (Stdio)
Add the following to your MCP configuration to run the latest version directly from GitHub:
{
"mcpServers": {
"mcp-ip-geo": {
"command": "go",
"args": [
"run",
"github.com/chenmingyong0423/mcp-ip-geo/cmd/mcp-ip-geo@latest"
]
}
}
}
Method 2: Using Docker (Streamable HTTP)
🐳 Docker Deployment
Step 1: Clone the repository
git clone https://github.com/chenmingyong0423/mcp-ip-geo.git
cd mcp-ip-geo
Step 2: Build the Docker image
docker build -t mcp-ip-geo-server .
Step 3: Run the container
docker run -d --name mcp-ip-geo-server -p 8000:8000 mcp-ip-geo-server
Once running successfully, the service will listen on 0.0.0.0:8000 within the container (listening on all network interfaces), and can be accessed via http://:8000/mcp, where `` can be:
- Local development environment: Use
localhostor127.0.0.1 - LAN environment: Use the server’s internal IP address (e.g.,
192.168.x.x) - Public network environment: Use the server’s public IP address or domain name
Note: The service is configured to listen on the
0.0.0.0address inside the container, which is standard practice for containerized applications, ensuring the service can be accessed from outside the container.
Step 4: Configure MCP
Add the following to your MCP configuration:
{
"mcpServers": {
"mcp-ip-geo": {
"url": "http://:8000/mcp"
}
}
}
Replace `` with the actual server IP address or domain name of your deployment environment.
⚠️ License Notice
Note: This project uses the free version of ip-api.com, which is for non-commercial use only. If you intend to use this project for commercial purposes, please comply with their terms of service or purchase the paid version: https://ip-api.com/
Install
docker run -d --name mcp-ip-geo-server -p 8000:8000 mcp-ip-geo-serverConfiguration
{
"mcpServers": {
"mcp-ip-geo": {
"command": "go",
"args": [
"run",
"github.com/chenmingyong0423/mcp-ip-geo/cmd/mcp-ip-geo@latest"
]
}
}
}