https://github.com/user-attachments/assets/25848033-40ea-4fa4-96f9-83b6153a0212
这是一个模型上下文协议(MCP)服务器,它使像Claude这样的大型语言模型能够通过基于Puppeteer的工具和Steel来浏览网页。基于Web Voyager框架,它提供了所有标准的网页操作工具,如点击、滚动、输入等,并能截取屏幕截图。
让Claude帮助您完成以下任务:
<a href="https://glama.ai/mcp/servers/tbd32geble"><img width="380" height="200" src="https://gips1.baidu.com/it/u=2090587417,1599168600&fm=3081&app=3081&f=PNG?w=760&h=400" alt="Steel Server MCP服务器" /></a>
以下是运行Claude Desktop内Steel Voyager的简化指南。您只需调整环境选项即可在Steel Cloud和本地/自托管实例之间切换。
克隆并构建项目:
git clone https://github.com/steel-dev/steel-mcp-server.git
cd steel-mcp-server
npm install
npm run build
配置Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json),添加一个服务器条目:
{
"mcpServers": {
"steel-puppeteer": {
"command": "node",
"args": ["path/to/steel-voyager/dist/index.js"],
"env": {
"STEEL_LOCAL": "false",
"STEEL_API_KEY": "YOUR_STEEL_API_KEY_HERE",
"GLOBAL_WAIT_SECONDS": "1"
}
}
}
}
启动Claude Desktop。它会自动启动此MCP服务器的云模式。
(可选)您可以在您的仪表板中查看或管理活动的Steel浏览器会话。
确保您的本地或自托管Steel服务正在运行(例如,使用开源Steel Docker镜像)。
克隆并构建项目(如果尚未执行,请按照上述步骤进行):
git clone https://github.com/steel-dev/steel-mcp-server.git
cd steel-mcp-server
npm install
npm run build
配置Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json) 以启用本地模式:
{
"mcpServers": {
"steel-puppeteer": {
"command": "node",
"args": ["path/to/steel-voyager/dist/index.js"],
"env": {
"STEEL_LOCAL": "true",
"STEEL_BASE_URL": "http://localhost:3000",
"GLOBAL_WAIT_SECONDS": "1"
}
}
}
}
启动Claude Desktop,它将连接到您本地运行的Steel,并以本地模式启动Steel Voyager。
(可选)要本地查看会话,您可以访问您的自托管仪表板(localhost:5173)或查看特定于您的Steel运行时环境的日志。
就这样!一旦Claude Desktop启动,它将在后台编排MCP服务器,并让您通过Steel Voyager与网络自动化功能互动。
有关更多设置信息或遇到问题,请参阅MCP设置文档:https://modelcontextprotocol.io/quickstart/user
导航
url(字符串,必需):要导航到的URL(例如:"https://example.com")。搜索
query(字符串,必需):要在Google上搜索的文本。点击
label(数字,必需):要点击的元素的标签号。输入
label(数字,必需):输入字段的标签号。text(字符串,必需):要输入到字段中的文本。replaceText(布尔值,可选):如果为真,则替换字段中的任何现有文本。向下滚动
pixels(整数,可选):要向下滚动的像素数。如果没有指定,默认滚动一整个页面。向上滚动
pixels(整数,可选):要向上滚动的像素数。如果没有指定,默认滚动一整个页面。返回
等待
seconds(数字,必需):等待的秒数(0到10)。保存未标记的屏幕截图
resourceName(字符串,可选):用于存储屏幕截图的名称(例如:"before_login")。如果省略,将自动生成通用名称。屏幕截图: 每个保存的屏幕截图都可以通过MCP资源URI的形式访问:
screenshot://RESOURCE_NAME服务器会在您指定“保存未标记的屏幕截图”工具或大多数工具的操作结束时(带有注释的屏幕截图)存储这些屏幕截图。这些图像可以通过标准的MCP资源检索请求获取。
(注意:虽然控制台日志仍然收集用于分析和调试,但它们在此实现中并未作为可检索资源公开。它们出现在服务器日志中,但不会通过MCP资源URI提供。)
在与页面交互时,Steel Puppeteer添加了视觉覆盖层以帮助识别交互元素:
Steel Voyager可以运行在两种模式:“本地”或“云”。这种行为由环境变量控制。以下是简明概述:
| 环境变量 | 默认值 | 描述 |
|---|---|---|
| STEEL_LOCAL | "false" | 决定Steel Voyager是否在本地(true)或云(false)模式下运行。 |
| STEEL_API_KEY | (无) | 当STEEL_LOCAL = "false"时需要。用于与Steel端点进行身份验证。 |
| STEEL_BASE_URL | "https://api.steel.dev" | Steel API的基础URL。如果您自托管Steel服务器(无论是本地还是您自己的云环境中),则需要覆盖此设置。如果STEEL_LOCAL = "true"且STEEL_BASE_URL未设置,则默认为"http://localhost:3000"。 |
| GLOBAL_WAIT_SECONDS | (无) | 可选。每个工具操作后等待的秒数(例如,允许慢加载页面)。 |
示例:
export STEEL_LOCAL="true"
export STEEL_BASE_URL="http://localhost:3000" # 只有在覆盖时才需要
示例:
export STEEL_LOCAL="false"
export STEEL_API_KEY="YOUR_STEEL_API_KEY_HERE"
要使用Steel Voyager与Claude Desktop,需在配置文件中添加如下内容(通常位于~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"steel-puppeteer": {
"command": "node",
"args": ["path/to/steel-puppeteer/dist/index.js"],
"env": {
"STEEL_LOCAL": "false",
"STEEL_API_KEY": "your_api_key_here"
}
}
}
}
根据所需模式调整环境变量:
"STEEL_LOCAL": "true",并可选地设置"STEEL_BASE_URL": "http://localhost:3000"。"STEEL_LOCAL": "true",添加"STEEL_LOCAL": "false",并提供"STEEL_API_KEY": "<YourKey>"。
这将允许Claude Desktop以正确的模式启动Steel Voyager。要通过Smithery自动安装Steel MCP Server供Claude Desktop使用:
npx -y @smithery/cli install @steel-dev/steel-mcp-server --client claude
npm install
npm run build
npm start
我们要求Claude展示其新技能,它决定研究最新的Sora发展情况,然后创建一个交互式可视化来演示模型背后的原理及其工作方式 🤯
https://github.com/user-attachments/assets/8d4293ea-03fc-459f-ba6b-291f5b017ad7
*抱歉视频质量不佳,GitHub强制我们将视频大小限制在10MB以内 :/
常见问题及解决方案:
GLOBAL_WAIT_SECONDS环境变量在配置中添加延迟。此项目是实验性的,并处于积极开发中。欢迎贡献!
请包括:
⚠️ 此项目是实验性的,并基于Web Voyager代码库。在生产环境中使用风险自负。