你是否曾幻想过,只需对AI说一句“帮我查一下这个网站的最新动态”,它就能自己打开浏览器、完成搜索并把结果交给你?这不再是科幻电影里的场景。今天要介绍的开源项目 mcp-browser-use,正是一个强大的桥梁,它通过模型上下文协议将 AI 助手与浏览器连接起来,让大语言模型能够像真人一样理解并操作网页。

项目基本信息

信息项详情
项目名称mcp-browser-use
GitHub地址https://github.com/JovaniPink/mcp-browser-use
项目描述FastAPI server implementing MCP protocol Browser automation via browser-use library.
作者JovaniPink
开源协议Unknown
开源状态公开状态
LanguagesPython 98.9%, Dockerfile 1.1%
支持平台Windows / macOS / Linux
最后更新2026-03-18

一、项目介绍

mcp-browser-use 是一个基于 FastAPI 的 MCP 服务器,它巧妙地将 browser-use 这个强大的浏览器自动化库封装成了标准的 MCP 工具 。其核心理念是让 AI 代理通过自然语言与网页浏览器进行交互,而不是依赖繁琐的代码脚本 。

与传统自动化工具不同,你无需编写复杂的选择器或调试等待逻辑。你只需像交代任务一样告诉 AI 你的意图,例如“登录我的社交媒体账号并下载昨天的评论”,mcp-browser-use 就会在后端驱动真实的 Chrome 浏览器,自动完成导航、点击、表单填写、内容提取等一系列操作。

该项目专为与 Claude Desktop、Cursor 等 MCP 客户端无缝集成而设计 。它还提供了一个显著优势:直接复用 MCP 客户端中已配置好的大语言模型,这意味着你无需为了使用浏览器自动化而额外支付另一套 LLM API 的费用 。

二、核心优势

开源免费

项目代码完全公开,基于 Python 构建,你可以自由地学习、修改和集成到自己的项目中。

自然语言驱动

这是该项目最大的亮点。它基于 browser-use 库,使得 AI 代理能够通过自然语言命令执行复杂的浏览器操作,如导航、表单填写、点击、滚动等 。

无缝 MCP 集成

作为标准的 MCP 服务器,它可以轻松集成到 Claude Desktop、Cursor、VS Code 等支持 MCP 协议的客户端中,扩展 AI 的能力边界 。

配置灵活

支持通过环境变量进行细致配置,包括 Chrome 调试端口、是否保持浏览器持久化会话,以及灵活选择 OpenAI、Anthropic、Google Gemini 等多种 LLM 提供商 。

功能全面

除了基础的点击输入,还支持标签页管理、截图、Cookie 管理以及基于视觉的元素检测,能够处理复杂的现代网页应用 。

三、适用场景

开发者学习和参考

如果你想学习如何将复杂的 Python 库封装成 MCP 服务器,或者研究 AI 代理与浏览器的交互机制,这是一个极佳的范例。

个人项目使用和集成

你可以利用它来构建各种自动化工具,例如:

  • 一个能自动抓取竞品价格并进行比价的购物助手
  • 一个能自动填写各类繁琐表单的效率工具
  • 一个能定期检查网站更新并发送通知的监控脚本

企业级应用开发

在企业环境中,可以用它来构建 GUI 自动化测试框架、数据采集平台,或是对缺乏 API 接口的遗留系统进行自动化操作,从而节省大量人力成本。

日常工作和效率提升

与 Claude Desktop 等客户端结合后,你可以用自然语言指挥 AI 完成日常任务,如“帮我整理这篇在线文章到我的笔记里”或“订阅这个博客的最新更新”。

四、安装教程

系统要求

