🚀 MCP Server for IP address geolocation and network data from IPLocate.io
An MCP (Model Context Protocol) server for IPLocate.io - offering all - around IP address intelligence, such as geolocation, network information, privacy detection, and abuse contacts.

✨ Features
This MCP server equips users with tools to look up in - depth information about IP addresses:
- Geolocation: Country, city, coordinates, timezone, postal code, etc.
- Network Information: ASN name, number, type, network range, ISP information
- Privacy & Security: VPN detection, proxy detection, Tor exit nodes, hosting providers
- Company Data: Organization name, domain, business type
- Abuse Contacts: Email, phone, and address for reporting malicious activity
🚀 Quick Start
The simplest way to utilize this MCP server is via your MCP client. Just configure your client according to the setup instructions below:
Configure your MCP client
Cursor
One - click setup:

Manual configuration:
-
In your project directory, create the configuration:
mkdir -p .cursor
touch .cursor/mcp.json
-
Add the following to .cursor/mcp.json
:
{
"mcpServers": {
"iplocate": {
"command": "npx",
"args": ["-y", "@iplocate/mcp-server"],
"env": {
"IPLOCATE_API_KEY": "your_api_key_here"
}
}
}
}
Replace your_api_key_here
with your actual API key from IPLocate.io.
Claude Desktop
-
Open Claude Desktop settings
- On macOS:
Cmd + ,
- On Windows:
Ctrl + ,
-
Go to the "Developer" tab and click "Edit Config"
-
Add the IPLocate server configuration:
{
"mcpServers": {
"iplocate": {
"command": "npx",
"args": ["-y", "@iplocate/mcp-server"],
"env": {
"IPLOCATE_API_KEY": "your_api_key_here"
}
}
}
}
Replace your_api_key_here
with your actual API key from IPLocate.io.
VS Code (Preview)
-
Create the VS Code MCP configuration:
mkdir -p .vscode
touch .vscode/mcp.json
-
Add the following to .vscode/mcp.json
:
{
"servers": {
"iplocate": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@iplocate/mcp-server"],
"env": {
"IPLOCATE_API_KEY": "your_api_key_here"
}
}
}
}
Replace your_api_key_here
with your actual API key from IPLocate.io.
Available tools
The server offers the following tools:
lookup_ip_address_details
Retrieve all - encompassing information about an IP address, including all available data.
Parameters:
ip
(optional): IPv4 or IPv6 address to look up. If not provided, returns information about the caller's IP address.
Example:
{
"ip": "8.8.8.8"
}
Returns: All available data about the IP address, including geolocation, network information, privacy, and company data.
lookup_ip_address_location
Obtain geographic location information for an IP address.
Parameters:
ip
(optional): IPv4 or IPv6 address to look up.
Returns: Country, city, coordinates, timezone, postal code, etc.
lookup_ip_address_privacy
Verify whether an IP address is detected as a VPN, proxy, other anonymizing service; is on an abuse blocklist; or is a hosting provider.
Parameters:
ip
(optional): IPv4 or IPv6 address to look up.
Returns: VPN status, proxy detection, Tor exit node status, hosting provider information.
lookup_ip_address_network
Get network and ASN (Autonomous System Number) information for an IP address.
Parameters:
ip
(optional): IPv4 or IPv6 address to look up.
Returns: ASN details, network range, ISP information, regional registry.
lookup_ip_address_company
Retrieve company/organization information for an IP address.
Parameters:
ip
(optional): IPv4 or IPv6 address to look up.
Returns: Company name, domain, country, organization type.
lookup_ip_address_abuse_contacts
Get abuse contact information for an IP address to report malicious activity.
Parameters:
ip
(optional): IPv4 or IPv6 address to look up.
Returns: Abuse contact email, phone, address, and network range.
Available prompts
The server also provides pre - configured prompts to assist with common IP analysis tasks:
check_ip_security
Analyze an IP address for security concerns, including VPN, proxy, Tor usage, and abuse history.
Example usage: "Use the check_ip_security prompt to analyze 192.168.1.1"
locate_ip_geographically
Get detailed geographic information about an IP address.
Example usage: "Use the locate_ip_geographically prompt to find where I am"
investigate_ip_ownership
Get detailed information about who owns and operates an IP address.
Example usage: "Use the investigate_ip_ownership prompt to check who owns 8.8.8.8"
ip_comparison
Compare geographic and network information between two IP addresses.
Example usage: "Use the ip_comparison prompt to compare 1.1.1.1 and 8.8.8.8"
📦 Installation
Requirements
To follow our quick start setup instructions, you will need:
- Node.js 18 or higher
- npm
- A compatible MCP client. For example, Cursor, Claude Desktop.
Add your API key
You can make up to 50 requests per day without an API key.
Sign up for a free API key at IPLocate.io to increase your free quota to 1,000 requests per day.
Sign up for a free API key
- Visit https://iplocate.io/signup
- Create a free account
- Get your API key from the dashboard
Using an API key with this server
The server automatically reads your API key from the IPLOCATE_API_KEY
environment variable. Configure it in your MCP client settings (see the configuration examples above) or set it when running manually.
Running the server manually
If you need to run the server manually (for development or testing), you have several options:
Prerequisites
- Node.js 18 or higher
- npm or yarn
Using npx (recommended)
npx -y @iplocate/mcp-server
With API key:
On macOS/Linux:
export IPLOCATE_API_KEY=your_api_key_here
npx -y @iplocate/mcp-server
On Windows:
set IPLOCATE_API_KEY=your_api_key_here
npx -y @iplocate/mcp-server
Install from npm
npm install -g @iplocate/mcp-server
mcp-server-iplocate
Install from source
git clone https://github.com/iplocate/mcp-server-iplocate.git
cd mcp-server-iplocate
yarn install
yarn build
yarn start
For development with auto - reload:
yarn dev
Testing
You can test the server using the MCP Inspector:
npx @modelcontextprotocol/inspector node dist/index.js
📚 Documentation
API Response Format
The IPLocate API returns comprehensive data about IP addresses. Here's an example response structure:
{
"ip": "8.8.8.8",
"country": "United States",
"country_code": "US",
"city": "Mountain View",
"latitude": 37.386,
"longitude": -122.0838,
"asn": {
"asn": "AS15169",
"name": "Google LLC",
"domain": "google.com"
},
"privacy": {
"is_vpn": false,
"is_proxy": false,
"is_tor": false,
"is_hosting": true
}
}
For full details, see the IPLocate API documentation.
🤝 Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🛠️ Support
🙏 Acknowledgments
🌐 About IPLocate.io
Since 2017, IPLocate has been committed to providing the most reliable and accurate IP address data.
We process 50TB+ of data to produce our comprehensive IP geolocation, IP to company, proxy and VPN detection, hosting detection, ASN, and WHOIS data sets. Our API handles over 15 billion requests a month for thousands of businesses and developers.