HDW MCP Server
Accede y gestiona datos de LinkedIn y cuentas de usuario mediante la API de HorizonDataWave.
Documentación
Servidor MCP de Anysite
Toda la web es tu base de datos. Tu asistente de IA es la interfaz de consulta.
Un servidor de Protocolo de Contexto de Modelo (MCP) que permite a Claude, Cursor, ChatGPT y cualquier cliente MCP consultar datos estructurados de LinkedIn, Instagram, Twitter/X, Reddit, YouTube, SEC EDGAR, Y Combinator, Crunchbase y cualquier URL de la web, a través de cinco herramientas universales, además de herramientas de escritura para CRM.
Inicio rápido
Conéctate directamente al servidor alojado en https://mcp.anysite.io/mcp. Habla MCP sobre HTTP Streamable con OAuth 2.0 y funciona con Claude Desktop, Claude Code, Cursor, Cline, Windsurf, ChatGPT y cualquier cliente compatible con MCP.
Si tu cliente admite transporte HTTP, no necesitas este paquete npm. El paquete existe como un puente stdio para clientes que solo hablan stdio.
Paso 1: Regístrate
Crea una cuenta en anysite.io. El código promocional MCP30 cubre tu primer mes de MCP Unlimited ($30/mes, 6 solicitudes/min de uso justo, sin conteo de créditos). Los planes basados en créditos (Starter $49 / Growth $200 / Scale $300 / Pro $549 / Enterprise desde $1,199) también incluyen acceso MCP; consulta docs.anysite.io/mcp-server/overview.
Paso 2: Conecta tu cliente
Claude Desktop — OAuth
- Configuración → Conectores → Agregar conector personalizado
- URL:
https://mcp.anysite.io/mcp - Haz clic en Conectar y autoriza en el navegador
- Requerido: Configuración → Capacidades → Acceso a herramientas → Herramientas ya cargadas
El último paso es crítico. El modo "Cargar herramientas cuando sea necesario" de Claude Desktop usa coincidencia basada en nombres que falla con nombres genéricos como discover y execute. Si lo omites, las herramientas existen pero el modelo no las llamará de manera confiable.
Claude Code
claude mcp add --transport http anysite "https://mcp.anysite.io/mcp?api_key=YOUR_KEY"
claude mcp list # should show: anysite connected
La URL contiene tu clave de API: trátala como un secreto.
Cursor
Edita ~/.cursor/mcp.json (global) o .cursor/mcp.json en la raíz del proyecto:
{
"mcpServers": {
"anysite": {
"url": "https://mcp.anysite.io/mcp?api_key=YOUR_KEY",
"transport": "http"
}
}
}
Cline, Windsurf, ChatGPT, cualquier cliente MCP
Apunta cualquier cliente compatible a https://mcp.anysite.io/mcp y autentícate mediante OAuth o ?api_key=YOUR_KEY.
Paso 3: Verifica
Pregunta al asistente:
What MCP tools do you have from anysite?
Debería listar: discover, execute, get_page, query_cache, export_data — más ocho herramientas crm_* si la integración de CRM está habilitada en tu cuenta.
Paso 4: Ejecuta una consulta
Use anysite to find 20 CTOs at Series B fintech startups in New York,
then show me the ones with AI or ML in their headline.
El asistente ejecuta discover en LinkedIn, elige el endpoint de búsqueda correcto, llama a execute y luego filtra del lado del servidor con query_cache.
Puente stdio (paquete npm)
@anysiteio/mcp es un proxy local ligero: se ejecuta en stdio y reenvía cada solicitud a https://mcp.anysite.io/mcp a través de HTTP Streamable con tu token. No hay lógica de negocio en el paquete: las herramientas, instrucciones, caché y exportaciones provienen todas del servidor, por lo que los nuevos endpoints y herramientas aparecen sin necesidad de actualizar el paquete.
Úsalo cuando tu cliente no pueda hablar transporte HTTP: complementos de IDE solo stdio, versiones antiguas de Cline/Continue, ejecutores stdio personalizados o entornos donde el HTTP saliente deba pasar por un proceso local gestionado.
Instalación
npm install -g @anysiteio/mcp
O ejecuta bajo demanda con npx -y @anysiteio/mcp.
Configura tu cliente
{
"mcpServers": {
"anysite": {
"command": "npx",
"args": ["-y", "@anysiteio/mcp"],
"env": {
"ANYSITE_ACCESS_TOKEN": "your_token_here"
}
}
}
}
Esa es toda la configuración. Solo se requiere ANYSITE_ACCESS_TOKEN: crea uno en app.anysite.io. El token también puede vivir en ~/.anysite-mcp.env.
Las herramientas
| Herramienta | Propósito |
|---|---|
discover(source, category) | Lista los endpoints de una categoría con sus parámetros y sugerencias para LLM. Llámala siempre antes de execute. |
execute(source, category, endpoint, params) | Obtiene datos. Devuelve los primeros 10 elementos + cache_key. |
get_page(cache_key, offset, limit) | Pagina elementos en caché sin volver a obtenerlos (límite ≤ 50). |
query_cache(cache_key, conditions?, sort_by?, aggregate?, group_by?) | Filtra / ordena / agrega elementos en caché del lado del servidor. |
export_data(cache_key, output_format, list_unpack?) | Vuelca el conjunto de datos completo a json / jsonl / csv. Devuelve una URL de descarga. |
crm_* (8 herramientas) | Lectura/escritura de HubSpot y similares: conexiones, esquema, upsert de contactos/empresas, consulta, deshacer. Visible solo cuando el CRM está habilitado para tu cuenta. |
Fuentes disponibles a través de discover: LinkedIn, Instagram, Twitter/X, Reddit, YouTube, SEC EDGAR, Y Combinator, Crunchbase, DuckDuckGo, el analizador web universal, además de analizadores de IA para GitHub, Amazon, Google Maps, G2, BuiltWith, Apify, GLEIF, Newegg y más. Los nuevos endpoints aparecen automáticamente tan pronto como se publican en la plataforma.
Los datos obtenidos por execute se almacenan en caché del lado del servidor durante 7 días: una llamada a execute() y luego llamadas ilimitadas a get_page / query_cache / export_data sin volver a pagar créditos de API. Los archivos de exportación viven durante 24 horas (se regeneran bajo demanda mientras la entrada de caché esté viva).
Patrón de uso
discover("linkedin", "search")
→ endpoints: ["users", "companies", "posts", ...] with params
execute("linkedin", "search", "users", { keywords: "CTO AI" })
→ { items: [...first 10], total: 50, cache_key: "abc..." , next_offset: 10 }
get_page("abc...", offset=10) # next page, free
query_cache("abc...", { conditions: [{ field: "location", op: "contains", value: "San Francisco" }] })
export_data("abc...", "csv") # full dataset as a CSV download URL
El agente deduce los nombres de los parámetros por sí mismo a partir de discover.
Migración desde 2.x
v3 es un cambio importante: el paquete ya no reimplementa el servidor localmente, sino que actúa como proxy del servidor MCP alojado. Lo que cambia para ti:
export_datadevuelve una URL de descarga (https://mcp.anysite.io/exports/…) en lugar de una ruta de archivo local. El campofile_pathdesaparece; los agentes que leen el archivo exportado desde el disco deben descargarlo en su lugar. La URL es accesible sin token (el nombre del archivo es imposible de adivinar) y vive durante 24 horas: no compartas el enlace si los datos son sensibles.- El parámetro
export_dataesoutput_format. El nombre antiguoformatse reescribe de forma transparente por el puente para compatibilidad hacia atrás, pero los nuevos prompts deben usaroutput_format. get_pagelimitalimita 50 (límite de tamaño de página del lado del servidor).- La caché ahora es del lado del servidor (TTL de 7 días, sobrevive a reinicios, compartida entre tus sesiones) en lugar de en proceso.
- Aparecen herramientas de CRM (8 herramientas
crm_*) cuando la integración de CRM está habilitada en tu cuenta. - Las variables de entorno
ANYSITE_API_URLyANYSITE_OPENAPI_URLse eliminan — el puente habla con el servidor MCP, no con la API cruda. UsaANYSITE_MCP_URLpara apuntar a un servidor MCP diferente. - Los alias
bindeanysiteymcpse eliminan — el comando esanysite-mcp. - Dos endpoints de LinkedIn accesibles en 2.x (
sn_search/users,company/employees) están excluidos por la política del servidor. - Los resultados de las herramientas ya no llevan un
mimeTypeen los elementos de contenido — el servidor define la forma de la respuesta. - Cancelar un
tools/calllargo detiene la espera del lado del cliente, pero el servidor sigue procesando la solicitud (el transporte sin estado no puede entregar la cancelación) — el trabajo aún se factura.
Skills — flujos de trabajo listos para usar
El servidor MCP da acceso crudo. Anysite Skills empaqueta ese acceso en flujos de trabajo con nombre que invocas por tema, para que el asistente ejecute un patrón probado en lugar de improvisar. Diseñado para Claude Code (también funciona en Cursor / Windsurf mediante el mismo formato de complemento).
| Flujo de trabajo | Qué dices | Qué hace |
|---|---|---|
| Generación de leads | "Encuéntrame 50 directores de marketing en SaaS Serie A en Berlín y enriquece con correo electrónico" | Búsqueda en LinkedIn → enriquecimiento → CSV |
| Inteligencia competitiva | "Rastrea @competitor en contrataciones de LinkedIn, redes sociales, YC y publicaciones recientes" | Inteligencia multifuente + velocidad de contratación + sentimiento |
| Analizador de personas | "Analiza a fondo este perfil de LinkedIn antes de nuestra llamada de partnership" | LinkedIn + Twitter + Reddit + GitHub + web → informe estratégico |
| Investigación de mercado | "Mapea el panorama legal-tech de IA: startups, financiación, impulso" | YC + Crunchbase + SEC + Reddit + sentimiento de Twitter |
| Minería de dolor del cliente | "Extrae quejas textuales sobre Salesforce de Reddit y Twitter" | Clústeres de dolor + citas exactas + brechas de espacio en blanco |
| Reputación de marca | "¿Cuál es la conversación sobre nuestra marca esta semana?" | Escaneo de menciones multiplataforma con puntuación de sentimiento |
| Mapa de posicionamiento | "Traza 3-5 competidores en un mapa de posicionamiento, encuentra el cuadrante vacío" | Comparación de cinco ejes + declaración de posicionamiento |
Catálogo completo (17 skills, incluidos analista de VC, descubrimiento de influencers, análisis de audiencia, análisis de contenido, análisis de tendencias): github.com/anysiteio/agent-skills.
Instalación
En Claude Code:
/plugin marketplace add https://github.com/anysiteio/agent-skills
/plugin install anysite-lead-generation@anysite-skills
Puedes instalar una skill o todo el marketplace. La conexión al servidor MCP anterior es el único requisito previo.
Desarrollo local
git clone https://github.com/anysiteio/anysite-mcp.git
cd anysite-mcp
npm install
npm run build:tsc
ANYSITE_ACCESS_TOKEN=... node build/server.js
Inspecciona las herramientas de forma interactiva:
npm run inspector
Configuración
| Variable de entorno | Requerida | Predeterminado | Notas |
|---|---|---|---|
ANYSITE_ACCESS_TOKEN | sí | — | Crea una en app.anysite.io |
ANYSITE_MCP_URL | no | https://mcp.anysite.io/mcp | Sobrescribe la URL del servidor MCP remoto |
Las variables también pueden vivir en ./.env o ~/.anysite-mcp.env (las variables de entorno reales y ./.env tienen prioridad sobre ~/.anysite-mcp.env).
Si el servidor remoto no está disponible al inicio, el puente aún se inicia en modo degradado (lista de herramientas vacía, errores descriptivos en las llamadas), sigue reconectándose en segundo plano y anuncia la lista de herramientas a través de tools/list_changed una vez que el servidor vuelve a estar disponible.
Estructura del proyecto
src/
├── server.ts stdio entry (CLI bin): env handling, connect with retries, degraded mode
├── proxy.ts the bridge: remote client, generic request forwarding, tools/list cache,
│ format→output_format shim, error mapping, background list refresh
├── index.ts Smithery TypeScript runtime adapter
└── config.ts env-derived constants