返回博客

Kimi K3 + Scrapeless:为模型提供实时Web访问

Alex Johnson
Alex Johnson

Senior Web Scraping Engineer

21-Aug-2026

TL;DR:

  • Kimi K3 可以推理工具调用,但模型并不会自动拥有一个新鲜的网页副本。 客户端必须暴露搜索、页面提取或浏览器工具并将其结果返回给模型。
  • Scrapeless MCP 服务器提供了实时网页工具边界。 通过一个远程的 MCP 连接,代理可以执行类型化搜索、抓取和云浏览器操作,而无需将浏览器基础设施放入模型进程中。
  • OpenCode 可以承载集成的双方。 将 Kimi K3 配置为模型提供者,将 Scrapeless 配置为远程 MCP 服务器,然后在请求模型进行研究之前验证该服务器。
  • 有依据的提示需要证据合同。 需要源 URL、提取字段、可为空值和新鲜时间戳,而不是接受不支持的叙述答案。
  • 两个凭证保持独立。 MOONSHOT_API_KEY 授权模型提供者;SCRAPELESS_KEY 授权网页工具层。
  • 免费开始。 新的 Scrapeless 账户包含免费试用积分 — 在 app.scrapeless.com 注册。

介绍:模型和网页工具是不同的组件

Kimi K3 可以规划、推理并发出结构化的工具调用。实时网页访问依然通过客户端和工具服务器到达。

这种分离是有用的。模型决定它需要什么证据;MCP 客户端验证类型请求;Scrapeless 执行搜索、提取或浏览器工作;结果返回给模型并附有可见的来源轨迹。模型从不需要直接访问浏览器凭证或网络接入。

本指南使用 OpenCode 作为具备 MCP 能力的客户端,因为其项目配置可以声明模型提供者和远程 MCP 服务器。同样的边界适用于任何符合标准的客户端。


您可以用 Kimi K3 和 Scrapeless 构建的内容

Kimi K3 加 Scrapeless 最佳工作方式是模型负责分析,工具层负责当前观察。

  • 研究简报。 搜索一个主题,打开相关页面,提取声明和日期,然后返回一个源链接的简报。
  • 产品监控。 阅读公共产品和更新日志页面,规范可见字段,并标记需要审查的实质性差异。
  • 技术文档代理。 定位当前引用页面并从提取的内容中回答,而不是使用模型记忆。
  • 市场地图。 发现公共组织或产品,提取固定架构,并为每条记录保留 URL。
  • 证据感知的 RAG。 按需获取实时来源,并在内容进入检索索引之前附加来源信息。
  • 浏览器研究。 当页面需要 JavaScript 渲染或多步骤导航时,使用云浏览器。

Scrapeless MCP 启动文章 描述了工具表面,而 LangChain 集成 显示了框架管理代理中的相同边界。


为什么实时网页访问很重要

Kimi K3 的训练和上下文窗口并不会让页面变得当前。发布说明、政策、价格或可用性字段在模型训练后或先前对话开始后可能会发生变化。

官方 Kimi K3 仓库 记录了模型 ID kimi-k3、与 OpenAI 兼容的访问、工具调用和保留的思维历史。它还明确了模型/客户端合同:多轮工具工作流必须将 API 返回的完整助手消息传回下一个请求。

MCP 解决的是一个不同的问题。MCP 生命周期规范 在正常工具操作之前定义了初始化和能力协商。因此,工具发现是第一个集成测试——而不是提示。


为什么选择 Scrapeless MCP 服务器

Scrapeless MCP 服务器为具有 MCP 能力的代理提供了一个类型化边界,以进行当前的网络工作:搜索、直接页面提取、屏幕截图和持久的云浏览器操作。

远程端点是 https://api.scrapeless.com/mcp 并使用 x-api-token 头。本地 stdio 包是 scrapeless-mcp-server。两者都保持浏览器和网络执行在 Kimi K3 的模型进程之外。

前提条件

  • Node.js 20 或更高版本。
  • 一个支持 MCP 的客户端。本指南使用 OpenCode 的项目配置。
  • Kimi K3 API 访问权限和 MOONSHOT_API_KEY
  • 一个 Scrapeless 账户和 SCRAPELESS_KEY
  • 有权限访问每个目标,并存储返回的公共数据。

本地验证环境未包含任何服务密钥。已运行包安装、配置验证和客户端构建;已认证的模型生成和 MCP 工具发现仍被标记为前提条件。


安装集成包

安装验证工具所用的确切 MCP 客户端和本地服务器包:

bash Copy
npm install \
  @modelcontextprotocol/sdk@1.30.0 \
  scrapeless-mcp-server@0.5.0

