新产品发布:Web Render API
All Posts

推出 Massive Web Render:把网络变成 AI 的 API

Jason Grad
Jason Grad · Co-founder

网络不是为机器构建的。它是为人类构建的——人类点击页面、阅读渲染后的 HTML。如今,人类希望机器替他们完成这项工作,而 AI 智能体所需要的与网络所提供的之间的差距,是智能体基础设施中最大的未解难题。

今天我们推出 Massive Web Render:三个端点,将开放网络、搜索引擎和前沿 LLM 转化为干净的 API,服务于 AI 构建者。

我们推出了什么

Web Render 是一个 API key,附带三个端点:

/ai 以编程方式查询 ChatGPT、Gemini、Perplexity 和 Copilot。你发送一个提示词,得到结构化 JSON,包含完整回答、引用来源和扩展子查询。可对 195 多个国家中的任意国家进行地理定位,比较 LLM 在东京和圣保罗给出的答案有何不同。可模拟任意设备。AEO 和 GEO 创业公司向用户收取每月 400 到 2000 美元来提供这一端点的能力,而在我们这里只需几美元。

/search 实时提取 Google 和 Bing 的搜索结果,包含 AI Overviews 和 "People Also Ask" 答案。支持地理定位、分页和语言识别。

/browser 渲染任意网页。可输出渲染后的 HTML、原始 HTML 或适合 LLM 处理的 markdown。

我们为什么构建它

二月份,我们推出了 ClawPod。这是一个 OpenClaw skill,把智能体浏览器接入我们的住宅代理网络,让那 14.5 万运行自己 OpenClaw 智能体的人真正能够在不被拦截的情况下加载网页。

ClawPod 让我们看清了智能体真正需要什么。

它不仅仅是 IP 轮换。它是完整的浏览器模拟、验证码破解、指纹处理,以及位于智能体请求和干净结构化数据之间的每一层解锁能力。表现最好的智能体并不是那些绕过了拦截的,而是那些能够拿回 LLM 可以直接推理的数据的。

我们汲取这些经验,构建了生产版本。

底层是什么:解锁层

大多数声称“可以抓取任何网站”的 API 在 IP 这一步就停住了。Web Render 走得更远,因为现代网络要求如此。

Cloudflare、DataDome 和 PerimeterX 会拦截原始 HTTP 请求。它们检查指纹、运行 JavaScript 挑战、抛出验证码,并对任何看起来像 bot 的访问限速。即使是住宅 IP,没有真实浏览器在背后,也会失败。

Web Render 处理完整的解锁堆栈:

  • 使用真实浏览器渲染,完整执行 JavaScript
  • 为 hCaptcha、reCAPTCHA 和 Cloudflare Turnstile 提供验证码破解
  • 针对 Cloudflare、DataDome 和 PerimeterX 的反 bot 绕过
  • 首次请求被挑战时进行智能重试
  • 为多页面流程提供粘性会话

对最难抓取的站点,单次调用最长可达 3 分钟。如果某个站点一直无法解锁,请联系我们,我们会在 48 小时内让它跑通。

你不需要管理浏览器会话、指纹轮换或重试逻辑。只需发送一个 URL 或一个提示词,就能拿到数据。

适合谁

需要让自家智能体可靠加载开放网络的 AI 智能体构建者;监控品牌在 LLM 中可见度的 AEO 和 GEO 创业公司;运行内部 LLM 评测流水线的企业团队;运行 enrichment 流程的 AI 销售工具(一位 alpha 测试者用我们的 API 加上一个开源智能体替换掉一款 UI 锁定的工具,将每次 enrichment 的成本从 1 美元降到了不到 0.01 美元)。

如果你曾对自己说“我们自己抓就行”,结果做出一条脆弱的流水线,每次目标网站更新都会断掉,那么这就是替代方案。

更大的图景

Salesforce 刚刚转向 headless。所有主流 SaaS 会在 18 个月内跟进。智能体不会去点击按钮,所以整个软件栈正在为它们重建。

