项目简介
CEO-Agentic-AI-Framework 仓库提供了一个轻量级的 Agentic AI 框架,其中包含了对 Model Context Protocol (MCP) 的支持。'playwright-plus-python-mcp.py' 是该框架提供的 MCP 服务器示例,它基于 Playwright 实现了浏览器自动化工具,可以通过 MCP 协议与 LLM 客户端(如仓库中的 'McpAgent')进行通信,为 LLM 代理提供网页浏览、信息抓取和交互能力。
主要功能点
- 提供 Playwright 浏览器自动化工具: 包括网页导航、截图、元素点击、表单填写、JavaScript 执行以及文本和 HTML 内容获取等功能。
- MCP 协议支持: 基于 MCP 标准协议与客户端通信,实现工具注册、调用和结果返回。
- Stdio 传输协议: 使用 Stdio 作为默认传输协议,易于部署和集成。
- 工具自描述: 通过 MCP 协议向客户端声明工具的功能和参数,方便 LLM 客户端理解和调用。
安装步骤
-
下载或克隆仓库: 从 GitHub 仓库 CEO-Agentic-AI-Framework 下载或克隆代码到本地。
-
安装 ceo-py 客户端库 (如果需要使用 Python 客户端):
pip install ceo-py -
安装 Playwright 依赖: 首次运行 'playwright-plus-python-mcp.py' 服务器脚本时,会自动安装 Playwright 浏览器依赖。
服务器配置
MCP 服务器需要配置启动命令及其参数才能被 MCP 客户端连接和使用。以下是 'playwright-plus-python-mcp.py' 服务器的典型配置信息(JSON 格式),通常在 MCP 客户端中进行配置,例如 'ceo-py' 库的 'StdioMcpConfig':
{ "server name": "playwright-plus-server", "command": "python", "args": ["./playwright-plus-python-mcp.py"], "cwd": "./mcp_server" }
参数注释:
- 'server name': 服务器的名称,可以自定义,用于标识不同的 MCP 服务器。例如 '"playwright-plus-server"'。
- 'command': 启动服务器的命令。由于 'playwright-plus-python-mcp.py' 是 Python 脚本,所以这里设置为 '"python"'。
- 'args': 传递给启动命令的参数,以列表形式表示。对于 'playwright-plus-python-mcp.py',参数是 '["./playwright-plus-python-mcp.py"]',表示执行当前目录下的 'playwright-plus-python-mcp.py' 脚本。
- 'cwd': (可选) 服务器脚本的工作目录。这里设置为 '"./mcp_server"',意味着 MCP 客户端需要确保在相对于客户端运行目录的 './mcp_server' 目录下找到 'playwright-plus-python-mcp.py' 脚本。如果服务器脚本和客户端在同一目录下,可以省略 'cwd' 或设置为 '"./"'。
注意: MCP 客户端只需要配置上述 JSON 格式的服务器启动信息,无需关注代码细节。用户只需根据实际情况修改 'command' 和 'args' 即可。
基本使用方法
-
启动 MCP 服务器: 在仓库的 'demo/mcp_server' 目录下,运行 'playwright-plus-python-mcp.py' 脚本以启动 MCP 服务器。
cd demo/mcp_server python playwright-plus-python-mcp.py服务器启动后,会输出 'playwright installed.' 表示 Playwright 依赖已安装,并开始监听来自 MCP 客户端的请求。
-
配置并运行 MCP 客户端: 使用 'ceo-py' 库或其他 MCP 客户端,配置连接到 'playwright-plus-server'。 例如,在 'ceo-py' 中可以使用 'McpAgent' 和 'StdioMcpConfig' 来创建 MCP 客户端,并调用 Playwright 工具。 具体代码示例可以参考 'demo/mcp_agent.py' 和 'demo/multi_agent.py',这些示例展示了如何使用 'McpAgent' 连接到 'playwright-plus-server' 并执行浏览器自动化任务。
例如,运行 'demo/mcp_agent.py':
cd demo python mcp_agent.py该示例会指示 Agent 使用 Playwright 工具在 Bing 搜索 "reinforcement learning",并将搜索结果保存到本地文件,然后导航到指定的博客地址。
关键步骤总结:
- 启动 'playwright-plus-python-mcp.py' MCP 服务器。
- 在 MCP 客户端(如 'ceo-py' 的 'McpAgent')中配置服务器连接信息 ('StdioMcpConfig')。
- 使用客户端 API (如 'McpAgent') 调用服务器提供的 Playwright 工具,实现浏览器自动化功能。
信息
分类
开发者工具