Massive
Acceso web en tiempo real para agentes de IA: obtén cualquier URL, busca en Google y consulta chatbots de IA con renderizado JS, resolución de captchas y geolocalización en más de 195 países.
Documentación
@joinmassive/mcp-server
Servidor MCP oficial para la API Massive Web Render. Dale a tus agentes de IA acceso web en tiempo real: obtén cualquier URL, busca en Google, consulta chatbots de IA, con renderizado JS, resolución de captchas y geolocalización en más de 195 países manejada automáticamente.
Inicio rápido (Claude Desktop)
Opción A — Instalación con un clic (.mcpb)
- Descarga la última
massive-mcp-X.Y.Z.mcpbdesde GitHub Releases. - Abre el archivo con Claude Desktop (o arrástralo a Configuración → Extensiones).
- Pega tu token de API de Massive cuando se te solicite. El token se almacena en el llavero de tu sistema operativo.
Opción B — npx + fragmento de configuración
Añade a ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) o %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"massive": {
"command": "npx",
"args": ["-y", "@joinmassive/mcp-server"],
"env": { "MASSIVE_TOKEN": "your-token-here" }
}
}
}
Reinicia Claude Desktop.
Inicio rápido (Claude Code)
Un solo comando, funciona en todos tus proyectos:
claude mcp add massive --scope user -e MASSIVE_TOKEN=your-token-here -- npx -y @joinmassive/mcp-server
Luego /mcp en cualquier sesión de Claude Code para confirmar que está conectado. Elimina --scope user para limitarlo solo al proyecto actual.
Otros clientes MCP
El mismo fragmento JSON funciona para cualquier cliente compatible con MCP. Colócalo en el archivo de configuración del cliente:
| Cliente | Ruta de configuración |
|---|---|
| Cursor | ~/.cursor/mcp.json |
| Continue | ~/.continue/config.json (bajo mcpServers) |
| Cody | ~/Library/Application Support/com.sourcegraph.cody/mcp.json (macOS) |
| Windsurf | ~/.codeium/windsurf/mcp_config.json |
| VS Code (MCP) | ~/.config/Code/User/settings.json (bajo chat.mcp.servers) |
Si npx no está en el PATH del cliente, cambia a una ruta binaria directa: "command": "node", "args": ["/absolute/path/to/dist/index.js"].
Obtención de un token de API
Inicia sesión en dashboard.joinmassive.com → Desarrollador → Claves de API.
Herramientas
web_fetch
Obtén cualquier URL. Devuelve Markdown por defecto (mejor para LLMs).
| Argumento | Tipo | Predeterminado | Notas |
|---|---|---|---|
url | string (obligatorio) | — | |
format | "markdown" | "rendered" | "raw" | "markdown" | |
country | string (ISO 3166-1 alpha-2) | — | |
city | string | — | |
subdivision | string | — | ISO 3166-2 (p. ej. "TN"). Se ignora si city está establecido. |
device | string | — | Nombre de emulación de dispositivo |
expiration | integer (0–365) | — | Días que se reutiliza el resultado en caché. 0 = siempre en vivo (bueno para precios, puntuaciones). |
difficulty | "low" | "medium" | "high" | "low" | Fuerza de evasión anti-bot. Multiplicadores: medium=2×, high=premium. |
Ejemplo de prompt: "Usa el servidor MCP de Massive para obtener https://news.ycombinator.com y resumir las principales noticias."
web_search
Resultados de búsqueda de Google, analizados en JSON estructurado.
| Argumento | Tipo | Predeterminado |
|---|---|---|
query (obligatorio, ≤ 255 caracteres) | string | — |
country | string (ISO) | — |
city | string | — |
subdivision | string | — |
max_results | number | 10 |
expiration | integer (0–365) | — |
language | string | — |
display | string | — |
Devuelve: { organic, ai_overview, people_also_ask, query }.
Ejemplo de forma:
{
"query": "best espresso machines 2026",
"organic": [
{ "title": "...", "url": "https://...", "snippet": "..." }
],
"ai_overview": { "answer": "...", "sources": [{ "domain": "wirecutter.com", "url": "https://..." }] },
"people_also_ask": [
{ "question": "What is the best espresso machine for beginners?", "answer": "" }
]
}
Ejemplo de prompt: "Usa web_search para encontrar reseñas recientes de máquinas de espresso y devuelve los 3 mejores resultados orgánicos más la descripción general de IA."
ai_chat_completion
Respuesta de chatbot con fuentes.
| Argumento | Tipo | Predeterminado |
|---|---|---|
prompt (obligatorio, ≤ 2047 caracteres) | string | — |
model | "chatgpt" | "gemini" | "perplexity" | "copilot" | "chatgpt" |
country | string (ISO) | — |
city | string | — |
subdivision | string | — |
expiration | integer (0–365) | — |
language | string | — |
display | string | — |
device | string | — |
Devuelve: { completion, sources, model, subqueries? }.
account_status
Sin argumentos. Devuelve { credits_remaining }. Útil para advertir al usuario antes de que se queden sin créditos. Gratis: no consume créditos.
Precios y control de costos
Costos de crédito (referencia en vivo: https://joinmassive.com/pricing):
| Endpoint | Costo base | Notas |
|---|---|---|
web_fetch | 1 crédito | Multiplicadores — difficulty=medium → 2×, difficulty=high → premium |
web_search | 1 crédito | Sin multiplicadores |
ai_chat_completion | 1 crédito | Sin multiplicadores |
account_status | Gratis | — |
Ejemplo práctico: web_fetch con difficulty=medium cuesta 1 × 2 = 2 credits.
Consejos para mantener los costos bajos
- Caché:
expiration(días) reutiliza resultados recientes. Predeterminado1. Estableceexpiration=0solo cuando la frescura importa (precios, puntuaciones, clima). - Dificultad: comienza con el predeterminado
low. Sube amedium/highsolo si el intento bajo falla. - Verifica primero: llama a
account_status(gratis) antes de lanzar un lote.
Recursos
Este servidor expone tres documentos de referencia de solo lectura en URIs docs://. Aparecen en tu cliente MCP como referencias adjuntables:
| URI | Contenido |
|---|---|
docs://massive/pricing | Costos de crédito y multiplicadores (igual que la tabla anterior, en línea en tu cliente) |
docs://massive/geotargeting | Más de 190 países, formato de subdivisión/ciudad, ejemplos |
docs://massive/changelog | Novedades en cada versión |
En Claude Desktop: abre el panel de Conectores y elige el recurso de este servidor. En Claude Code: escribe @ y busca por nombre. El modelo no los lee automáticamente; son para que tú los explores.
Solución de problemas
"MASSIVE_TOKEN env var is not set"
Confirma que el bloque env en tu configuración de Claude Desktop tiene el token. Reinicia Claude Desktop.
"Massive endpoint is autoscaling, please retry" Un 503 del servidor ascendente. El servidor ya reintentó una vez; espera ~10s e inténtalo de nuevo.
"403 Forbidden — the request was rejected (likely captcha or invalid token)" O el sitio objetivo rechazó nuestro solucionador de captchas, o el token no es válido. Vuelve a verificar el token en el panel.
No aparecen herramientas en Claude Desktop
Configuración → Desarrollador → revisa los registros del servidor MCP. La causa más común es que command: "npx" no esté en el PATH de Claude Desktop. Ejecuta which npx en Terminal; si está bajo Homebrew (/opt/homebrew/bin), el PATH de Claude Desktop no lo incluirá. Como solución alternativa, usa una ruta directa: "command": "node", "args": ["/absolute/path/to/dist/index.js"]. O instala el paquete .mcpb (Opción A anterior), que evita por completo los problemas de PATH.
Contribuciones
Se aceptan problemas y PR en github.com/joinmassive/mcp-server.
Licencia
MIT. Consulta LICENSE.