开放网络则在朝相反方向走。网站正躲在反 bot 系统后面把自己锁起来,而人类却越来越多地让机器替自己做事。开放网络上没有 Headless 360。这层基础设施必须有人来建。

我们正在构建的就是这一层。

立刻开始

试用 demo:一个提示词,三个前沿 LLM,并排展示,地理定位到全球任意城市。

前 100 名注册用户可获得 50 美元额度。

亲自试一试

demo 调用的三款前沿 LLM 距离你只有一次 HTTP 调用。在 dashboard.joinmassive.com 注册获取 API key,然后:

bash
curl -H "Authorization: Bearer $MASSIVE_TOKEN" \
'https://render.joinmassive.com/ai?prompt=best+ai+coding+assistant&country=us&city=New+York&model=chatgpt'
python
import os, asyncio, httpx
PROMPT = "best ai coding assistant" # ← swap for your "best [category]"
CITY = "New York"
MODELS = ["chatgpt", "gemini", "perplexity"]
async def query(client, model):
r = await client.get(
"https://render.joinmassive.com/ai",
headers={"Authorization": f"Bearer {os.environ['MASSIVE_TOKEN']}"},
params={"prompt": PROMPT, "country": "us", "city": CITY, "model": model},
timeout=180,
)
return model, r.json()
async def main():
async with httpx.AsyncClient() as c:
for model, data in await asyncio.gather(*(query(c, m) for m in MODELS)):
print(f"--- {model} ---")
print(data.get("completion", "")[:300])
asyncio.run(main())
typescript
const PROMPT = 'best ai coding assistant' // ← swap for your "best [category]"
const CITY = 'New York'
const MODELS = ['chatgpt', 'gemini', 'perplexity'] as const
const results = await Promise.all(
MODELS.map(async (model) => {
const url = new URL('https://render.joinmassive.com/ai')
url.searchParams.set('prompt', PROMPT)
url.searchParams.set('country', 'us')
url.searchParams.set('city', CITY)
url.searchParams.set('model', model)
const res = await fetch(url, {
headers: { Authorization: `Bearer ${process.env.MASSIVE_TOKEN}` },
})
return { model, data: await res.json() }
}),
)
for (const { model, data } of results) {
console.log(`--- ${model} ---`, data.completion?.slice(0, 300))
}

一个可粘贴到任意智能体中的提示词

可在 Claude、ChatGPT、Gemini 或你自己的智能体循环中使用。把 "Replit" 替换为你的品牌,把 "best AI coding assistant" 替换为你客户会提的问题。

markdown
Use Massive Web Render's /ai endpoint to query "best AI coding assistant" across
ChatGPT, Gemini, and Perplexity — geo-targeted to NYC, London, and SF.
For each (model × city), capture the top recommendations, sources cited, and the
position of "Replit" in each answer.
Aggregate into a single visibility report:
• avg rank of Replit per model
• avg rank of each competitor (Cursor, Windsurf, Copilot, etc.)
• cities where Replit doesn't appear at all
• which sources LLMs cite most often (so I know where to invest)
Then give me 5 concrete actions to improve Replit's visibility for
"best AI coding assistant", ranked by likely lift.

更快一步 — Massive MCP

我们在 npm 上发布了 Model Context Protocol 服务器,让智能体能直接调用 Web Render。一次安装:

bash
npm install -g @joinmassive/mcp-server

然后把这段提示词丢进你启用了 MCP 的智能体:

markdown
Use Massive MCP to search "best AI coding assistant" across Google
(organic + AI Overview), ChatGPT, Perplexity, and Gemini — geo-targeted
to NYC, London, and SF. List competitors by avg rank and build me a
visibility report for Replit. Then propose 5 concrete actions to improve
my ranking, ranked by likely lift.

网络不是为 AI 智能体构建的。我们建立了一层 API,让它运转起来就像本来就是为 AI 构建的一样。