Skip to main content
Glama
HyperClockUp

DrissionPageMCPServer_Modified

by HyperClockUp

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
PYTHONPATHNoPath to the project's src directory, required for the Python environment to locate the drissionpage_mcp package.
DRISSIONPAGE_MCP_TIMEOUTNoTimeout setting for browser operations in seconds.30
DRISSIONPAGE_MCP_HEADLESSNoWhether to run the browser in headless mode.false
DRISSIONPAGE_MCP_LOG_LEVELNoThe logging level for the server (e.g., INFO, DEBUG).INFO
DRISSIONPAGE_MCP_BROWSER_PATHNoOptional specific path to the Chrome, Edge, or other Chromium-based browser executable.
DRISSIONPAGE_MCP_DOWNLOAD_PATHNoOptional directory path for file downloads.
DRISSIONPAGE_MCP_SCREENSHOT_PATHNoOptional directory path for saving screenshots.

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
connect_browser

连接到浏览器或启动新浏览器

Args: port: 调试端口,默认9222 headless: 无头模式(不显示浏览器窗口) incognito: 无痕/隐私模式 user_data_dir: 用户数据目录 带超时控制,默认20秒超时。
new_tab

创建新标签页

navigate

导航到指定URL

click_element

点击页面元素(智能优化版)

⚠️ 重要提示:使用此工具前,请务必遵循标准化工作流程: 1. 📸 先使用 take_screenshot() 确认目标元素存在 2. 🔍 使用 get_dom_tree() 或 find_elements() 分析页面结构 3. 🎯 基于准确信息构建选择器,禁止猜测元素名称 🎯 选择器优先级(推荐顺序): - ID选择器:#element-id (最优先) - CSS类选择器:.class-name - 属性选择器:[data-testid="value"] - XPath选择器://div[@class="example"] - 文本匹配:仅作为辅助手段 Args: selector: 元素选择器(禁止猜测,必须基于实际DOM结构) selector_type: 选择器类型 (css, xpath, text) index: 元素索引(当有多个匹配时,从0开始) smart_feedback: 是否启用智能反馈(推荐True) Returns: str: 操作结果和反馈信息 💡 最佳实践示例: - 正确:先 find_elements("button") 确认按钮存在,再 click_element("#submit-btn") - 错误:直接 click_element("#可能存在的按钮") 而不确认元素
input_text

在输入框中输入文本(智能优化版)

⚠️ 重要提示:使用此工具前,请务必遵循标准化工作流程: 1. 📸 先使用 take_screenshot() 确认输入框存在且可见 2. 🔍 使用 find_elements() 验证输入框的选择器 3. 🎯 基于准确的DOM信息构建选择器 🎯 输入框选择器优先级: - ID选择器:#input-id (最优先) - name属性:[name="username"] - CSS类选择器:.form-input - XPath选择器://input[@type="text"] Args: selector: 输入框选择器(必须基于实际DOM结构,禁止猜测) text: 要输入的文本内容 clear_first: 是否先清空输入框(推荐True避免内容叠加) Returns: str: 输入操作结果和反馈信息 💡 最佳实践示例: - 正确:先 find_elements("input[type='text']") 确认输入框,再输入文本 - 错误:直接对未确认的选择器输入文本
get_element_text

获取元素文本内容(精确定位版)

⚠️ 重要提示:这是预处理工具,用于获取精确的元素信息! 使用场景: 1. 🔍 在点击或输入操作前,验证目标元素的实际文本内容 2. 📋 获取页面动态内容,如表格数据、状态信息等 3. ✅ 确认元素存在性和可见性 🎯 选择器构建原则: - 必须基于 get_dom_tree() 或 find_elements() 的结果 - 禁止猜测元素选择器 - 优先使用ID、class、属性选择器 Args: selector: 元素选择器(必须基于实际DOM结构) Returns: str: 元素的文本内容,如果元素不存在则返回错误信息 💡 最佳实践示例: - 正确:先 find_elements(".status") 确认元素,再 get_element_text(".status") - 错误:直接 get_element_text("#可能的状态元素") 而不确认
get_page_text

获取页面完整文本内容(预处理必备工具)