包的边界与客户端 UI 独立。OpenCode 可以直接使用远程服务器;SDK 仍然对低级连接测试有用,且 stdio 包提供本地传输选项。


在 OpenCode 中连接 Kimi K3 和 Scrapeless

OpenCode 接受 opencode.json 中的项目配置。它的 提供者配置 支持 OpenAI 兼容的端点,其 MCP 配置接受带有头部的远程可流式 HTTP 服务器。

注意:加载以下配置需要有效的 MOONSHOT_API_KEYSCRAPELESS_KEY 环境变量。JSON 形状已在本地验证;未呈现已认证连接作为完整运行。

json Copy
{
  "$schema": "https://opencode.ai/config.json",
  "model": "moonshot/kimi-k3",
  "providers": {
    "moonshot": {
      "name": "Moonshot AI",
      "env": ["MOONSHOT_API_KEY"],
      "package": "@opencode-ai/ai/providers/openai-compatible",
      "settings": {
        "baseURL": "https://api.moonshot.ai/v1"
      },
      "models": {
        "kimi-k3": {
          "name": "Kimi K3",
          "modelID": "kimi-k3"
        }
      }
    }
  },
  "mcp": {
    "servers": {
      "scrapeless": {
        "type": "remote",
        "url": "https://api.scrapeless.com/mcp",
        "oauth": false,
        "headers": {
          "x-api-token": "{env:SCRAPELESS_KEY}"
        }
      }
    }
  }
}

OpenCode 的 远程 MCP 服务器架构 使用绝对 URL 和一个头部对象。环境替换使凭证避免出现在代码库中。

开始使用 Scrapeless 抓取

使用 Scrapeless 启动您的网络抓取和自动化工作流程!
今天注册并获得 5 美元的免费信用无需信用卡

立即在 Scrapeless 仪表板 申请您的免费信用。

Scrapeless 仪表板显示 5.00 美元的团队信用

在提示 Kimi K3 之前验证工具边界

配置并不能证明连接正常。正确的检查初始化 MCP 客户端,协商能力,并在模型介入之前列出工具。

注意:此握手需要 SCRAPELESS_KEY。已安装的 SDK 和客户端构造函数已在本地验证,但已认证的 listTools() 调用在此无凭证环境中仍然是前提条件。

javascript Copy
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js";

const transport = new StreamableHTTPClientTransport(
  new URL("https://api.scrapeless.com/mcp"),
  {
    requestInit: {
      headers: { "x-api-token": process.env.SCRAPELESS_KEY },
    },
  },
);

const client = new Client({ name: "kimi-k3-web-check", version: "1.0.0" });
await client.connect(transport);

const { tools } = await client.listTools();
console.log(tools.map(({ name }) => name).sort());

await client.close();

当密钥缺失时,测试应关闭失败。使用有效密钥时,检查返回的名称和模式,而不是从旧帖子中硬编码假设。


如何实际使用:提示 Kimi K3

服务器在客户端中出现后,以证据和输出的术语请求工作,而不是产品命令。

你可以粘贴的提示

目标 提示
当前技术简报 “研究此主题的当前公共文档。返回每一行的声明、证据 URL、页面标题和观察日期。”
产品比较 “仅使用每个页面上可见的字段比较这些公共产品页面。将缺失字段标记为 null。”
更改检查 “阅读此更改日志和产品页面。确定影响 API 用户的更改,并引用周围的证据。”
源发现 “首先搜索主要来源,打开最相关的页面,并解释每个来源为何具有权威性。”
结构化提取 “将可见项目提取到提供的 JSON 模式中。保留每条记录的标准 URL。”
浏览器工作流程 “在浏览器中打开页面,等待命名的用户界面元素,提取仅公共字段,然后关闭会话。”

实际示例:研究和提取

你输入:

从 Moonshot AI 的公共代码库中研究当前的 Kimi K3 部署指南。返回支持的 API 模型 ID、兼容接口、推荐推理引擎、源 URL,以及任何无法确认的字段为 null。使用当前的网络工具;不要凭记忆回答。

代理的计划应保持可见:

  1. 搜索 Moonshot AI 的第一方 Kimi K3 代码库。
  2. 打开仓库页面并识别部署部分。
  3. 只提取请求的字段。
  4. 保留源 URL 和页面标题。
  5. 对于页面上不存在的任何请求字段返回 null。

输出契约是紧凑的:

