这是一个现代的 React 应用程序,借助 Server-Sent Events (SSE) 技术,为用户提供了友好的界面,方便与 Model Context Protocol (MCP) 服务器进行交互。
本应用程序能让你轻松地与 MCP 服务器进行交互。以下是启动应用程序的步骤:
git clone
cd browser-use-mcp-client
pnpm install
pnpm dev
./proxy/index.js
应用程序启动后,你可以通过 http://localhost:5173 进行访问。
点击下面的链接观看演示视频: https://github.com/user-attachments/assets/52ab11ad-741f-4506-99ad-9f1972a3aad1
在安装本应用程序之前,请确保你已经具备以下环境:
以下是一个使用浏览器自动化功能的 Python 基于 MCP 服务器示例:
#!/usr/bin/env python3
import asyncio
from dotenv import load_dotenv
from typing import Awaitable, Callable
from mcp.server.fastmcp import FastMCP, Context
from browser_use import Agent, Browser, BrowserConfig
from langchain_google_genai import ChatGoogleGenerativeAI
# 从 .env 文件加载环境变量
load_dotenv()
# 初始化 FastMCP 服务器
mcp = FastMCP("browser-use")
浏览器 = 浏览器(
config=BrowserConfig(
chrome_instance_path="/Applications/Google Chrome.app/Contents/MacOS/Google Chrome --remote-debugging-port=9222",
headless=True
)
)
llm = ChatGoogleGenerativeAI(model="gemini-2.0-flash")
agent = None
@mcp.tool()
async def perform_search(task: str, context: Context):
"""在后台执行实际搜索。"""
async def step_handler(state, *args):
如果 len(args) 不等于 2:
返回
await context.session.send_log_message(
level="info",
data={"screenshot": state, "args": args}
)
return "Search completed.",step_handler
@mcp.tool()
async def clear_search_history(task: str, context: Context):
"""清除搜索历史。"""
# 实现清空搜索历史的逻辑
pass
# 其他工具类似...
if __name__ == "__main__":
mcp.run()
这个项目展示了如何通过 React 和相关技术栈构建一个功能丰富的 MCP 客户端,实现浏览器与 AI 模型的交互式体验。