# Ipinfo

> Guides IP lookups with context reuse and proper parameters. Triggers on IP lookups, VPN detection, abuse contacts.

- Skill: `diegosouzapw/ipinfo` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add diegosouzapw/ipinfo`
- Raw SKILL.md: https://api.skillmd.com/api/skills/diegosouzapw/ipinfo/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: diegosouzapw (https://skillmd.com/u/diegosouzapw)
- Updated: 2026-09-08
- Page: https://skillmd.com/skills/diegosouzapw/ipinfo

---


# IPInfo

## Critical: Context Reuse

**Follow-up questions ("this IP", "that one", "is it a VPN?") → reuse IP from prior result.**

```
User: "lookup 195.179.201.16" → get_ip_info(ip="195.179.201.16")
User: "is this a VPN?"       → get_plus_ip_info(ip="195.179.201.16")  ← SAME IP
```

Never call with empty `{}`. Always pass `ip` explicitly.

## Tool Selection

| Intent | Tool |
|--------|------|
| General lookup | `get_ip_info(ip)` |
| VPN/proxy/Tor | `get_plus_ip_info(ip)` |
| Abuse contact | `get_abuse_contact(ip)` |
| Company info | `get_company_info(ip)` |
| Hosted domains | `get_hosted_domains(ip)` |
| WHOIS | `whois_lookup_by_ip(ip)` |
| Multiple IPs | `batch_lookup(ips)` |

## VPN Detection

Use `get_plus_ip_info` (not `get_ip_info`) for privacy flags:
- `anonymous.vpn`, `anonymous.proxy`, `anonymous.tor`
- `is_hosting` = datacenter/cloud provider

