API Reference - JinsongRoh/pydoll-mcp GitHub Wiki
🧩 API Reference - Developer API Documentation
Complete API reference documentation for PyDoll MCP Server v1.1.3. A total of 77 tools organized into 6 categories.
📋 Table of Contents
- [🌐 Browser Management (8 tools)](#-browser-management-8-tools)
- [🧭 Navigation and Page Control (10 tools)](#-navigation-and-page-control-10-tools)
- [🎯 Element Finding and Interaction (15 tools)](#-element-finding-and-interaction-15-tools)
- [📸 Screenshots and Media (6 tools)](#-screenshots-and-media-6-tools)
- [⚡ JavaScript and Advanced Scripting (8 tools)](#-javascript-and-advanced-scripting-8-tools)
- [🔧 Advanced Tools (30 tools)](#-advanced-tools-30-tools)
- [🔄 Common Response Format](#-common-response-format)
- [🚨 Error Handling](#-error-handling)
- [📊 Usage Statistics](#-usage-statistics)
- [🔧 Configuration Options](#-configuration-options)
- [📚 Usage Examples](#-usage-examples)
🌐 Browser Management (8 tools)
Core tools for browser lifecycle and tab management.
start_browser
Start a new browser instance.
Parameters:
browser_type
(string, default: "chrome"): Browser type ("chrome", "edge")headless
(boolean, default: false): Run in headless modewindow_width
(integer, default: 1920): Browser window width (100-7680px)window_height
(integer, default: 1080): Browser window height (100-4320px)stealth_mode
(boolean, default: true): Enable stealth modeproxy_server
(string): Proxy server (host:port format)user_agent
(string): Custom User Agentdisable_images
(boolean, default: false): Disable image loadingblock_ads
(boolean, default: true): Block advertisementscustom_args
(array): Additional browser command line arguments
Returns:
{
"success": true,
"message": "Browser started successfully",
"data": {
"browser_id": "browser_uuid",
"browser_type": "chrome",
"configuration": {...}
}
}
stop_browser
Stop a browser instance and clean up resources.
Parameters:
browser_id
(string, required): Browser instance ID to stopforce
(boolean, default: false): Force stop even if tabs are open
list_browsers
List all active browser instances with their status.
Parameters:
include_stats
(boolean, default: true): Include performance statistics
get_browser_status
Get detailed status information for a specific browser.
Parameters:
browser_id
(string, required): Browser instance ID
new_tab
Create a new tab in a browser instance.
Parameters:
browser_id
(string, required): Browser instance IDurl
(string): Optional URL to navigate to immediatelybackground
(boolean, default: false): Open tab in background
close_tab
Close a specific tab in a browser.
Parameters:
browser_id
(string, required): Browser instance IDtab_id
(string, required): Tab ID to close
list_tabs
List all tabs in a browser instance.
Parameters:
browser_id
(string, required): Browser instance IDinclude_content
(boolean, default: false): Include page content information
set_active_tab
Switch to a specific tab in a browser.
Parameters:
browser_id
(string, required): Browser instance IDtab_id
(string, required): Tab ID to activate
🧭 Navigation and Page Control (10 tools)
Tools for page navigation and URL management.
navigate_to
Navigate to a specific URL in a browser tab.
Parameters:
browser_id
(string, required): Browser instance IDurl
(string, required): URL to navigate totab_id
(string): Tab ID (uses active tab if not specified)wait_for_load
(boolean, default: true): Wait for page to fully loadtimeout
(integer, default: 30): Navigation timeout (seconds)referrer
(string): Referrer URL
refresh_page
Refresh the current page in a browser tab.
Parameters:
browser_id
(string, required): Browser instance IDtab_id
(string): Tab ID (uses active tab if not specified)ignore_cache
(boolean, default: false): Force refresh ignoring cachewait_for_load
(boolean, default: true): Wait for page to reload
go_back
Navigate back in browser history.
Parameters:
browser_id
(string, required): Browser instance IDtab_id
(string): Tab ID (uses active tab if not specified)steps
(integer, default: 1): Number of steps to go back (1-10)
go_forward
Navigate forward in browser history.
Parameters:
browser_id
(string, required): Browser instance IDtab_id
(string): Tab ID (uses active tab if not specified)steps
(integer, default: 1): Number of steps to go forward (1-10)
get_current_url
Get the current URL of a browser tab.
Parameters:
browser_id
(string, required): Browser instance IDtab_id
(string): Tab ID (uses active tab if not specified)
get_page_title
Get the title of the current page.
Parameters:
browser_id
(string, required): Browser instance IDtab_id
(string): Tab ID (uses active tab if not specified)
get_page_source
Get the HTML source code of the current page.
Parameters:
browser_id
(string, required): Browser instance IDtab_id
(string): Tab ID (uses active tab if not specified)include_resources
(boolean, default: false): Include page resource information
wait_for_page_load
Wait for page to fully load with various conditions.
Parameters:
browser_id
(string, required): Browser instance IDtab_id
(string): Tab ID (uses active tab if not specified)condition
(string, default: "load"): Load condition ("domcontentloaded", "load", "networkidle", "custom")timeout
(integer, default: 30): Wait timeout (1-300 seconds)custom_condition
(string): Custom JavaScript condition (when condition="custom")
get_page_info
Get comprehensive information about the current page.
Parameters:
browser_id
(string, required): Browser instance IDtab_id
(string): Tab ID (uses active tab if not specified)include_meta
(boolean, default: true): Include meta tag informationinclude_links
(boolean, default: false): Include all page linksinclude_forms
(boolean, default: false): Include form information
set_viewport_size
Set the viewport size for a browser tab.
Parameters:
browser_id
(string, required): Browser instance IDwidth
(integer, required): Viewport width (100-7680px)height
(integer, required): Viewport height (100-4320px)tab_id
(string): Tab ID (uses active tab if not specified)device_scale_factor
(number, default: 1): Device scale factor for high-DPI displays (0.1-5)
🎯 Element Finding and Interaction (15 tools)
Revolutionary tools for finding and interacting with web elements.
find_element
Find a web element using natural attributes or traditional selectors.
Parameters:
browser_id
(string, required): Browser instance IDtab_id
(string): Tab ID (uses active tab if not specified)
Natural Attribute Selectors:
id
(string): Element ID attributeclass_name
(string): CSS class nametag_name
(string): HTML tag name (div, button, input, etc.)text
(string): Element text contentname
(string): Element name attributevalue
(string): Element value attributeplaceholder
(string): Input placeholder texttype
(string): Element type attribute (for inputs)aria_label
(string): aria-label attributearia_role
(string): aria-role attributedata_testid
(string): data-testid attributedata_id
(string): data-id attribute
Traditional Selectors:
css_selector
(string): CSS selector stringxpath
(string): XPath expression
Options:
timeout
(integer, default: 10): Element search timeout (1-300 seconds)wait_for_visible
(boolean, default: true): Wait for element to be visiblefind_all
(boolean, default: false): Find all matching elements
click_element
Click on a web element with human-like behavior.
Parameters:
browser_id
(string, required): Browser instance IDelement_selector
(object, required): Element selector (same as find_element parameters)tab_id
(string): Tab ID (uses active tab if not specified)click_type
(string, default: "left"): Type of click ("left", "right", "double", "middle")human_like
(boolean, default: true): Use human-like click behavior with natural timingscroll_to_element
(boolean, default: true): Scroll element into view before clickingforce
(boolean, default: false): Force click even if element is not clickableoffset_x
(integer): X offset from element centeroffset_y
(integer): Y offset from element center
type_text
Type text into an input element with realistic human typing.
Parameters:
browser_id
(string, required): Browser instance IDelement_selector
(object, required): Element selectortext
(string, required): Text to typetab_id
(string): Tab ID (uses active tab if not specified)clear_first
(boolean, default: true): Clear existing text before typinghuman_like
(boolean, default: true): Use human-like typing with natural delays and occasional mistakestyping_speed
(string, default: "normal"): Typing speed simulation ("slow", "normal", "fast", "instant")
get_element_text
Get the text content of an element.
Parameters:
browser_id
(string, required): Browser instance IDelement_selector
(object, required): Element selectortab_id
(string): Tab ID (uses active tab if not specified)include_children
(boolean, default: true): Include text from child elementsnormalize_whitespace
(boolean, default: true): Normalize whitespace in extracted text
get_element_attribute
Get an attribute value from an element.
Parameters:
browser_id
(string, required): Browser instance IDelement_selector
(object, required): Element selectortab_id
(string): Tab ID (uses active tab if not specified)attribute_name
(string): Name of attribute to retrieveall_attributes
(boolean, default: false): Get all attributes if true (ignores attribute_name)
hover_element
Hover over an element to trigger hover effects.
Parameters:
browser_id
(string, required): Browser instance IDelement_selector
(object, required): Element selectortab_id
(string): Tab ID (uses active tab if not specified)duration
(number, default: 1): Hover duration (0.1-10 seconds)
scroll_to_element
Scroll an element into view.
Parameters:
browser_id
(string, required): Browser instance IDelement_selector
(object, required): Element selectortab_id
(string): Tab ID (uses active tab if not specified)behavior
(string, default: "smooth"): Scroll behavior ("auto", "smooth", "instant")block
(string, default: "center"): Vertical alignment ("start", "center", "end", "nearest")inline
(string, default: "nearest"): Horizontal alignment ("start", "center", "end", "nearest")
wait_for_element
Wait for an element to appear or meet specific conditions.
Parameters:
browser_id
(string, required): Browser instance IDelement_selector
(object, required): Element selectortab_id
(string): Tab ID (uses active tab if not specified)condition
(string, default: "visible"): Condition to wait for ("visible", "hidden", "enabled", "disabled", "attached", "detached")timeout
(integer, default: 30): Wait timeout (1-300 seconds)check_interval
(number, default: 0.5): Check interval (0.1-5 seconds)
select_option
Select an option from a dropdown or select element.
Parameters:
browser_id
(string, required): Browser instance IDelement_selector
(object, required): Select element selectortab_id
(string): Tab ID (uses active tab if not specified)option_value
(string): Option value to selectoption_text
(string): Option text to select (alternative to value)option_index
(integer): Option index to select (alternative to value/text)multiple
(boolean, default: false): Allow multiple selections
drag_and_drop
Perform drag and drop operation between elements.
Parameters:
browser_id
(string, required): Browser instance IDsource_selector
(object, required): Source element selectortarget_selector
(object, required): Target element selectortab_id
(string): Tab ID (uses active tab if not specified)drag_duration
(number, default: 1): Drag operation duration (0.1-10 seconds)steps
(integer, default: 10): Number of steps in drag motion (1-100)
check_element_visibility
Check if an element is visible and interactable.
Parameters:
browser_id
(string, required): Browser instance IDelement_selector
(object, required): Element selectortab_id
(string): Tab ID (uses active tab if not specified)check_interactable
(boolean, default: true): Also check if element is clickable/interactablecheck_in_viewport
(boolean, default: false): Check if element is in viewport
upload_file
Upload a file to a file input element.
Parameters:
browser_id
(string, required): Browser instance IDelement_selector
(object, required): File input element selectortab_id
(string): Tab ID (uses active tab if not specified)file_path
(string): Path to file to uploadmultiple_files
(array): Multiple file paths for multi-file upload
press_key
Press keyboard keys on an element or page.
Parameters:
browser_id
(string, required): Browser instance IDkey
(string, required): Key to press (e.g., 'Enter', 'Tab', 'Escape', 'F1')tab_id
(string): Tab ID (uses active tab if not specified)element_selector
(object): Optional element to focus before pressing keykey_sequence
(string): Key sequence to press (alternative to single key)modifiers
(array): Modifier keys to hold while pressing (["Shift", "Control", "Alt", "Meta"])
double_click_element
Double-click an element.
Parameters:
browser_id
(string, required): Browser instance IDelement_selector
(object, required): Element selectortab_id
(string): Tab ID (uses active tab if not specified)scroll_to_element
(boolean, default: true): Scroll element into view before double-clicking
📸 Screenshots and Media (6 tools)
Tools for screenshot capture and media generation.
take_screenshot
Take a screenshot of the current page or viewport.
Parameters:
browser_id
(string, required): Browser instance IDtab_id
(string): Tab ID (uses active tab if not specified)full_page
(boolean, default: false): Capture entire page contentviewport_only
(boolean, default: true): Capture only the current viewportformat
(string, default: "png"): Image format ("png", "jpeg", "jpg")quality
(integer): JPEG quality (1-100, for JPEG format only)clip_area
(object): Specific area to capture (x, y, width, height)hide_scrollbars
(boolean, default: true): Hide scrollbars in screenshotfile_name
(string): Custom filename for saved screenshotsave_to_file
(boolean, default: true): Save screenshot to filereturn_base64
(boolean, default: false): Return screenshot as base64 encoded string
take_element_screenshot
Take a screenshot of a specific element.
Parameters:
browser_id
(string, required): Browser instance IDelement_selector
(object, required): Element selectortab_id
(string): Tab ID (uses active tab if not specified)format
(string, default: "png"): Image format ("png", "jpeg", "jpg")quality
(integer): JPEG quality (1-100, for JPEG format only)padding
(integer, default: 0): Extra padding around element (0-100px)scroll_into_view
(boolean, default: true): Scroll element into view before capturingfile_name
(string): Custom filename for saved screenshotsave_to_file
(boolean, default: true): Save screenshot to filereturn_base64
(boolean, default: false): Return screenshot as base64 encoded string
generate_pdf
Generate a PDF of the current page.
Parameters:
browser_id
(string, required): Browser instance IDtab_id
(string): Tab ID (uses active tab if not specified)format
(string, default: "A4"): Page format ("A4", "A3", "A5", "Letter", "Legal", "Tabloid")orientation
(string, default: "portrait"): Page orientation ("portrait", "landscape")include_background
(boolean, default: true): Include background graphicsprint_media
(boolean, default: false): Use print media CSSscale
(number, default: 1): Scale factor for PDF generation (0.1-2)margins
(object): Page margins (top, bottom, left, right)display_header_footer
(boolean, default: false): Display header and footerheader_template
(string): HTML template for page headerfooter_template
(string): HTML template for page footerfile_name
(string): Custom filename for PDF (without extension)
save_page_content
Save complete page content including resources.
Parameters:
browser_id
(string, required): Browser instance IDtab_id
(string): Tab ID (uses active tab if not specified)format
(string, default: "html"): Output format ("html", "mhtml", "pdf")include_resources
(boolean, default: true): Include CSS, JS, and image resourcesinline_resources
(boolean, default: false): Inline resources into HTML filefile_name
(string): Custom filename (without extension)
capture_video
Record a video of browser interactions.
Parameters:
browser_id
(string, required): Browser instance IDaction
(string, required): Recording action ("start", "stop", "pause", "resume")tab_id
(string): Tab ID (uses active tab if not specified)format
(string, default: "webm"): Video format ("webm", "mp4")quality
(string, default: "medium"): Video quality ("low", "medium", "high", "ultra")frame_rate
(integer, default: 30): Frame rate (10-60 FPS)duration_limit
(integer): Maximum recording duration (seconds)file_name
(string): Custom filename for video
extract_images
Extract all images from the current page.
Parameters:
browser_id
(string, required): Browser instance IDtab_id
(string): Tab ID (uses active tab if not specified)download_images
(boolean, default: false): Download images to local filesformats
(array): Image formats to include (["jpg", "jpeg", "png", "gif", "webp", "svg"])min_width
(integer, default: 0): Minimum image width to includemin_height
(integer, default: 0): Minimum image height to includeinclude_background_images
(boolean, default: true): Include CSS background images
⚡ JavaScript and Advanced Scripting (8 tools)
Tools for JavaScript execution and advanced scripting in browser context.
execute_javascript
Execute JavaScript code in the browser context.
Parameters:
browser_id
(string, required): Browser instance IDscript
(string, required): JavaScript code to executetab_id
(string): Tab ID (uses active tab if not specified)context
(string, default: "page"): Execution context ("page", "isolated")timeout
(integer, default: 30): Execution timeout (1-300 seconds)wait_for_execution
(boolean, default: true): Wait for script execution to completereturn_result
(boolean, default: true): Return the result of script execution
execute_automation_script
Execute predefined automation scripts.
Parameters:
browser_id
(string, required): Browser instance IDscript_name
(string, required): Name of the predefined automation scripttab_id
(string): Tab ID (uses active tab if not specified)parameters
(object): Parameters to pass to the automation scriptstep_by_step
(boolean, default: false): Execute automation step by step with confirmationswait_for_completion
(boolean, default: true): Wait for automation to complete
inject_script_library
Inject JavaScript libraries into the page.
Parameters:
browser_id
(string, required): Browser instance IDlibrary
(string, required): JavaScript library to inject ("jquery", "lodash", "axios", "moment", "custom")tab_id
(string): Tab ID (uses active tab if not specified)version
(string): Specific version of the library (optional)custom_url
(string): Custom URL for library injection (required if library is 'custom')wait_for_load
(boolean, default: true): Wait for library to load completely
create_data_extractor
Create and execute custom data extraction scripts.
Parameters:
browser_id
(string, required): Browser instance IDextraction_rules
(array, required): Rules for data extractiontab_id
(string): Tab ID (uses active tab if not specified)output_format
(string, default: "json"): Output format for extracted data ("json", "csv", "xml")save_to_file
(boolean, default: false): Save extracted data to filefile_name
(string): Custom filename for saved data
automate_form_filling
Automate form filling with provided data.
Parameters:
browser_id
(string, required): Browser instance IDform_data
(object, required): Form data as key-value pairs where keys are field selectorstab_id
(string): Tab ID (uses active tab if not specified)form_selector
(string): CSS selector for the form elementclear_before_fill
(boolean, default: true): Clear existing values before fillingsubmit_form
(boolean, default: false): Automatically submit the form after fillingwait_between_fields
(integer, default: 100): Wait time between field fills (0-5000ms)validate_fields
(boolean, default: true): Validate that fields were filled correctly
monitor_page_changes
Monitor page for DOM changes and trigger callbacks.
Parameters:
browser_id
(string, required): Browser instance IDmonitor_type
(string, required): Type of changes to monitor ("dom_changes", "element_changes", "text_changes", "attribute_changes")tab_id
(string): Tab ID (uses active tab if not specified)target_selector
(string): CSS selector for elements to monitorcallback_script
(string): JavaScript code to execute when changes are detectedmax_duration
(integer, default: 60): Maximum monitoring duration (1-3600 seconds)debounce_delay
(integer, default: 500): Debounce delay for change detection (0-5000ms)
execute_script_sequence
Execute a sequence of scripts with conditional logic.
Parameters:
browser_id
(string, required): Browser instance IDscript_sequence
(array, required): Sequence of scripts to executetab_id
(string): Tab ID (uses active tab if not specified)stop_on_first_error
(boolean, default: true): Stop execution on first errorreturn_all_results
(boolean, default: true): Return results from all executed scripts
create_custom_function
Create and register custom JavaScript functions.
Parameters:
browser_id
(string, required): Browser instance IDfunction_name
(string, required): Name of the custom functionfunction_code
(string, required): JavaScript code for the functiontab_id
(string): Tab ID (uses active tab if not specified)parameters
(array): Function parameter namesnamespace
(string): Namespace for the function (e.g., 'MyLib')register_globally
(boolean, default: false): Register function in global scope
🔧 Advanced Tools (30 tools)
Advanced tools for complex browser automation and analysis.
Performance and Analysis Tools
analyze_performance
Analyze page performance metrics and provide optimization suggestions.
Parameters:
browser_id
(string, required): Browser instance IDtab_id
(string): Tab ID (uses active tab if not specified)metrics_to_collect
(array, default: ["timing", "navigation", "paint"]): Performance metrics to collectinclude_suggestions
(boolean, default: true): Include optimization suggestionssave_report
(boolean, default: false): Save performance report to fileexport_format
(string, default: "json"): Export format for performance data ("json", "csv", "html")
intercept_network_requests
Intercept and modify network requests and responses.
Parameters:
browser_id
(string, required): Browser instance IDaction
(string, required): Interception action ("start", "stop", "configure")tab_id
(string): Tab ID (uses active tab if not specified)patterns
(array): URL patterns to intercept (regex supported)modify_requests
(boolean, default: false): Enable request modificationmodify_responses
(boolean, default: false): Enable response modificationlog_requests
(boolean, default: true): Log intercepted requestsblock_patterns
(array): Patterns to block completelymodification_rules
(array): Rules for modifying requests/responses
debug_javascript_errors
Monitor and debug JavaScript errors and console messages.
Parameters:
browser_id
(string, required): Browser instance IDaction
(string, required): Debugging action ("start", "stop", "get_logs")tab_id
(string): Tab ID (uses active tab if not specified)log_levels
(array, default: ["error", "warning"]): Console log levels to captureinclude_stack_traces
(boolean, default: true): Include stack traces for errorsauto_fix_suggestions
(boolean, default: false): Provide automatic fix suggestions for common errorsfilter_patterns
(array): Patterns to filter log messages (regex supported)
Security and Bypass Tools
bypass_cloudflare
Automatically solve Cloudflare Turnstile challenges.
Parameters:
browser_id
(string, required): Browser instance IDtab_id
(string): Tab ID (uses active tab if not specified)timeout
(integer, default: 30): Bypass timeout (seconds)retry_attempts
(integer, default: 3): Number of retry attempts on failurehuman_behavior
(boolean, default: true): Simulate human behavior
bypass_recaptcha
Intelligently bypass reCAPTCHA v3.
Parameters:
browser_id
(string, required): Browser instance IDtab_id
(string): Tab ID (uses active tab if not specified)recaptcha_type
(string, default: "v3"): reCAPTCHA type ("v2", "v3")timeout
(integer, default: 30): Bypass timeout (seconds)human_simulation
(boolean, default: true): Simulate human interaction
enable_stealth_mode
Enable advanced anti-detection techniques.
Parameters:
browser_id
(string, required): Browser instance IDstealth_level
(string, default: "high"): Stealth level ("low", "medium", "high", "maximum")randomize_fingerprint
(boolean, default: true): Randomize browser fingerprinthuman_behavior
(boolean, default: true): Human behavior patternsanti_webrtc
(boolean, default: true): Prevent WebRTC leaks
Multi-Tab and Workflow Tools
orchestrate_multi_tab
Orchestrate actions across multiple browser tabs.
Parameters:
browser_id
(string, required): Browser instance IDorchestration_plan
(array, required): Plan for orchestrating actions across tabsexecution_mode
(string, default: "sequential"): Execution mode for the orchestration ("sequential", "parallel", "conditional")error_handling
(string, default: "stop_on_error"): Error handling strategymax_retries
(integer, default: 3): Maximum retries for failed actions
create_automation_workflow
Create and execute complex automation workflows.
Parameters:
browser_id
(string, required): Browser instance IDworkflow_definition
(object, required): Complete workflow definitionexecution_mode
(string, default: "execute"): Workflow execution mode ("execute", "validate", "dry_run")save_workflow
(boolean, default: false): Save workflow for future useworkflow_name
(string): Name to save the workflow under
Content Analysis and AI Tools
analyze_content_with_ai
Analyze page content using AI for insights and recommendations.
Parameters:
browser_id
(string, required): Browser instance IDanalysis_type
(string, required): Type of AI analysis to perform ("sentiment", "keywords", "summary", "accessibility", "seo", "readability", "structure")tab_id
(string): Tab ID (uses active tab if not specified)content_selector
(string): CSS selector for specific content to analyze (optional)custom_prompt
(string): Custom prompt for AI analysisgenerate_report
(boolean, default: true): Generate a comprehensive analysis reportinclude_images
(boolean, default: false): Include image analysis in content analysislanguage
(string, default: "auto"): Language of the content (auto-detect if not specified)
Testing and Monitoring Tools
generate_test_suite
Generate automated test suites for web applications.
Parameters:
browser_id
(string, required): Browser instance IDtest_config
(object, required): Test generation configurationtab_id
(string): Tab ID (uses active tab if not specified)output_directory
(string): Directory to save generated test filesanalyze_existing_tests
(boolean, default: false): Analyze existing tests and suggest improvements
monitor_real_time_changes
Monitor real-time changes and generate alerts.
Parameters:
browser_id
(string, required): Browser instance IDmonitoring_config
(object, required): Configuration for real-time monitoringtab_id
(string): Tab ID (uses active tab if not specified)duration
(integer, default: 300): Monitoring duration (1-86400 seconds)sampling_interval
(integer, default: 1000): Sampling interval (100-60000ms)alert_config
(object): Alert delivery configuration
profile_memory_usage
Profile memory usage and detect memory leaks.
Parameters:
browser_id
(string, required): Browser instance IDtab_id
(string): Tab ID (uses active tab if not specified)profiling_duration
(integer, default: 60): Profiling duration (10-3600 seconds)sampling_interval
(integer, default: 1000): Memory sampling interval (100-10000ms)detect_leaks
(boolean, default: true): Attempt to detect memory leaksgenerate_report
(boolean, default: true): Generate memory profiling reportinclude_heap_snapshots
(boolean, default: false): Include heap snapshots in profiling
Data Processing and Export Tools
export_comprehensive_data
Export comprehensive data from pages in various formats.
Parameters:
browser_id
(string, required): Browser instance IDtab_id
(string): Tab ID (uses active tab if not specified)output_format
(string, default: "json"): Output format for exported data ("json", "xml", "csv", "html", "markdown", "pdf")export_config
(object): Configuration for data exportfile_name
(string): Custom filename for exportinclude_timestamp
(boolean, default: true): Include timestamp in filenamecompression
(string, default: "none"): Compression format for export ("none", "gzip", "zip")
🔄 Common Response Format
All tools respond with the following consistent JSON format:
{
"success": boolean,
"message": string,
"data": object | null,
"error": string | null,
"timestamp": string,
"execution_time": number
}
Field Descriptions:
success
: Whether the operation completed successfullymessage
: Human-readable description of the operation resultdata
: Operation-specific result data (if any)error
: Error message (if failed)timestamp
: Operation completion time (ISO 8601 format)execution_time
: Operation execution time (milliseconds)
🚨 Error Handling
The API handles the following common error types:
- ValidationError: Invalid parameters or missing required fields
- BrowserNotFoundError: Specified browser instance not found
- TabNotFoundError: Specified tab not found
- ElementNotFoundError: Specified element not found
- TimeoutError: Operation timeout
- NetworkError: Network-related errors
- ScriptExecutionError: JavaScript execution errors
- PermissionError: Permission-related errors
📊 Usage Statistics
PyDoll MCP Server provides the following performance metrics:
- Total Tools: 77
- Categories: 6
- Setup Time: Under 30 seconds
- CAPTCHA Success Rate: 95%+
- Detection Evasion: 98%+
- Memory Usage: 50% savings vs traditional tools
- Speed: 3x faster than traditional tools
- Reliability: 99%+
🔧 Configuration Options
Browser Configuration
{
"browser_config": {
"headless": true,
"disable_images": true,
"disable_css": false,
"block_ads": true,
"enable_compression": true,
"max_concurrent_tabs": 5
}
}
Network Configuration
{
"network_config": {
"timeout": 30,
"retry_attempts": 3,
"enable_caching": true,
"throttle_requests": false
}
}
Stealth Configuration
{
"stealth_config": {
"randomize_fingerprint": true,
"rotate_user_agents": true,
"humanize_timing": true,
"evade_webrtc": true,
"spoof_timezone": true,
"mask_canvas": true
}
}
CAPTCHA Bypass Configuration
{
"captcha_config": {
"auto_solve_cloudflare": true,
"auto_solve_recaptcha": true,
"solve_timeout": 30,
"retry_failed_attempts": 3,
"human_behavior_simulation": true
}
}
📚 Usage Examples
Basic Website Navigation
"Start a browser and navigate to https://example.com"
"Take a screenshot of the current page"
"Find the search box and search for 'browser automation'"
Advanced Form Automation
"Fill login form with username '[email protected]' and password 'secure123'"
"Upload file 'document.pdf' to file input"
"Submit the form and wait for success message"
Security Bypass
"Enable Cloudflare bypass and navigate to protected site"
"Automatically solve any CAPTCHA challenges that appear"
"Extract protected content after security bypass"
Data Extraction and Monitoring
"Monitor all network requests while browsing this e-commerce site"
"Extract product information from all visible items"
"Capture API responses containing price data"
This API reference documentation comprehensively covers all features of PyDoll MCP Server v1.1.3. Each tool provides powerful browser automation capabilities with revolutionary CAPTCHA bypass and anti-detection features to effectively handle modern web protection systems.