工具用途下载/安装方式
Python运行环境[https://python.org/] (版本要求:3.11 或以上)
uvPython 包管理工具pip install uv
Git下载项目代码[https://git-scm.com/]

详细安装步骤

整个安装过程非常简单,最快只需几分钟即可让你的 AI 获得“上网”能力 。

第一步:安装 uv 并准备环境

uv 是一个快速的 Python 包安装工具,推荐使用它来管理项目。

# 安装 uv (如果尚未安装)
pip install uv

第二步:克隆项目并安装依赖

# 克隆项目到本地
git clone https://github.com/JovaniPink/mcp-browser-use.git
cd mcp-browser-use

# 同步并安装项目依赖,uv 会自动创建虚拟环境
uv sync

第三步:配置环境变量

复制示例文件并填入你的 API 密钥等信息。

cp sample.env .env

编辑 .env 文件,至少需要配置:

  • MCP_MODEL_PROVIDER: 你使用的模型提供商,如 openaianthropic
  • MCP_MODEL_NAME: 具体的模型名称,如 gpt-4o
  • 对应提供商的 API 密钥,如 OPENAI_API_KEY

第四步:启动服务器

# 启动 MCP 服务器
uv run mcp-browser-use

第五步:配置 MCP 客户端(以 Claude Desktop 为例)

找到 Claude Desktop 的配置文件:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

添加以下配置 :

{
  "mcpServers": {
    "mcp-browser-use": {
      "command": "uvx",
      "args": ["mcp-server-browser-use"],
      "env": {
        "OPENAI_API_KEY": "你的API密钥",
        "MCP_MODEL_PROVIDER": "openai",
        "MCP_MODEL_NAME": "gpt-4o"
      }
    }
  }
}

保存文件后,重启 Claude Desktop,即可在工具列表中看到 mcp-browser-use

五、使用示例

配置完成后,你就可以在 MCP 客户端中使用自然语言来指挥浏览器了。以下是一些典型的交互示例。

示例1:基础网页导航与信息提取

用户指令:请帮我打开维基百科,搜索“人工智能”,然后返回搜索结果页面的第一个段落的摘要。

AI 会执行的操作:服务器会启动浏览器,导航到 wikipedia.org,在搜索框输入“人工智能”,提交搜索,然后提取页面内容,最后将摘要返回给你。

示例2:数据采集

用户指令:请访问 Hacker News 首页,找出当前排名前 3 的新闻标题和链接,并以列表形式返回。

AI 调用的工具参数(示意)

{
  "task": "Navigate to https://news.ycombinator.com, extract the titles and URLs of the top 3 posts, and return them as a list."
}

示例3:表单填写与自动化操作

用户指令:帮我登录 example.com,用户名是“testuser”,密码是“pass123”,然后截图保存登录后的首页。

AI 会执行的操作:服务器会打开登录页面,填写用户名和密码字段,点击登录按钮,等待页面跳转,然后截取整个页面的截图,并将截图路径返回。

示例4:高级配置 - 使用自定义 Python 客户端

如果你想在自己的 Python 程序中直接调用这个 MCP 服务器,可以使用 browser-use 库的原生 MCP 集成。这是一个更底层的调用方式 :

import asyncio
from browser_use import Agent, ChatOpenAI

async def main():
    agent = Agent(
        task="Find the number of stars of the browser-use repo on GitHub",
        llm=ChatOpenAI(model="gpt-4.1-mini"),
    )
    await agent.run()

asyncio.run(main())

注意:请确保已安装 browser-use 库 (pip install browser-use) 并配置好 API 密钥。

六、常见问题

问题1:服务器启动失败,提示“ModuleNotFoundError”

解决方案:请确保你已经在项目根目录下运行了 uv sync 命令,并且激活了虚拟环境。如果使用 pip,请尝试 pip install -e . 进行安装。

问题2:浏览器无法启动,提示找不到 Chrome

解决方案:请确保你的系统已经安装了 Google Chrome 或 Chromium。你可以通过环境变量 CHROME_PATH 指定 Chrome 可执行文件的具体路径。

问题3:任务执行缓慢或卡住

解决方案:这可能是网络问题或目标网站加载缓慢。可以尝试调整 .env 文件中的 MCP_MAX_STEPS 参数,增加最大执行步骤数。同时,检查网络连接是否稳定。

问题4:Claude Desktop 无法连接到服务器

解决方案:请仔细检查 claude_desktop_config.json 中的配置,确保 JSON 格式正确(无多余逗号),并且 commandargs 路径无误。修改配置后,务必完全退出并重启 Claude Desktop 。

问题5:运行报错与 Playwright 相关

解决方案:browser-use 依赖 Playwright。请在终端中运行以下命令来安装所需的浏览器 :

uvx playwright install --with-deps chromium

七、总结

mcp-browser-use 是一个非常巧妙的项目,它精准地抓住了 AI 应用开发中的一个关键痛点:如何让 AI 安全、高效地与现实世界的网页进行交互。通过将成熟的 browser-use 库与新兴的 MCP 协议相结合,它为开发者提供了一个开箱即用的解决方案。

这个项目最吸引人的地方在于,它极大地降低了 AI 自动化网页操作的门槛。你不再需要编写脆弱的 XPath 或 CSS 选择器,只需用自然语言描述你的需求,AI 便能理解并执行。无论是抓取数据、自动化测试还是构建个人效率工具,mcp-browser-use 都是一个值得信赖的坚实基座。

如果你希望你的 AI 助手能突破文本交互的限制,真正开始为你“动手”上网办事,那么 mcp-browser-use 绝对是一个不容错过的利器。不妨花上半小时,跟随本教程配置一下,亲身体验用自然语言驱动浏览器的未来感。

标签: 浏览器自动化

已有 34 条评论

    1. AllenAI AllenAI

      这个项目太棒了,终于可以用自然语言控制浏览器了!

    2. BellaBot BellaBot

      配置过程比我想象的简单多了,uv sync 一条龙服务。

    3. CarlosCode CarlosCode

      我在 Cursor 里用上了,写代码时顺便让它帮我查文档,效率翻倍。

    4. DaisyDev DaisyDev

      为什么我用 Claude Desktop 配置后一直连不上?JSON 格式检查了好多遍。

    5. EthanEasy EthanEasy

      楼上,试试把 command 改成 uvx 的完整路径,有时候是 PATH 问题。