Lass KI-Assistenten IP-Intelligence-Abfragen durchführen, einschließlich Geolocation, Netzwerkbesitz und Privacy-Detection.
Auch bekannt als ipinfo/mcp, mcp, ipinfo-mcp-server
- Stars
- 2
- Tools
- 14
- Downloads, 30 Tage
- 1.367
- Neueste Version
- 0.3.2
- Letzter Commit
- 13. Nov. 2026
- Lizenz
- Apache-2.0
Was ist IPinfo MCP?
IPinfo ist ein MCP server. Lass KI-Assistenten IP-Intelligence-Abfragen durchführen, einschließlich Geolocation, Netzwerkbesitz und Privacy-Detection. Er stellt 14 Tools bereit, etwa ipinfo_lookup, ipinfo_geolocate, ipinfo_asn.
Zusammenfassung generiert aus dem README des Projekts
Über IPinfo MCP server
Der IPinfo MCP server gibt KI-Assistenten die Möglichkeit, detaillierte IP-Intelligence-Abfragen durchzuführen. Er ermöglicht es Nutzern, Geolocation-Daten, Netzwerkbesitz und Privacy-Indikatoren wie VPN- oder Tor-Nutzung abzufragen. Dieser Server ist für Entwickler konzipiert, die MCP-kompatible Clients wie Claude Desktop nutzen, und kann entweder als lokaler Server via PyPI über stdio oder als remote gehosteter Server via HTTP bereitgestellt werden.
Nutzer können je nach IPinfo-Accountplan auf verschiedene Datenebenen zugreifen, einschließlich der Tarife Lite, Core, Plus und Residential Proxy. Der Server enthält spezifische Tools wie ipinfo_lookup für vollständige Metadaten, ipinfo_geolocate für geografische Details und ipinfo_check_privacy zur Erkennung anonymer Verbindungen. Bei lokalen Setups erfolgt die Authentifizierung über eine IPINFO_TOKEN Umgebungsvariable, während die gehostete Version OAuth für den sicheren Zugriff nutzt.
Was du damit machen kannst
- 1IP-Geolocation identifizierenFrag den Assistenten, um die Stadt, Region oder die Koordinaten zu finden, die mit einer bestimmten IP-Adresse verknüpft sind.
Geschrieben aus dem README des Projekts. Jeder Use Case wurde gegen ein Zitat daraus geprüft.
So installierst du IPinfo MCP
Formate geprüft am 10. Nov. 2026Zu Cursor hinzufügenZu Goose hinzufügenIPinfo MCP in Claude Code installieren
$ claude mcp add --env 'IPINFO_TOKEN=<YOUR_IPINFO_TOKEN>' mcp -- uvx ipinfo-mcp-serverIPinfo MCP in Cursor installieren
~/.cursor/mcp.json
{
"mcpServers": {
"mcp": {
"command": "uvx",
"args": [
"ipinfo-mcp-server"
],
"env": {
"IPINFO_TOKEN": "<YOUR_IPINFO_TOKEN>"
}
}
}
}IPinfo MCP in VS Code installieren
.vscode/mcp.json
{
"servers": {
"mcp": {
"type": "stdio",
"command": "uvx",
"args": [
"ipinfo-mcp-server"
],
"env": {
"IPINFO_TOKEN": "<YOUR_IPINFO_TOKEN>"
}
}
}
}IPinfo MCP in VS Code CLI installieren
$ code --add-mcp '{"name":"mcp","type":"stdio","command":"uvx","args":["ipinfo-mcp-server"],"env":{"IPINFO_TOKEN":"<YOUR_IPINFO_TOKEN>"}}'IPinfo MCP in Claude Desktop installieren
claude_desktop_config.json
{
"mcpServers": {
"mcp": {
"command": "uvx",
"args": [
"ipinfo-mcp-server"
],
"env": {
"IPINFO_TOKEN": "<YOUR_IPINFO_TOKEN>"
}
}
}
}IPinfo MCP in Codex installieren
$ codex mcp add mcp --env 'IPINFO_TOKEN=<YOUR_IPINFO_TOKEN>' -- uvx ipinfo-mcp-serverIPinfo MCP in Codex config.toml installieren
~/.codex/config.toml
[mcp_servers.mcp] command = "uvx" args = ["ipinfo-mcp-server"] [mcp_servers.mcp.env] IPINFO_TOKEN = "<YOUR_IPINFO_TOKEN>"
IPinfo MCP in Gemini CLI installieren
$ gemini mcp add -s user -e 'IPINFO_TOKEN=<YOUR_IPINFO_TOKEN>' mcp uvx -- ipinfo-mcp-serverIPinfo MCP in Gemini settings.json installieren
~/.gemini/settings.json
{
"mcpServers": {
"mcp": {
"command": "uvx",
"args": [
"ipinfo-mcp-server"
],
"env": {
"IPINFO_TOKEN": "<YOUR_IPINFO_TOKEN>"
}
}
}
}IPinfo MCP tools 14
Erkannt aus dem READMEipinfo_lookupipinfo_geolocateipinfo_asnipinfo_check_privacyipinfo_check_residential_proxyipinfo_quotaipinfo_lite_lookupipspagepage_sizedetailedresults
| ipinfo_lookup | — | |
| ipinfo_geolocate | — | |
| ipinfo_asn | — | |
| ipinfo_check_privacy | — | |
| ipinfo_check_residential_proxy | — | |
| ipinfo_quota | — | |
| ipinfo_lite_lookup | — | |
| ips | — | |
| page | — | |
| page_size | — | |
| detailed | — | |
| results | — |
Alle 14 Tools anzeigenWeniger Tools anzeigen
errorsvalidation_errors
| errors | — | |
| validation_errors | — |
Konfiguration
IPINFO_TOKENErforderlichSecretYour IPinfo API token. Get a free one at https://ipinfo.io/signup
IPINFO_TRANSPORT
| Name | Beschreibung | Typ |
|---|---|---|
| IPINFO_TOKEN | Your IPinfo API token. Get a free one at https://ipinfo.io/signup | ErforderlichSecret |
| IPINFO_TRANSPORT | — |
Automatisierte Checks
Geluften am 12. Nov. 2026Vollständiger Bericht →Unsere automatisierten Checks bestanden. Das ist kein Security-Audit: Lies den Code und gib dem Server nur den minimal notwendigen Zugriff. Wie die Checks funktionieren
- Source Repository verknüpft und erreichbarBestanden
- Open Source Lizenz (OSI)Bestanden
- Commit oder Release im letzten JahrBestanden
- Package-Name ähnelt keinem populären PackageBestanden
- Remote Endpoint nutzt HTTPSBestanden
- Destruktive Tools sind markiertBestanden
- Keine versteckten Anweisungen an das ModellBestanden
- Keine kritischen Advisories im Paket oder seinen AbhängigkeitenBestanden
README
Auf GitHub ansehenIPinfo MCP Server
The official IPinfo MCP Server lets AI assistants such as Claude answer questions about IP addresses. Ask where an IP is located, which company or network it belongs to, or whether it's a VPN, proxy, Tor exit node, or residential proxy, and the assistant looks it up with IPinfo data.
It implements the Model Context Protocol (MCP), the open standard AI assistants use to connect to external tools, so it works with any MCP-compatible client. It supports the IPinfo Lite, Core, Plus, and Residential Proxy plans.
For the full guide, see the official documentation.
Installation
You need an IPinfo account. Sign up for free at ipinfo.io/signup.
Hosted server
Point your MCP client at https://mcp.ipinfo.io/ (Streamable HTTP). The first time it connects, it asks you to sign in with your IPinfo account through OAuth.
Local server (PyPI)
The server is published on PyPI as ipinfo-mcp-server and runs over stdio, authenticating with your API token. With uv installed, add it to your MCP client configuration:
{
"mcpServers": {
"ipinfo": {
"command": "uvx",
"args": ["ipinfo-mcp-server"],
"env": {
"IPINFO_TOKEN": "<your-ipinfo-token>"
}
}
}
}
Claude Desktop extension
Download mcp.mcpb from the latest GitHub release and open it with Claude Desktop. You'll be asked for your API token during installation.
MCP Registry
The server is listed in the MCP Registry as io.github.ipinfo/mcp.
The server is also listed on LightNow.
Tools
| Tool | Description | Plan requirement |
|---|---|---|
ipinfo_lookup |
Full IP data: geolocation, network, and metadata | Any; detailed: true needs Core/Plus |
ipinfo_geolocate |
Geographic location | Any; detailed: true needs Core/Plus |
ipinfo_asn |
Autonomous system (network ownership) | Any; detailed: true needs Core/Plus |
ipinfo_check_privacy |
VPN, proxy, relay, Tor, hosting, anycast, mobile, satellite flags | Paid plan |
ipinfo_check_residential_proxy |
Residential proxy detection | Residential Proxy access |
ipinfo_quota |
API usage and remaining quota | Any |
ipinfo_lite_lookup |
Lite IP data, for agents without an account | None; only offered to AAuth agents |
Tools that lack access for the token's plan return an ACCESS_DENIED error.
Common parameters
All tools except ipinfo_quota take a list of IPs and are paginated:
| Parameter | Type | Default | Description |
|---|---|---|---|
ips |
string[] |
required | Public IPv4 or IPv6 addresses. Private, loopback, reserved, multicast, and bogon addresses are rejected and reported in validation_errors. |
page |
integer |
1 |
1-based page of the result set. Values below 1 are clamped to 1. |
page_size |
integer |
25 |
IPs resolved per page, up to 1000. Only IPs on the requested page are fetched, so smaller pages consume less quota per call. |
ipinfo_lookup, ipinfo_geolocate, and ipinfo_asn also take:
| Parameter | Type | Default | Description |
|---|---|---|---|
detailed |
boolean |
false |
false queries the Lite endpoint. true queries the full lookup endpoint, which returns more fields. |
Common output
IP-based tools return:
| Field | Description |
|---|---|
results |
Object keyed by IP with the tool-specific data below. |
errors |
Object keyed by IP for IPs the API returned an error for. These IPs are left out of results. |
validation_errors |
Object keyed by input for values that aren't valid public IPs. Only present when there are any. |
_pagination |
total_results, page, page_size, total_pages, has_next, has_previous. |
_meta |
api_calls_made and from_cache. Results are cached in memory, so repeat lookups don't consume API quota. |
If the whole request fails (for example a missing or invalid token), the tool returns an error object instead, with code (ACCESS_DENIED, RATE_LIMITED, INVALID_TOKEN, NO_TOKEN, API_ERROR, or UNKNOWN), message, and suggestion.
ipinfo_lookup
Returns the raw IPinfo API response for each IP.
detailed: false(Lite):ip,asn,as_name,as_domain,country,country_code,continent,continent_code.detailed: true(full lookup):ip,hostname,geo(city, region, country, continent, coordinates, timezone, postal code),as(ASN, name, domain, type),anonymous(proxy, relay, Tor, VPN),mobile, and theis_anonymous,is_anycast,is_hosting,is_mobile,is_satelliteflags. Some fields are only available on Plus.
ipinfo_geolocate
Returns, per IP: ip, country, country_code, continent, continent_code. With detailed: true, also city, region, region_code, latitude, longitude, timezone, postal_code.
ipinfo_asn
Returns, per IP: ip, asn, name, domain. With detailed: true, also type (isp, hosting, business, education) and last_changed.
ipinfo_check_privacy
Returns, per IP: ip, is_anonymous, anonymous (is_proxy, is_relay, is_tor, is_vpn), is_anycast, is_hosting, is_mobile, is_satellite.
ipinfo_check_residential_proxy
Returns, per IP: ip and is_residential_proxy. For residential proxies, also service (proxy service name), last_seen (date), and percent_days_seen.
ipinfo_quota
Takes no parameters. Returns token (omitted when connected with OAuth), requests (day, month, limit, remaining), and per-feature quotas under features.
ipinfo_lite_lookup
Only offered to agents that sign their requests with AAuth, who get it in place of the tools above. Takes the common parameters and returns the Lite data for each IP: ip, asn, as_name, as_domain, country, country_code, continent, continent_code. When the daily limit for lookups without an account is reached, it returns a RATE_LIMITED error.
Configuration
The server is configured through environment variables:
| Variable | Default | Description |
|---|---|---|
IPINFO_TOKEN |
API token (stdio transport; over HTTP the token comes from the request) | |
IPINFO_API_BASE_URL |
https://api.ipinfo.io |
Base URL for api.ipinfo.io endpoints |
IPINFO_LEGACY_BASE_URL |
https://ipinfo.io |
Base URL for legacy ipinfo.io endpoints (e.g. /me) |
IPINFO_CACHE_TTL |
3600 |
Seconds a cached IP result stays fresh |
IPINFO_TRANSPORT |
stdio |
Transport type (stdio or http) |
HOST |
0.0.0.0 |
HTTP host (only for http transport) |
PORT |
8000 |
HTTP port (only for http transport) |
IPINFO_OAUTH_ISSUER |
OAuth issuer whose access tokens are accepted; OAuth is off when unset | |
IPINFO_MCP_RESOURCE_URL |
Public URL of this server, required with IPINFO_OAUTH_ISSUER |
|
IPINFO_OAUTH_JWKS_URI |
<issuer>/.well-known/jwks.json |
Where the issuer publishes its signing keys |
IPINFO_OPENAI_APPS_CHALLENGE |
Token served at /.well-known/openai-apps-challenge for OpenAI's domain verification |
|
IPINFO_AAUTH_PROVIDER_KEY |
Ed25519 private key, PEM encoded, for AAuth; AAuth is off when unset | |
IPINFO_AAUTH_ISSUER |
Public URL of this server for AAuth, required with the key |
With the http transport, each request authenticates with its own Authorization: Bearer <token> header.
Setting IPINFO_OAUTH_ISSUER turns on OAuth for the http transport. The server then advertises the issuer at /.well-known/oauth-protected-resource, answers requests without a valid credential with 401 Unauthorized, and verifies access tokens against the issuer's signing keys. A verified access token is sent to the IPinfo API in place of an API token. API tokens keep working as before.
Setting IPINFO_AAUTH_PROVIDER_KEY turns on AAuth for the http transport, so agents that sign their requests with AAuth can use ipinfo_lite_lookup without an IPinfo account. Generate the key with openssl genpkey -algorithm ed25519, and give every replica the same one. IPINFO_AAUTH_ISSUER must be the server's public URL: https, no port, path, or trailing slash. With AAuth on, the server also serves:
/aauth, the MCP endpoint for AAuth agents, whose only tool isipinfo_lite_lookup. Listing its tools needs no signature; calling one needs an AAuth signature. WhenIPINFO_MCP_RESOURCE_URLis set, only signatures made for that host are accepted./.well-known/aauth-resource.json, which points agents at/aauth. It names the origin ofIPINFO_MCP_RESOURCE_URL, or ofIPINFO_AAUTH_ISSUERwhen that is unset./.well-known/aauth-agent.jsonand/.well-known/aauth-jwks.json, the documents of the server's own AAuth agent,aauth:ipinfo-mcp@<issuer host>.
The main endpoint is unaffected.
Feedback
- Bugs and feature requests: open an issue on GitHub Issues.
- Security vulnerabilities: don't open a public issue; follow the security policy.
- Questions about your IPinfo account or plan: contact support@ipinfo.io.
Contributing
Contributions are welcome. See CONTRIBUTING.md for the workflow and the requirements a change has to meet.
Development
Prerequisites
- Python 3.14+
- uv
Setup
uv sync --dev
cp .env.example .env
# Add your IPinfo token to .env
Running the server
The server supports two transports: stdio (default) and HTTP.
# stdio (default, used by MCP clients)
uv run ipinfo-mcp-server
# HTTP
IPINFO_TRANSPORT=http HOST=0.0.0.0 PORT=8000 uv run ipinfo-mcp-server
Tests
# All tests
uv run pytest
# Integration tests (requires IPINFO_TOKEN)
uv run pytest tests/integration/
Integration tests hit the real IPinfo API and validate response structure only (no exact value assertions). They require IPINFO_TOKEN to be set and are skipped otherwise.
Type checking
uv run pyright
Linting
uv run ruff check .
uv run ruff format .
IPinfo MCP Fragen
Wie füge ich IPinfo MCP zu Claude Code hinzu?
Führe claude mcp add --env 'IPINFO_TOKEN=<YOUR_IPINFO_TOKEN>' mcp -- uvx ipinfo-mcp-server in deinem Terminal aus. Füge --scope user hinzu, damit der Server in jedem Projekt verfügbar ist.
Wie füge ich IPinfo MCP zu Cursor hinzu?
Öffne ~/.cursor/mcp.json und füge den Server unter mcpServers hinzu, mit der Cursor-Config aus dem Installationsabschnitt oben.
Welche Tools bietet IPinfo MCP?
Er stellt 14 Tools bereit, darunter ipinfo_lookup, ipinfo_geolocate, ipinfo_asn, ipinfo_check_privacy, ipinfo_check_residential_proxy.
Welche Informationen kann ich über eine IP-Adresse erhalten?
Du kannst Geolocation, Netzwerkbesitz (ASN) und Metadaten abrufen, wie zum Beispiel, ob eine IP ein VPN, Proxy, Tor-Exit-Node oder ein Residential Proxy ist.
Unterstützt der Server OAuth?
Ja, wenn du den gehosteten HTTP-Server nutzt, wirst du bei der ersten Verbindung gebeten, dich über OAuth mit deinem IPinfo-Account anzumelden.
Kann ich prüfen, ob eine IP ein Residential Proxy ist?
Ja, es gibt ein spezielles Tool namens ipinfo_check_residential_proxy zur Erkennung von Residential Proxies.