CrawlForge
首页Playground应用场景集成价格文档博客
如何在 VS Code 中用 GitHub Copilot agent 抓取网站
Tutorials
返回博客
教程

如何在 VS Code 中用 GitHub Copilot agent 抓取网站

C
CrawlForge Team
工程团队
2026年4月14日
阅读时长 10 分钟

本页内容

VS Code 中 GitHub Copilot 的 agent 模式可以读取你的仓库、运行终端命令并编辑文件——但它无法可靠地获取实时网页。加上 CrawlForge MCP,Copilot 就获得了从 fetch_url 到 deep_research 的 20 个 scraping 工具。

Jsonc
// .vscode/mcp.json
{
  "servers": {
    "crawlforge": {
      "type": "stdio",
      "command": "crawlforge-mcp-server",
      "env": { "CRAWLFORGE_API_KEY": "cf_live_your_key" }
    }
  }
}

本指南将分步带你在 GitHub Copilot agent 中启用 web scraping,并附上可运行的 TypeScript 示例以及常见坑的排查方法。

目录

  • 问题:Copilot 受限的网页访问
  • 前置条件
  • 步骤 1:安装 CrawlForge MCP
  • 步骤 2:启用 Copilot agent 模式
  • 步骤 3:注册 MCP server
  • 步骤 4:确认工具可用
  • 步骤 5:你的第一次 scrape
  • 完整示例:从实时文档生成 REST 客户端
  • 进阶:多工具工作流
  • 故障排查
  • FAQ

问题:Copilot 受限的网页访问

Copilot Chat 有一个 @web 参与者,但它会把你的查询重写为 Bing 搜索——没有原始页面访问、没有结构化提取、没有反爬绕过。在 agent 模式下,Copilot 可以运行 shell 命令,所以你确实可以通过一次工具调用把 curl | pandoc 串起来,但那会漏掉 JavaScript 渲染的页面,并在几分钟内触发反爬系统。

MCP 解决了这个问题。自 VS Code 1.102 在 2025 年年中正式发布 MCP 支持以来,Copilot agent 可以调用你注册的任何 MCP server。CrawlForge 以 MCP 形式暴露了 20 个 scraping 工具,因此 scraping 成为一等的 agent 操作。

前置条件

  • VS Code 1.102+ -- code --version
  • GitHub Copilot 订阅(Individual、Business 或 Enterprise)并启用 agent 模式
  • Node.js 18+
  • CrawlForge 账户 -- 在 crawlforge.dev/signup 免费注册

步骤 1:安装 CrawlForge MCP

Bash
npm install -g crawlforge-mcp-server
crawlforge-mcp-server --version
# crawlforge-mcp-server 4.8.1

步骤 2:启用 Copilot agent 模式

  1. 打开 VS Code 设置(Cmd+, / Ctrl+,)。
  2. 搜索 chat.agent.enabled 并将其打开。
  3. 打开 Copilot Chat(Ctrl+Alt+I / Cmd+Ctrl+I),把模式下拉框从 “Ask” 切换为 “Agent”。

正是 agent 模式启用了 MCP 工具调用。在 “Ask” 或 “Edit” 模式下,Copilot 会忽略已注册的 MCP server。

步骤 3:注册 MCP server

VS Code 在两个作用域支持 MCP:

  • Workspace -- 仓库根目录下的 .vscode/mcp.json(通过 git 在团队间共享)
  • User -- 通过 “MCP: Add Server” 命令面板编辑(个人)

对于团队 scraping,使用 workspace 配置:

Jsonc
// .vscode/mcp.json
{
  "servers": {
    "crawlforge": {
      "type": "stdio",
      "command": "crawlforge-mcp-server",
      "env": {
        "CRAWLFORGE_API_KEY": "${env:CRAWLFORGE_API_KEY}"
      }
    }
  }
}

然后在你的 shell 中导出该 key(不要把它提交到仓库):

Bash
export CRAWLFORGE_API_KEY="cf_live_your_key_here"

或者使用 ${input:apiKey},VS Code 会按 workspace 提示你输入一次。

步骤 4:确认工具可用

  1. 打开 Copilot Chat。
  2. 点击聊天标题栏中的工具图标。
  3. 确认 crawlforge 已列出,含 26 个工具。取消勾选任何你想隐藏的工具。

如果列表为空,请跳到故障排查。

步骤 5:你的第一次 scrape

在 Copilot Chat(agent 模式)中粘贴:

#crawlforge Fetch https://news.ycombinator.com and list the top 5 story titles with their URLs.

