你是否曾幻想过,只需对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. PaulaPull PaulaPull

      教程里的环境变量表格很清晰,我照着配一遍就过了。

    2. QuinnQuick QuinnQuick

      希望未来能加入更详细的日志输出,现在调试有点费劲。

    3. RitaRun RitaRun

      已经加到星标了,这个项目潜力巨大,感谢作者 JovaniPink。

    4. SamSearch SamSearch

      和直接写 Playwright 脚本比,这个的优势在于 AI 能动态适应页面变化。

    5. TinaTool TinaTool

      我用它来监控商品价格变化,设置了一个定时任务,非常稳定。