⚠️ 核心预处理工具:这是标准化工作流程的第2步! 🔧 主要用途: 1. 🔍 在操作元素前,获取页面的完整文本信息 2. 📋 为非多模态LLM提供详细的页面内容描述 3. 🎯 帮助构建精确的元素选择器 4. ✅ 确认页面加载完成和内容可用性 💡 与其他工具的配合使用: - 配合 take_screenshot():视觉+文本双重确认 - 配合 get_dom_tree():结构化分析页面布局 - 配合 find_elements():基于文本内容定位元素 Returns: str: 页面的完整可见文本内容(去除HTML标签) 🚀 推荐工作流程: 1. take_screenshot() - 获取页面截图 2. get_page_text() - 获取页面文本(当前步骤) 3. get_dom_tree() - 分析页面结构 4. 基于以上信息执行具体操作
take_screenshot

截取页面截图(标准化工作流程第1步)

⚠️ 核心预处理工具:这是标准化工作流程的第1步! 🎯 主要用途: 1. 🔍 视觉确认:在任何元素操作前,先确认目标元素存在 2. 📋 为多模态LLM提供视觉上下文信息 3. 🐛 调试辅助:操作失败时用于问题诊断 4. 📝 文档记录:保存操作过程的视觉证据 💡 与其他工具的配合: - 多模态LLM:截图 → 视觉分析 → 精确操作 - 非多模态LLM:截图 → get_page_text() → get_dom_tree() → 操作 Args: filename: 截图文件名(可选,自动生成时间戳命名) full_page: 是否截取完整页面(True)还是可视区域(False) element_selector: 仅截取特定元素(可选) Returns: str: 截图保存路径和操作结果 🚀 推荐使用场景: - 每次页面导航后立即截图确认加载状态 - 点击、输入等操作前截图确认目标元素 - 操作失败时截图辅助问题诊断
get_screenshot_data

获取截图二进制数据

带超时控制,默认30秒超时。
get_dom_tree

获取DOM树结构(结构化分析工具)

⚠️ 核心分析工具:这是标准化工作流程的第3步! 🎯 主要用途: 1. 📋 获取页面的层次化结构信息 2. 🔍 为元素定位提供精确的选择器路径 3. 🎯 分析页面布局,理解元素间的父子关系 4. 🛠️ 为非多模态LLM提供详细的结构化信息 💡 与其他工具的协作: - 在 take_screenshot() 和 get_page_text() 之后使用 - 为 find_elements() 提供选择器构建依据 - 配合 get_element_text() 验证元素内容 Args: selector: 起始选择器(默认"body"获取整个页面结构) max_depth: 最大遍历深度(默认10层,避免过深嵌套) Returns: str: 结构化的DOM树信息,包含标签、属性、层级关系 🚀 使用建议: - 首次分析页面:使用默认参数获取完整结构 - 聚焦特定区域:指定具体的selector缩小范围 - 复杂页面:适当减少max_depth避免信息过载
find_elements

查找页面元素(智能定位工具)

⚠️ 精确定位工具:基于DOM分析结果进行元素查找! 🎯 主要用途: 1. 🔍 基于get_dom_tree()结果,精确定位目标元素 2. 📋 验证元素存在性和可访问性 3. 🎯 获取元素的详细属性信息(id、class、text等) 4. 🛠️ 为后续操作提供准确的选择器 💡 选择器类型优先级: 1. CSS选择器:#id、.class、[attribute](推荐) 2. XPath://div[@class='example'](复杂定位) 3. 文本匹配:"按钮文字"(辅助手段) Args: selector: 元素选择器(必须基于实际DOM结构) selector_type: 选择器类型(css/xpath/text) limit: 返回元素数量限制(避免结果过多) include_similar: 是否包含相似元素(智能匹配) Returns: str: 匹配元素的详细信息列表 🚀 最佳实践: - 先用get_dom_tree()分析页面结构 - 基于结构信息构建精确选择器 - 验证找到的元素是否为目标元素 - 将结果用于click_element()或input_text()操作 Returns: str: 查找结果
enable_network_monitoring

启用网络监控

Args: filter_types: 需要监听的mimeType类型列表 Returns: str: 启用结果
get_network_logs

获取网络请求日志

Args: limit: 返回日志的最大数量 Returns: str: 网络日志数据
save_page_source

保存页面源码到文件

get_cookies

获取当前页面的Cookies

execute_javascript

执行JavaScript代码

run_cdp_command

执行CDP命令

Prompts

Interactive templates invoked by user choice

NameDescription
global_automation_hints永远附加的全局自动化测试操作提示

Resources

Contextual data attached and managed by the client

NameDescription
get_default_config获取默认配置
get_all_instructions获取所有工具指令
get_browser_status获取浏览器状态

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/HyperClockUp/DrissionPageMCPServer_Modified'

If you have feedback or need assistance with the MCP directory API, please join our Discord server