#crawlforge 提示会把 Copilot 引向正确的工具。Copilot 调用 fetch_url(1 credit),收到 HTML,解析标题,并将它们就地返回。

完整示例:从实时文档生成 REST 客户端

下面是一个具体的工作流:从实时文档自动生成一个带类型的 Stripe 客户端。

向 Copilot agent 发出 prompt:

#crawlforge Use extract_content on https://docs.stripe.com/api/charges/create. Then in src/clients/stripe-charges.ts, write a typed function createCharge(params) that calls the Stripe API with the exact fields documented on that page. Add a Zod schema for params.

Copilot 发出这次 MCP 调用:

Typescript
// What Copilot sends via MCP to CrawlForge
{
  "tool": "extract_content",
  "arguments": {
    "url": "https://docs.stripe.com/api/charges/create",
    "options": { "format": "markdown" }
  }
}
// Response: clean markdown of the endpoint docs

Copilot 读取该 markdown 并写出:

Typescript
// src/clients/stripe-charges.ts
import { z } from 'zod';

export const CreateChargeParams = z.object({
  amount: z.number().int().positive(),
  currency: z.string().length(3),
  source: z.string().optional(),
  customer: z.string().optional(),
  description: z.string().max(500).optional(),
  receipt_email: z.string().email().optional(),
  statement_descriptor: z.string().max(22).optional(),
});

export type CreateChargeParams = z.infer<typeof CreateChargeParams>;

export async function createCharge(params: CreateChargeParams) {
  const validated = CreateChargeParams.parse(params);
  const body = new URLSearchParams();
  for (const [key, value] of Object.entries(validated)) {
    if (value !== undefined) body.append(key, String(value));
  }

  const response = await fetch('https://api.stripe.com/v1/charges', {
    method: 'POST',
    headers: {
      'Authorization': `Bearer ${process.env.STRIPE_SECRET_KEY}`,
      'Content-Type': 'application/x-www-form-urlencoded',
    },
    body,
  });

  if (!response.ok) {
    const error = await response.json();
    throw new Error(`Stripe error: ${error.error?.message ?? response.statusText}`);
  }

  return response.json();
}

成本:2 credits(一次 extract_content 调用)。对每个 Stripe 端点重复这一过程,你就得到一个完全从实时文档派生出来的带类型客户端。

进阶:多工具工作流

Copilot agent 擅长串联工具。示例 prompt:

#crawlforge 1) search_web for "OpenTelemetry Node.js auto-instrumentation 2026" 2) extract_content from the top 3 results 3) Summarize the differences into docs/otel-options.md with a decision matrix.

Copilot 依次运行这三次 MCP 调用,把结果向前传递,并写出 markdown。总成本:约 11 credits(5 + 2 + 2 + 2)。

credits 速查

任务工具Credits
静态 HTML 获取fetch_url1
干净的文章正文extract_content2
CSS 选择器字段scrape_structured2
发现 URLmap_site2
网页搜索search_web5
反爬绕过stealth_mode5
深度研究deep_research10

故障排查

工具列表为空 -- agent 模式已关闭。在设置中启用 chat.agent.enabled 并把聊天模式切换为 “Agent”。

“Spawn ENOENT: crawlforge-mcp-server” -- VS Code 找不到可执行文件。在 .vscode/mcp.json 中使用绝对路径:"command": "/usr/local/bin/crawlforge-mcp-server"。

Copilot 忽略 MCP server -- 在你的 prompt 前加上 #crawlforge,或显式指定一个工具:“Use fetch_url to...”。Copilot 有时会默认选用内置工具。

401 Unauthorized -- 环境变量没有传到服务器。在启动 VS Code 的同一个 shell 里检查 echo $CRAWLFORGE_API_KEY。在 macOS 上,从图形界面启动的 VS Code 不会继承 shell 环境——请从终端用 code . 启动。

workspace 的 MCP 配置未加载 -- VS Code 不会自动信任 .vscode/mcp.json。打开该文件,点击 “Trust” 通知,然后重新加载窗口。

下一步

  • 阅读 26 个工具总览,了解完整工具集
  • 研读 MCP 协议讲解,理解 VS Code 如何与服务器通信
  • 查看 入门文档 了解 REST API
  • 如果你正在评估 scraping 厂商,可与 Firecrawl 替代方案对比

在 crawlforge.dev/signup 用 1,000 个 credits 免费开始。

亲自试一试——无需注册

在 Playground 中运行 CrawlForge 的 27 个抓取与提取工具中的任意一个,然后免费开始,获取 1,000 credits。

