WhoisFreaks
Un servidor del Protocolo de Contexto de Modelo (MCP) que expone el conjunto completo de la API de WhoisFreaks como herramientas invocables por IA. Funciona con Claude Desktop, Cursor, Windsurf, VS Code, Continue, Zed y cualquier otro cliente de IA compatible con MCP.
Documentación
Servidor MCP de WhoisFreaks
Un servidor Model Context Protocol (MCP) que expone el conjunto completo de la API de WhoisFreaks como herramientas invocables por IA. Funciona con Claude Desktop, Cursor, Windsurf, VS Code, Continue, Zed y cualquier otro cliente de IA compatible con MCP.
Dos formas de ejecutarlo: elige la que se adapte a tu configuración:
| Método | Requisitos | Ideal para | |
|---|---|---|---|
| ⭐ Recomendado | Docker (imagen precompilada) | Solo Docker | Todos: no se necesita Java ni Maven |
| Compilar desde el código fuente | Java 17 + Maven | Contribuyentes / compilaciones personalizadas |
Una vez en ejecución, conéctalo a cualquier cliente MCP mediante stdio (local) o HTTP/SSE en el puerto 3100 (VM remota).
Tabla de contenidos
- Referencia de herramientas (14 herramientas)
- Inicio rápido
- Requisitos previos
- Integración con plataformas
- Ejemplos de prompts
- Solución de problemas
Referencia de herramientas
Herramientas WHOIS
| Herramienta | Descripción |
|---|---|
liveWhoisLookup | Datos WHOIS en tiempo real para cualquier dominio: registrador, titular, fechas, servidores de nombres |
whoisHistory | Historial completo de propiedad de un dominio |
reverseWhoisLookup | Encuentra todos los dominios registrados por una dirección de correo, palabra clave, nombre del propietario o empresa |
Herramientas WHOIS de IP y ASN
| Herramienta | Descripción |
|---|---|
ipWhoisLookup | Datos de registro WHOIS para cualquier dirección IPv4 o IPv6 |
asnWhoisLookup | Datos WHOIS para un Número de Sistema Autónomo (p. ej. AS15169) |
Herramientas DNS
| Herramienta | Descripción |
|---|---|
dnsLookup | Registros DNS en vivo: A, AAAA, MX, NS, CNAME, SOA, TXT, SPF o todos |
dnsHistory | Registros DNS históricos con cronología completa de cambios |
reverseDnsLookup | Encuentra todos los dominios que apuntan a una IP o servidor de nombres determinado |
Herramientas de inteligencia de IP
| Herramienta | Descripción |
|---|---|
ipGeolocation | País, ciudad, región, ISP y coordenadas para cualquier dirección IP |
ipSecurity | VPN, proxy, nodo de salida Tor, bot e inteligencia de amenazas para cualquier IP |
Herramientas de dominios
| Herramienta | Descripción |
|---|---|
domainAvailability | Comprueba si un dominio está disponible para registrar, con sugerencias opcionales |
subdomainLookup | Enumera todos los subdominios conocidos de un dominio, con filtros de estado y fecha |
domainDiscovery | Encuentra dominios por palabra clave, incluidos typosquatting y variantes similares |
Herramientas SSL
| Herramienta | Descripción |
|---|---|
sslLookup | Detalles del certificado SSL/TLS: emisor, caducidad, SAN, cadena y salida sin procesar |
Inicio rápido
⭐ Recomendado — Docker
No se requiere Java ni Maven. Descarga la imagen precompilada directamente desde Docker Hub y ejecútala.
Obtén primero tu clave API gratuita: whoisfreaks.com/signup
Opción 1 — docker run directo (el más sencillo)
docker run -d \
--name whoisfreaks-mcp \
--restart unless-stopped \
-p 3100:3100 \
-e WHOISFREAKS_API_KEY=your-api-key-here \
whoisfreaks/mcp-server:latest
La puerta de enlace MCP ya está activa en http://localhost:3100/sse.
Opción 2 — Docker Compose (recomendado para producción / VM)
Crea un docker-compose.yml:
services:
whoisfreaks-mcp:
image: whoisfreaks/mcp-server:latest
container_name: whoisfreaks-mcp
restart: unless-stopped
ports:
- "3100:3100"
environment:
WHOISFREAKS_API_KEY: your-api-key-here
Inícialo:
docker compose up -d
O usa un archivo .env en lugar de codificar la clave (recomendado):
# Create .env file (never commit this to git)
echo "WHOISFREAKS_API_KEY=your-api-key-here" > .env
docker compose up -d
Verifica que Docker funciona
# Container should show as "Up"
docker ps
# SSE endpoint should respond
curl http://localhost:3100/health
# → {"status":"ok"}
# List all 14 registered tools
curl http://localhost:3100/tools/list
Uso con Claude Desktop (modo stdio de Docker)
Claude Desktop requiere transporte stdio. Anula el entrypoint de Docker para omitir mcp-proxy y ejecutar el JAR directamente:
{
"mcpServers": {
"whoisfreaks": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "WHOISFREAKS_API_KEY=your-api-key-here",
"--entrypoint", "java",
"whoisfreaks/mcp-server:latest",
"-jar", "app.jar"
]
}
}
}
No se necesita mapeo de puertos aquí: Claude Desktop se comunica con el contenedor directamente mediante stdio.
Compilar desde el código fuente
Solo es necesario si quieres modificar el código o crear una versión personalizada.
Requisitos previos:
| Requisito | Versión mínima | Notas |
|---|---|---|
| Java (JDK) | 17 | Compruébalo con java -version |
| Maven | 3.8 | Compruébalo con mvn -version |
| Clave API de WhoisFreaks | — | Obtén la tuya en whoisfreaks.com/signup |
Clona y compila:
git clone https://github.com/whoisfreaks/whoisfreaks-mcp-server.git
cd whoisfreaks-mcp-server
mvn clean package -q
Esto produce un único JAR autocontenido (fat JAR):
target/whoisfreaks-mcp-server-1.0.0.jar
Consejo: Anota la ruta absoluta de este JAR: la necesitarás en las configuraciones de plataforma a continuación. Ejemplo:
/Users/yourname/whoisfreaks-mcp-server/target/whoisfreaks-mcp-server-1.0.0.jar
Requisitos previos
| Requisito | Notas |
|---|---|
| Docker | Necesario para la ruta Docker recomendada |
| Java 17 + Maven 3.8 | Necesario solo si compilas desde el código fuente |
| Clave API de WhoisFreaks | Gratuita en whoisfreaks.com/signup |
Integración con plataformas
1. Claude Desktop
El cliente MCP más popular. Claude Desktop inicia el servidor MCP como un subproceso al arrancar y se comunica mediante stdio; no admite URLs SSE/HTTP.
Ubicación del archivo de configuración:
| SO | Ruta |
|---|---|
| macOS | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Windows | %APPDATA%\Claude\claude_desktop_config.json |
| Linux | ~/.config/Claude/claude_desktop_config.json |
⭐ Opción A — Docker (recomendado, sin necesidad de Java)
{
"mcpServers": {
"whoisfreaks": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "WHOISFREAKS_API_KEY=your-api-key-here",
"--entrypoint", "java",
"whoisfreaks/mcp-server:latest",
"-jar", "app.jar"
]
}
}
}
Docker debe estar en ejecución antes de abrir Claude Desktop. La imagen se descarga automáticamente en el primer uso.
Opción B — JAR directamente (requiere Java 17)
{
"mcpServers": {
"whoisfreaks": {
"command": "java",
"args": ["-jar", "/absolute/path/to/whoisfreaks-mcp-server-1.0.0.jar"],
"env": {
"WHOISFREAKS_API_KEY": "your-api-key-here"
}
}
}
}
Pasos (ambas opciones):
- Pega la configuración anterior en el archivo de configuración (créealo si no existe)
- Guarda el archivo
- Cierra Claude Desktop por completo (
Cmd+Qen macOS / salir desde la barra de tareas en Windows) - Vuelve a abrir Claude Desktop
- Haz clic en el icono de martillo (Herramientas) en el campo de chat: deberías ver 14 herramientas de WhoisFreaks en la lista
Verifica que funciona: Escribe Who owns google.com? y Claude llamará automáticamente a liveWhoisLookup.
2. Cursor IDE
Cursor admite transportes stdio y SSE. Archivo de configuración: ~/.cursor/mcp.json
⭐ Opción A — Docker mediante SSE (recomendado)
{
"mcpServers": {
"whoisfreaks": {
"url": "http://localhost:3100/sse",
"transport": "sse"
}
}
}
Inicia primero el contenedor Docker:
docker run -d -p 3100:3100 -e WHOISFREAKS_API_KEY=your-key whoisfreaks/mcp-server:latest
Opción B — Docker mediante stdio (sin necesidad de puerto)
{
"mcpServers": {
"whoisfreaks": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "WHOISFREAKS_API_KEY=your-api-key-here",
"--entrypoint", "java",
"whoisfreaks/mcp-server:latest",
"-jar", "app.jar"
]
}
}
}
Opción C — JAR directamente (requiere Java 17)
{
"mcpServers": {
"whoisfreaks": {
"command": "java",
"args": ["-jar", "/absolute/path/to/whoisfreaks-mcp-server-1.0.0.jar"],
"env": {
"WHOISFREAKS_API_KEY": "your-api-key-here"
}
}
}
}
Pasos:
- Guarda
~/.cursor/mcp.jsoncon la opción elegida - Reinicia Cursor
- Abre el Panel de IA (
Cmd+L) → deberías ver un indicador de herramientas que muestra las herramientas de WhoisFreaks - Pregunta:
Check the SSL certificate for github.com
3. Windsurf IDE
Windsurf (de Codeium) admite MCP a través de su barra lateral de IA Cascade.
Ubicación del archivo de configuración:
| SO | Ruta |
|---|---|
| macOS | ~/.codeium/windsurf/mcp_config.json |
| Windows | %USERPROFILE%\.codeium\windsurf\mcp_config.json |
| Linux | ~/.codeium/windsurf/mcp_config.json |
⭐ Opción A — Docker mediante stdio (recomendado)
{
"mcpServers": {
"whoisfreaks": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "WHOISFREAKS_API_KEY=your-api-key-here",
"--entrypoint", "java",
"whoisfreaks/mcp-server:latest",
"-jar", "app.jar"
]
}
}
}
Opción B — JAR directamente (requiere Java 17)
{
"mcpServers": {
"whoisfreaks": {
"command": "java",
"args": ["-jar", "/absolute/path/to/whoisfreaks-mcp-server-1.0.0.jar"],
"env": {
"WHOISFREAKS_API_KEY": "your-api-key-here"
}
}
}
}
Pasos:
- Guarda la configuración con la opción elegida
- Reinicia Windsurf
- Abre la barra lateral de Cascade → busca el indicador de herramientas MCP (icono de enchufe)
- Pregunta:
Find all subdomains of tesla.com
Nota: Windsurf requiere que Cascade esté en modo Write para usar herramientas. Cámbialo desde el encabezado de Cascade si las herramientas no se están invocando.
4. VS Code + GitHub Copilot
VS Code admite herramientas MCP a través de la extensión GitHub Copilot (función Chat Participants / Tools).
Archivo de configuración (.vscode/mcp.json en tu espacio de trabajo, o ~/.vscode/mcp.json globalmente):
⭐ Opción A — Docker mediante SSE (recomendado, el contenedor debe estar en ejecución)
{
"servers": {
"whoisfreaks": {
"type": "sse",
"url": "http://localhost:3100/sse"
}
}
}
Inicia primero el contenedor:
docker run -d -p 3100:3100 -e WHOISFREAKS_API_KEY=your-key whoisfreaks/mcp-server:latest
Opción B — Docker mediante stdio
{
"servers": {
"whoisfreaks": {
"type": "stdio",
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "WHOISFREAKS_API_KEY=your-api-key-here",
"--entrypoint", "java",
"whoisfreaks/mcp-server:latest",
"-jar", "app.jar"
]
}
}
}
Opción C — JAR directamente (requiere Java 17)
{
"servers": {
"whoisfreaks": {
"type": "stdio",
"command": "java",
"args": ["-jar", "/absolute/path/to/whoisfreaks-mcp-server-1.0.0.jar"],
"env": {
"WHOISFREAKS_API_KEY": "your-api-key-here"
}
}
}
}
Pasos:
- Asegúrate de tener instalada la extensión GitHub Copilot Chat (v1.99+)
- Guarda el archivo de configuración anterior con la opción elegida
- Abre Copilot Chat (
Ctrl+Shift+I/Cmd+Shift+I) - Cambia el modelo a modo Agente usando el menú desplegable
- Haz clic en el botón Tools — las herramientas de WhoisFreaks deberían aparecer en la lista
- Pregunta:
What are the MX records for github.com?
Requisito: VS Code 1.99+ y la extensión GitHub Copilot Chat son necesarios para el soporte de herramientas MCP.
5. Continue.dev
Continue es un asistente de codificación de IA de código abierto con soporte MCP para VS Code e IDE de JetBrains.
Archivo de configuración (~/.continue/config.json):
⭐ Opción A — Docker mediante SSE (recomendado, el contenedor debe estar en ejecución)
{
"mcpServers": [
{
"name": "whoisfreaks",
"url": "http://localhost:3100/sse",
"transport": "sse"
}
]
}
Inicia primero el contenedor:
docker run -d -p 3100:3100 -e WHOISFREAKS_API_KEY=your-key whoisfreaks/mcp-server:latest
Opción B — Docker mediante stdio
{
"mcpServers": [
{
"name": "whoisfreaks",
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "WHOISFREAKS_API_KEY=your-api-key-here",
"--entrypoint", "java",
"whoisfreaks/mcp-server:latest",
"-jar", "app.jar"
]
}
]
}
Opción C — JAR directamente (requiere Java 17)
{
"mcpServers": [
{
"name": "whoisfreaks",
"command": "java",
"args": ["-jar", "/absolute/path/to/whoisfreaks-mcp-server-1.0.0.jar"],
"env": {
"WHOISFREAKS_API_KEY": "your-api-key-here"
}
}
]
}
Pasos:
- Instala la extensión Continue desde VS Code Marketplace o JetBrains Plugin Marketplace
- Edita
~/.continue/config.jsoncon la opción elegida - Recarga la ventana (
Cmd+Shift+P→Reload Window) - Abre la barra lateral de Continue: las herramientas de WhoisFreaks estarán disponibles en el chat
- Pregunta:
Look up IP geolocation for 1.1.1.1
6. Zed Editor
Zed tiene un asistente de IA integrado con soporte MCP a través de su configuración assistant.
Archivo de configuración (~/.config/zed/settings.json):
⭐ Opción A — Docker mediante stdio (recomendado)
{
"assistant": {
"mcp_servers": {
"whoisfreaks": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "WHOISFREAKS_API_KEY=your-api-key-here",
"--entrypoint", "java",
"whoisfreaks/mcp-server:latest",
"-jar", "app.jar"
]
}
}
}
}
Opción B — JAR directamente (requiere Java 17)
{
"assistant": {
"mcp_servers": {
"whoisfreaks": {
"command": "java",
"args": ["-jar", "/absolute/path/to/whoisfreaks-mcp-server-1.0.0.jar"],
"env": {
"WHOISFREAKS_API_KEY": "your-api-key-here"
}
}
}
}
}
Pasos:
- Abre Zed → menú
Zed→Settings(oCmd+,) - Añade el bloque
mcp_serversa tu JSON de configuración existente usando la opción elegida - Guarda y reinicia Zed
- Abre el panel de IA (
Cmd+?) → las herramientas aparecerán bajo el indicador de herramientas - Pregunta:
Is the domain myapp.io available?
Ejemplos de prompts
Una vez configurado en cualquiera de los clientes anteriores, prueba estos prompts:
# WHOIS
Who owns the domain apple.com? Give me full WHOIS details.
Show me the complete ownership history for whoisfreaks.com.
Find all domains registered by admin@google.com.
# IP & ASN WHOIS
What organization owns the IP address 8.8.8.8?
Look up ASN information for AS15169.
# DNS
What are the MX and NS records for github.com?
Has facebook.com changed its IP addresses in the last 2 years? (DNS history)
Which domains are pointing to the IP 104.21.0.0? (reverse DNS)
# IP Intelligence
Where is 1.1.1.1 located? What ISP runs it?
Is 185.220.101.45 a Tor exit node or a VPN?
# Domain Tools
Is mycompany.io available to register? Suggest 5 alternatives.
List all known subdomains of tesla.com.
Find domains similar to 'google' — possible typosquatting targets.
# SSL
Check the SSL certificate for github.com — who issued it and when does it expire?
Variables de entorno
| Variable | Obligatoria | Descripción |
|---|---|---|
WHOISFREAKS_API_KEY | Sí | Tu clave API de whoisfreaks.com/billing. Las 14 herramientas llaman a api.whoisfreaks.com directamente usando esta clave: no se necesitan otras variables. |
Solución de problemas
Errores de API
| Problema | Causa | Solución |
|---|---|---|
WHOISFREAKS_API_KEY is not set | Falta la variable de entorno | Añade -e WHOISFREAKS_API_KEY=your-key al comando Docker, o añádela al bloque env en la configuración de tu cliente |
Unauthorized (HTTP 401/403) | Clave API no válida o inactiva | Verifica la clave en whoisfreaks.com/billing |
No data found (HTTP 404) | Dominio/IP/ASN no está en la base de datos | Vuelve a comprobar que el valor de entrada es correcto |
Rate limit reached (HTTP 429) | Demasiadas solicitudes | Reduce la velocidad o mejora tu plan |
Credit limit exceeded (HTTP 413) | Créditos agotados | Añade créditos en whoisfreaks.com/billing |
Timeout (HTTP 408) | El servidor WHOIS ascendente es lento | Reintenta: algunos TLD tienen servidores WHOIS lentos |
Errores de Docker
| Problema | Causa | Solución |
|---|---|---|
Cannot connect to Docker daemon | Docker Desktop no está en ejecución | Abre Docker Desktop y espera a que el motor se inicie |
| El contenedor se cierra inmediatamente | Falta la clave API o el entrypoint es incorrecto | Revisa los registros: docker logs whoisfreaks-mcp |
port 3100 already in use | Otro proceso en el puerto 3100 | Deténlo: docker rm -f whoisfreaks-mcp y luego reintenta |
no such image | La imagen aún no se ha descargado | Ejecuta docker pull whoisfreaks/mcp-server:latest primero |
| Claude Desktop: las herramientas no aparecen con la configuración Docker | Docker no está en el PATH que ve la aplicación | Usa la ruta completa de Docker: /usr/local/bin/docker como command |
lstat deploy: no such file or directory (CI/CD) | Problema de ruta relativa en GitHub Actions | Usa ${{ github.workspace }}/deploy/Dockerfile para rutas absolutas |
Gateway connection refused en el puerto 3100 | El contenedor no está en ejecución o el puerto no está mapeado | Ejecuta docker ps: asegúrate de que -p 3100:3100 esté en el comando de ejecución |
| La conexión SSE se cae después de unos segundos | Tiempo de espera del proxy Nginx | Añade proxy_read_timeout 3600s; a tu bloque de ubicación de Nginx |
Errores de cliente
| Problema | Causa | Solución |
|---|---|---|
| Herramientas no visibles en el cliente | Configuración no guardada o cliente no reiniciado | Guardar configuración → salir completamente y reabrir el cliente |
UnsupportedClassVersionError (modo JAR) | Versión de Java demasiado antigua | Actualizar a Java 17+ (java -version para comprobar) |
| Ruta JAR incorrecta | Ruta relativa en la configuración | Usar la ruta absoluta completa al JAR |
| Cursor muestra las herramientas pero no las llama | Modo Agent no habilitado | Cambiar Cursor al modo Agent, no al modo Chat |
| Claude Desktop omite la entrada whoisfreaks | URL SSE usada en lugar de stdio | Claude Desktop requiere command/args — no url. Usar la configuración Docker stdio mostrada arriba |
| Herramientas de Windsurf no invocadas | Modo Cascade incorrecto | Cambiar Cascade al modo Write desde el encabezado de Cascade |
Enlaces
- Documentación de la API de WhoisFreaks: https://whoisfreaks.com/documentation
- Clave API y Facturación: https://whoisfreaks.com/billing
- Especificación del Protocolo MCP: https://modelcontextprotocol.io
- MCP Inspector (herramienta de prueba):
npx @modelcontextprotocol/inspector - Problemas y Soporte: Abrir un issue en GitHub