jsonc Copy
// illustrative sample
{
  "model_id": "kimi-k3",
  "api_style": ["OpenAI-compatible", "Anthropic-compatible"],
  "recommended_inference_engines": ["vLLM", "SGLang", "TokenSpeed"],
  "source_url": "https://github.com/MoonshotAI/Kimi-K3",
  "source_title": "MoonshotAI/Kimi-K3",
  "unconfirmed": []
}

所示值来自第一方仓库。在生产中,保持原始工具结果与规范化记录并排,以便审核者可以追踪每个字段。


生成可靠的输出

可靠的代理输出始于狭窄的数据契约。

  • 命名源类。 当需要时,请求第一方文档、标准或公开记录。
  • 指定字段。 固定模式可以防止有说服力的段落替代缺失证据。
  • 保留规范 URL。 源 URL 使审查和后续更改检测成为可能。
  • 允许 null。 缺失的信息比模型从记忆中填补空白更好。
  • 将观察与推论分开。 将提取的字段和任何模型解释存储在不同的键中。
  • 要求行动前审核。 研究可以自动化;发布、外联、采购和账户更改需要明确批准。

JSON-RPC 在客户端下承载 MCP 消息。JSON-RPC 2.0 规范 定义了将调用与结果配对的请求标识符和方法/参数结构。


限制和先决条件

Kimi K3 和 Scrapeless 解决系统的不同部分,因此故障出现在不同的边界。

边界 典型症状 正确响应
模型凭证 提供者拒绝生成 确认 Moonshot 账户和环境变量
MCP 凭证 工具发现未授权 确认 Scrapeless 账户和 x-api-token 头部
客户端模式 服务器未加载 验证 OpenCode 配置与当前版本
页面访问 公开内容缺失或受限 停止并返回访问限制
提取 某字段缺失 返回 null 并保留证据页面
操作批准 任务将更改外部状态 暂停以等待授权人员

不要在日志或面向用户的输出中暴露模型推理内容。当提供者要求时,保留完整的助手消息在 API 对话中,但仅发布最终答案、工具证据和应用程序所需的操作元数据。


结论:保持模型在工具边界内

Kimi K3 仅在 MCP 客户端将模型连接到当前观测时,才成为实时网络代理。验证提供者,初始化 MCP 连接,检查工具表面,然后根据严格的证据模式进行提示。

模型可以决定读取什么以及如何合成。Scrapeless 处理网络执行。您的应用程序仍然负责授权、源政策、审查和存储。


准备好让 Kimi K3 访问实时网络了吗?

加入我们的社区,与构建基于的代理的开发者比较 MCP 客户端模式:Discord · Telegram

app.scrapeless.com 注册并在添加基于模型的研究循环之前验证 Scrapeless MCP 工具边界。


常见问题

问:Kimi K3 自身是否具有实时网络访问?

不。Kimi K3 需要一个客户端和网络工具来观察当前页面;Scrapeless MCP 服务器提供该工具边界。

问:Kimi K3 能否调用 MCP 工具?

可以。Kimi K3 支持结构化工具调用,而支持 MCP 的客户端将可用的服务器工具转换为模型的工具表面。

问:为什么在此设置中使用 OpenCode?

OpenCode 可以在项目配置中声明兼容 OpenAI 的模型提供者和远程 MCP 服务器,保持集成可检查。

问:哪个凭证属于 MCP 头?

SCRAPELESS_KEY 属于 x-api-token MCP 头。MOONSHOT_API_KEY 仅由 Kimi K3 模型提供者使用。

问:集成是否可以在没有模型密钥的情况下运行?

SCRAPELESS_KEY 可用时,MCP 握手和直接工具调用可以在没有模型密钥的情况下运行。Kimi K3 生成仍然需要 Moonshot API 访问。

问:集成是否可以在没有 Scrapeless 密钥的情况下运行?

没有经过身份验证的 Scrapeless 工具调用无法在没有 Scrapeless 密钥的情况下运行。包安装和配置验证仍然可以在本地运行。

问:代理应该如何处理缺失字段?

代理应该返回 null,保留证据 URL,并避免从模型记忆中填充字段。

问:使用这种模式自动进行账户更改是否安全?
没有明确的批准边界,不要进行状态更改操作,保持禁用或需要人工批准,并仅在授予工作流的帐户范围内使用工具层。

在Scrapeless,我们仅访问公开可用的数据,并严格遵循适用的法律、法规和网站隐私政策。本博客中的内容仅供演示之用,不涉及任何非法或侵权活动。我们对使用本博客或第三方链接中的信息不做任何保证,并免除所有责任。在进行任何抓取活动之前,请咨询您的法律顾问,并审查目标网站的服务条款或获取必要的许可。

最受欢迎的文章

目录