1,000 免费 credits • 每月补充 • 无需信用卡

标签

GitHub-CopilotVS-Codeweb-scrapingMCPtutorialagent-modeAI-agents

关于作者

C

CrawlForge Team

工程团队

我们正在打造功能最全面的 Web 抓取 MCP server。我们开发的工具帮助开发者为 AI 应用提取、分析和转换 Web 数据。

及时获取最新洞察

将教程、产品更新与 Web 抓取技巧直接发送到你的收件箱。

拒绝垃圾邮件,随时可取消订阅。

付诸实践

在任意 URL 上测试 CrawlForge 的工具——免费,无需注册。

本页内容

Frequently Asked Questions

GitHub Copilot 支持 MCP server 吗?+

支持,自 VS Code 1.102(2025 年年中)起。当你切换到 Agent 模式时,MCP server 即可在 Copilot Chat 中使用。配置位于 .vscode/mcp.json(workspace),或通过 “MCP: Add Server” 命令面板配置(user 作用域)。

使用 CrawlForge MCP 需要付费的 Copilot 订阅吗?+

你需要一个 Copilot 订阅(Individual、Business 或 Enterprise)才能使用 agent 模式和 MCP 工具调用。CrawlForge 本身有一个免费套餐,每月含 1,000 个 credits,无需信用卡。

为什么 Copilot 忽略我的 CrawlForge 工具?+

两个常见原因:聊天模式被设为 Ask 或 Edit 而非 Agent,或者 Copilot 选用了内置工具。在聊天下拉框中切换到 Agent 模式,并在你的 prompt 中显式引用 #crawlforge 或某个具体工具名(如 scrape_structured)。

我该如何与团队共享 MCP 配置?+

把 .vscode/mcp.json 提交到你的仓库。使用 ${env:CRAWLFORGE_API_KEY} 或 ${input:apiKey},让个人 key 不进入版本控制。队友各自运行一次相同的 export CRAWLFORGE_API_KEY=...,之后 Copilot 就会自动读取共享配置。

@web 和 CrawlForge 的 MCP 工具有什么区别?+

@web 向 Bing 提一个问题并返回一个总结性答案——没有原始页面访问、没有结构化提取、无法控制获取哪些 URL。CrawlForge 的 MCP 工具让 Copilot 直接访问 20 个 scraping 原语:获取原始 HTML、用 CSS 选取特定字段、绕过反爬,以及运行带引用的多源研究。

相关文章

如何用 Claude Code 抓取网站(2026 指南)
Tutorials

如何用 Claude Code 抓取网站(2026 指南)

用 Claude Code 和 CrawlForge MCP 从你的终端抓取任何网站。抓取页面、提取数据并绕过反爬虫,全程不到 2 分钟。

C
CrawlForge Team
|
4月14日
|
10 分钟
如何在 Cursor IDE 中使用 CrawlForge MCP 抓取网站
Tutorials

如何在 Cursor IDE 中使用 CrawlForge MCP 抓取网站

把 Cursor IDE 变成网页抓取工作站。接入 CrawlForge MCP,无需离开编辑器即可从任意站点提取结构化数据。

C
CrawlForge Team
|
4月14日
|
9 分钟
如何在 Zed AI 中使用 CrawlForge MCP 进行网页抓取
Tutorials

如何在 Zed AI 中使用 CrawlForge MCP 进行网页抓取

3 分钟为 Zed AI 添加 web scraping 能力。在 Zed 中配置 CrawlForge MCP,让你的编辑器按需抓取、提取并研究实时网页数据。

C
CrawlForge Team
|
4月14日
|
9 分钟

页脚

CrawlForge

面向 AI Agent 的企业级网页抓取。27 个专业 MCP 工具,专为构建智能系统的现代开发者而设计。

产品

  • 功能
  • Playground
  • 价格
  • 应用场景
  • 集成
  • 替代方案
  • 更新日志

资源

  • 快速上手
  • API 参考
  • 模板
  • 指南
  • 博客
  • 术语表
  • 常见问题
  • 网站地图

开发者

  • MCP 协议
  • Claude Desktop
  • Cursor IDE
  • LangChain
  • LlamaIndex

公司

  • 关于我们
  • 联系我们
  • 隐私政策
  • 服务条款
  • 可接受使用政策
  • Cookie

保持更新

获取新工具和新功能的最新动态。

基于 Next.js 和 MCP 协议构建

© 2025-2026 CrawlForge。保留所有权利。