first commit
This commit is contained in:
529
docs/TOOLS_zh.md
Normal file
529
docs/TOOLS_zh.md
Normal file
@@ -0,0 +1,529 @@
|
||||
# Chrome MCP Server API 参考 📚
|
||||
|
||||
所有可用工具及其参数的完整参考。
|
||||
|
||||
## 📋 目录
|
||||
|
||||
- [浏览器管理](#浏览器管理)
|
||||
- [截图和视觉](#截图和视觉)
|
||||
- [网络监控](#网络监控)
|
||||
- [内容分析](#内容分析)
|
||||
- [交互操作](#交互操作)
|
||||
- [数据管理](#数据管理)
|
||||
- [响应格式](#响应格式)
|
||||
|
||||
## 📊 浏览器管理
|
||||
|
||||
### `get_windows_and_tabs`
|
||||
|
||||
列出当前打开的所有浏览器窗口和标签页。
|
||||
|
||||
**参数**:无
|
||||
|
||||
**响应**:
|
||||
|
||||
```json
|
||||
{
|
||||
"windowCount": 2,
|
||||
"tabCount": 5,
|
||||
"windows": [
|
||||
{
|
||||
"windowId": 123,
|
||||
"tabs": [
|
||||
{
|
||||
"tabId": 456,
|
||||
"url": "https://example.com",
|
||||
"title": "示例页面",
|
||||
"active": true
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### `chrome_navigate`
|
||||
|
||||
导航到指定 URL,可选择控制视口。
|
||||
|
||||
**参数**:
|
||||
|
||||
- `url` (字符串,必需):要导航到的 URL
|
||||
- `newWindow` (布尔值,可选):创建新窗口(默认:false)
|
||||
- `width` (数字,可选):视口宽度(像素,默认:1280)
|
||||
- `height` (数字,可选):视口高度(像素,默认:720)
|
||||
|
||||
**示例**:
|
||||
|
||||
```json
|
||||
{
|
||||
"url": "https://example.com",
|
||||
"newWindow": true,
|
||||
"width": 1920,
|
||||
"height": 1080
|
||||
}
|
||||
```
|
||||
|
||||
### `chrome_close_tabs`
|
||||
|
||||
关闭指定的标签页或窗口。
|
||||
|
||||
**参数**:
|
||||
|
||||
- `tabIds` (数组,可选):要关闭的标签页 ID 数组
|
||||
- `windowIds` (数组,可选):要关闭的窗口 ID 数组
|
||||
|
||||
**示例**:
|
||||
|
||||
```json
|
||||
{
|
||||
"tabIds": [123, 456],
|
||||
"windowIds": [789]
|
||||
}
|
||||
```
|
||||
|
||||
### `chrome_go_back_or_forward`
|
||||
|
||||
浏览器历史导航。
|
||||
|
||||
**参数**:
|
||||
|
||||
- `direction` (字符串,必需):"back" 或 "forward"
|
||||
- `tabId` (数字,可选):特定标签页 ID(默认:活动标签页)
|
||||
|
||||
**示例**:
|
||||
|
||||
```json
|
||||
{
|
||||
"direction": "back",
|
||||
"tabId": 123
|
||||
}
|
||||
```
|
||||
|
||||
## 📸 截图和视觉
|
||||
|
||||
### `chrome_screenshot`
|
||||
|
||||
使用各种选项进行高级截图。
|
||||
|
||||
**参数**:
|
||||
|
||||
- `name` (字符串,可选):截图文件名
|
||||
- `selector` (字符串,可选):元素截图的 CSS 选择器
|
||||
- `width` (数字,可选):宽度(像素,默认:800)
|
||||
- `height` (数字,可选):高度(像素,默认:600)
|
||||
- `storeBase64` (布尔值,可选):返回 base64 数据(默认:false)
|
||||
- `fullPage` (布尔值,可选):捕获整个页面(默认:true)
|
||||
|
||||
**示例**:
|
||||
|
||||
```json
|
||||
{
|
||||
"selector": ".main-content",
|
||||
"fullPage": true,
|
||||
"storeBase64": true,
|
||||
"width": 1920,
|
||||
"height": 1080
|
||||
}
|
||||
```
|
||||
|
||||
**响应**:
|
||||
|
||||
```json
|
||||
{
|
||||
"success": true,
|
||||
"base64": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...",
|
||||
"dimensions": {
|
||||
"width": 1920,
|
||||
"height": 1080
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## 🌐 网络监控
|
||||
|
||||
### `chrome_network_capture_start`
|
||||
|
||||
使用 webRequest API 开始捕获网络请求。
|
||||
|
||||
**参数**:
|
||||
|
||||
- `url` (字符串,可选):要导航并捕获的 URL
|
||||
- `maxCaptureTime` (数字,可选):最大捕获时间(毫秒,默认:30000)
|
||||
- `inactivityTimeout` (数字,可选):无活动后停止时间(毫秒,默认:3000)
|
||||
- `includeStatic` (布尔值,可选):包含静态资源(默认:false)
|
||||
|
||||
**示例**:
|
||||
|
||||
```json
|
||||
{
|
||||
"url": "https://api.example.com",
|
||||
"maxCaptureTime": 60000,
|
||||
"includeStatic": false
|
||||
}
|
||||
```
|
||||
|
||||
### `chrome_network_capture_stop`
|
||||
|
||||
停止网络捕获并返回收集的数据。
|
||||
|
||||
**参数**:无
|
||||
|
||||
**响应**:
|
||||
|
||||
```json
|
||||
{
|
||||
"success": true,
|
||||
"capturedRequests": [
|
||||
{
|
||||
"url": "https://api.example.com/data",
|
||||
"method": "GET",
|
||||
"status": 200,
|
||||
"requestHeaders": {...},
|
||||
"responseHeaders": {...},
|
||||
"responseTime": 150
|
||||
}
|
||||
],
|
||||
"summary": {
|
||||
"totalRequests": 15,
|
||||
"captureTime": 5000
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### `chrome_network_debugger_start`
|
||||
|
||||
使用 Chrome Debugger API 开始捕获(包含响应体)。
|
||||
|
||||
**参数**:
|
||||
|
||||
- `url` (字符串,可选):要导航并捕获的 URL
|
||||
|
||||
### `chrome_network_debugger_stop`
|
||||
|
||||
停止调试器捕获并返回包含响应体的数据。
|
||||
|
||||
### `chrome_network_request`
|
||||
|
||||
发送自定义 HTTP 请求。
|
||||
|
||||
**参数**:
|
||||
|
||||
- `url` (字符串,必需):请求 URL
|
||||
- `method` (字符串,可选):HTTP 方法(默认:"GET")
|
||||
- `headers` (对象,可选):请求头
|
||||
- `body` (字符串,可选):请求体
|
||||
|
||||
**示例**:
|
||||
|
||||
```json
|
||||
{
|
||||
"url": "https://api.example.com/data",
|
||||
"method": "POST",
|
||||
"headers": {
|
||||
"Content-Type": "application/json"
|
||||
},
|
||||
"body": "{\"key\": \"value\"}"
|
||||
}
|
||||
```
|
||||
|
||||
## 🔍 内容分析
|
||||
|
||||
### `search_tabs_content`
|
||||
|
||||
跨浏览器标签页的 AI 驱动语义搜索。
|
||||
|
||||
**参数**:
|
||||
|
||||
- `query` (字符串,必需):搜索查询
|
||||
|
||||
**示例**:
|
||||
|
||||
```json
|
||||
{
|
||||
"query": "机器学习教程"
|
||||
}
|
||||
```
|
||||
|
||||
**响应**:
|
||||
|
||||
```json
|
||||
{
|
||||
"success": true,
|
||||
"totalTabsSearched": 10,
|
||||
"matchedTabsCount": 3,
|
||||
"vectorSearchEnabled": true,
|
||||
"indexStats": {
|
||||
"totalDocuments": 150,
|
||||
"totalTabs": 10,
|
||||
"semanticEngineReady": true
|
||||
},
|
||||
"matchedTabs": [
|
||||
{
|
||||
"tabId": 123,
|
||||
"url": "https://example.com/ml-tutorial",
|
||||
"title": "机器学习教程",
|
||||
"semanticScore": 0.85,
|
||||
"matchedSnippets": ["机器学习简介..."],
|
||||
"chunkSource": "content"
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### `chrome_get_web_content`
|
||||
|
||||
从网页提取 HTML 或文本内容。
|
||||
|
||||
**参数**:
|
||||
|
||||
- `format` (字符串,可选):"html" 或 "text"(默认:"text")
|
||||
- `selector` (字符串,可选):特定元素的 CSS 选择器
|
||||
- `tabId` (数字,可选):特定标签页 ID(默认:活动标签页)
|
||||
|
||||
**示例**:
|
||||
|
||||
```json
|
||||
{
|
||||
"format": "text",
|
||||
"selector": ".article-content"
|
||||
}
|
||||
```
|
||||
|
||||
### `chrome_get_interactive_elements`
|
||||
|
||||
查找页面上可点击和交互的元素。
|
||||
|
||||
**参数**:
|
||||
|
||||
- `tabId` (数字,可选):特定标签页 ID(默认:活动标签页)
|
||||
|
||||
**响应**:
|
||||
|
||||
```json
|
||||
{
|
||||
"elements": [
|
||||
{
|
||||
"selector": "#submit-button",
|
||||
"type": "button",
|
||||
"text": "提交",
|
||||
"visible": true,
|
||||
"clickable": true
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
## 🎯 交互操作
|
||||
|
||||
### `chrome_click_element`
|
||||
|
||||
使用 CSS 选择器点击元素。
|
||||
|
||||
**参数**:
|
||||
|
||||
- `selector` (字符串,必需):目标元素的 CSS 选择器
|
||||
- `tabId` (数字,可选):特定标签页 ID(默认:活动标签页)
|
||||
|
||||
**示例**:
|
||||
|
||||
```json
|
||||
{
|
||||
"selector": "#submit-button"
|
||||
}
|
||||
```
|
||||
|
||||
### `chrome_fill_or_select`
|
||||
|
||||
填充表单字段或选择选项。
|
||||
|
||||
**参数**:
|
||||
|
||||
- `selector` (字符串,必需):目标元素的 CSS 选择器
|
||||
- `value` (字符串,必需):要填充或选择的值
|
||||
- `tabId` (数字,可选):特定标签页 ID(默认:活动标签页)
|
||||
|
||||
**示例**:
|
||||
|
||||
```json
|
||||
{
|
||||
"selector": "#email-input",
|
||||
"value": "user@example.com"
|
||||
}
|
||||
```
|
||||
|
||||
### `chrome_keyboard`
|
||||
|
||||
模拟键盘输入和快捷键。
|
||||
|
||||
**参数**:
|
||||
|
||||
- `keys` (字符串,必需):按键组合(如:"Ctrl+C"、"Enter")
|
||||
- `selector` (字符串,可选):目标元素选择器
|
||||
- `delay` (数字,可选):按键间延迟(毫秒,默认:0)
|
||||
|
||||
**示例**:
|
||||
|
||||
```json
|
||||
{
|
||||
"keys": "Ctrl+A",
|
||||
"selector": "#text-input",
|
||||
"delay": 100
|
||||
}
|
||||
```
|
||||
|
||||
## 📚 数据管理
|
||||
|
||||
### `chrome_history`
|
||||
|
||||
使用过滤器搜索浏览器历史记录。
|
||||
|
||||
**参数**:
|
||||
|
||||
- `text` (字符串,可选):在 URL/标题中搜索文本
|
||||
- `startTime` (字符串,可选):开始日期(ISO 格式)
|
||||
- `endTime` (字符串,可选):结束日期(ISO 格式)
|
||||
- `maxResults` (数字,可选):最大结果数(默认:100)
|
||||
- `excludeCurrentTabs` (布尔值,可选):排除当前标签页(默认:true)
|
||||
|
||||
**示例**:
|
||||
|
||||
```json
|
||||
{
|
||||
"text": "github",
|
||||
"startTime": "2024-01-01",
|
||||
"maxResults": 50
|
||||
}
|
||||
```
|
||||
|
||||
### `chrome_bookmark_search`
|
||||
|
||||
按关键词搜索书签。
|
||||
|
||||
**参数**:
|
||||
|
||||
- `query` (字符串,可选):搜索关键词
|
||||
- `maxResults` (数字,可选):最大结果数(默认:100)
|
||||
- `folderPath` (字符串,可选):在特定文件夹内搜索
|
||||
|
||||
**示例**:
|
||||
|
||||
```json
|
||||
{
|
||||
"query": "文档",
|
||||
"maxResults": 20,
|
||||
"folderPath": "工作/资源"
|
||||
}
|
||||
```
|
||||
|
||||
### `chrome_bookmark_add`
|
||||
|
||||
添加支持文件夹的新书签。
|
||||
|
||||
**参数**:
|
||||
|
||||
- `url` (字符串,可选):要收藏的 URL(默认:当前标签页)
|
||||
- `title` (字符串,可选):书签标题(默认:页面标题)
|
||||
- `parentId` (字符串,可选):父文件夹 ID 或路径
|
||||
- `createFolder` (布尔值,可选):如果不存在则创建文件夹(默认:false)
|
||||
|
||||
**示例**:
|
||||
|
||||
```json
|
||||
{
|
||||
"url": "https://example.com",
|
||||
"title": "示例网站",
|
||||
"parentId": "工作/资源",
|
||||
"createFolder": true
|
||||
}
|
||||
```
|
||||
|
||||
### `chrome_bookmark_delete`
|
||||
|
||||
按 ID 或 URL 删除书签。
|
||||
|
||||
**参数**:
|
||||
|
||||
- `bookmarkId` (字符串,可选):要删除的书签 ID
|
||||
- `url` (字符串,可选):要查找并删除的 URL
|
||||
|
||||
**示例**:
|
||||
|
||||
```json
|
||||
{
|
||||
"url": "https://example.com"
|
||||
}
|
||||
```
|
||||
|
||||
## 📋 响应格式
|
||||
|
||||
所有工具都返回以下格式的响应:
|
||||
|
||||
```json
|
||||
{
|
||||
"content": [
|
||||
{
|
||||
"type": "text",
|
||||
"text": "包含实际响应数据的 JSON 字符串"
|
||||
}
|
||||
],
|
||||
"isError": false
|
||||
}
|
||||
```
|
||||
|
||||
对于错误:
|
||||
|
||||
```json
|
||||
{
|
||||
"content": [
|
||||
{
|
||||
"type": "text",
|
||||
"text": "描述出错原因的错误消息"
|
||||
}
|
||||
],
|
||||
"isError": true
|
||||
}
|
||||
```
|
||||
|
||||
## 🔧 使用示例
|
||||
|
||||
### 完整工作流示例
|
||||
|
||||
```javascript
|
||||
// 1. 导航到页面
|
||||
await callTool('chrome_navigate', {
|
||||
url: 'https://example.com',
|
||||
});
|
||||
|
||||
// 2. 截图
|
||||
const screenshot = await callTool('chrome_screenshot', {
|
||||
fullPage: true,
|
||||
storeBase64: true,
|
||||
});
|
||||
|
||||
// 3. 开始网络监控
|
||||
await callTool('chrome_network_capture_start', {
|
||||
maxCaptureTime: 30000,
|
||||
});
|
||||
|
||||
// 4. 与页面交互
|
||||
await callTool('chrome_click_element', {
|
||||
selector: '#load-data-button',
|
||||
});
|
||||
|
||||
// 5. 语义搜索内容
|
||||
const searchResults = await callTool('search_tabs_content', {
|
||||
query: '用户数据分析',
|
||||
});
|
||||
|
||||
// 6. 停止网络捕获
|
||||
const networkData = await callTool('chrome_network_capture_stop');
|
||||
|
||||
// 7. 保存书签
|
||||
await callTool('chrome_bookmark_add', {
|
||||
title: '数据分析页面',
|
||||
parentId: '工作/分析',
|
||||
});
|
||||
```
|
||||
|
||||
此 API 提供全面的浏览器自动化功能,具有 AI 增强的内容分析和语义搜索特性。
|
Reference in New Issue
Block a user