JinsongRoh/pydoll-mcp
If you are the rightful owner of pydoll-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
PyDoll MCP Server is a cutting-edge browser automation tool that leverages the Model Context Protocol (MCP) to provide seamless and intelligent web automation capabilities.
start_browser
Launch Chrome/Edge with advanced configuration.
navigate_to
Smart URL navigation with load detection.
find_element
Revolutionary natural attribute finding.
take_screenshot
Full page capture with options.
bypass_cloudflare
Automatic Turnstile solving.
๐ค PyDoll MCP Server(pydoll-mcp) v1.1.3
The Ultimate Browser Automation MCP Server
Revolutionary zero-webdriver automation with intelligent captcha bypass
๐ข Latest Updates (v1.1.3 - 2025-06-18)
๐ Critical Bug Fixes
- โ Fixed JSON Parsing Errors: Resolved MCP client communication issues
- โ Encoding Compatibility: Full support for Korean Windows systems (CP949/EUC-KR)
- โ Protocol Compliance: Proper stdout/stderr separation for MCP compatibility
- โ Enhanced Stability: Improved server startup and error handling
๐ What Makes PyDoll MCP Server Revolutionary?
PyDoll MCP Server brings the groundbreaking capabilities of PyDoll to Claude, OpenAI, Gemini and other MCP clients. Unlike traditional browser automation tools that struggle with modern web protection, PyDoll operates at a fundamentally different level.
PyDoll GitHub and Installation Information
- GitHub: https://github.com/autoscrape-labs/pydoll
- How to install: pip install pydoll-python
- PyDoll version: PyDoll 2.2.1 (2025.06.17)
๐ Key Breakthrough Features
- ๐ซ Zero WebDrivers: Direct browser communication via Chrome DevTools Protocol
- ๐ง AI-Powered Captcha Bypass: Automatic Cloudflare Turnstile & reCAPTCHA v3 solving
- ๐ค Human Behavior Simulation: Undetectable interactions that fool sophisticated anti-bot systems
- โก Native Async Architecture: Lightning-fast concurrent automation
- ๐ต๏ธ Advanced Stealth Mode: Anti-detection techniques that make automation invisible
- ๐ Real-time Network Control: Intercept, modify, and analyze all web traffic
- ๐ง One-Click Setup: Automatic Claude Desktop configuration
- ๐ Universal Compatibility: Works on all systems including Korean Windows
- ๐ MCP Protocol Compliant: Fixed JSON parsing issues for reliable communication
๐ What Can You Do?
๐ฏ Smart Web Automation
- Navigate websites with human-like behavior patterns
- Extract data from protected and dynamic websites
- Automate complex workflows across multiple pages
- Handle modern SPAs and dynamic content seamlessly
๐ก๏ธ Protection System Bypass
- Automatically solve Cloudflare Turnstile captchas
- Bypass reCAPTCHA v3 without external services
- Evade sophisticated bot detection systems
- Navigate through protected content areas
๐ Advanced Data Extraction
- Scrape data from modern protected websites
- Monitor and capture all network API calls
- Extract information from dynamic, JavaScript-heavy sites
- Handle complex authentication flows
๐ Comprehensive Testing & Monitoring
- Test websites under realistic user conditions
- Monitor performance and network behavior
- Validate forms and user interactions
- Capture screenshots and generate reports
๐ป Quick Installation & Setup
โก One-Command Installation (Recommended)
pip install pydoll-mcp
NEW in v1.1.0: The installation now automatically offers to configure Claude Desktop! ๐
After installation, you'll see:
๐ค Setting up PyDoll MCP Server...
๐ PyDoll MCP Server installed successfully!
============================================================
๐ Quick Start Options:
1. ๐ง Auto-configure Claude Desktop
2. ๐ Generate config manually
3. ๐งช Test installation
4. โญ๏ธ Skip setup (configure later)
๐ฏ Choose an option (1-4): 1
๐ Alternative Setup Methods
Option 1: One-Click Auto Setup
# Install and configure everything automatically
pip install pydoll-mcp
python -m pydoll_mcp.cli auto-setup
Option 2: Manual Setup from Source
# Clone the repository
git clone https://github.com/JinsongRoh/pydoll-mcp.git
cd pydoll-mcp
# Install dependencies
pip install -r requirements.txt
# Install in development mode
pip install -e .
# Setup Claude Desktop
python -m pydoll_mcp.cli setup-claude
Option 3: Docker Installation
# Pull and run the Docker container
docker run -d --name pydoll-mcp -p 8080:8080 jinsongroh/pydoll-mcp:latest
โ๏ธ Claude Desktop Integration
๐ง Automatic Setup (NEW! v1.1.0)
The easiest way to get started:
# After installing with pip, just run:
python -m pydoll_mcp.cli auto-setup
This will:
- โ Test your installation
- โ Locate your Claude Desktop config
- โ Backup existing configuration
- โ Add PyDoll MCP Server configuration
- โ Verify everything works
๐ ๏ธ Manual Setup Options
Automatic Setup Scripts
Windows:
# Download and run setup script
curl -o setup_claude.bat https://raw.githubusercontent.com/JinsongRoh/pydoll-mcp/main/setup/setup_claude_windows.bat
setup_claude.bat
Linux/macOS:
# Download and run setup script
curl -o setup_claude.sh https://raw.githubusercontent.com/JinsongRoh/pydoll-mcp/main/setup/setup_claude_unix.sh
chmod +x setup_claude.sh
./setup_claude.sh
Manual Configuration
If you prefer to configure manually, add this to your Claude Desktop config:
Config File Locations:
- Windows:
%APPDATA%\\Claude\\claude_desktop_config.json
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Linux:
~/.config/Claude/claude_desktop_config.json
Configuration:
{
"mcpServers": {
"pydoll": {
"command": "python",
"args": ["-m", "pydoll_mcp.server"],
"env": {
"PYDOLL_LOG_LEVEL": "INFO"
}
}
}
}
Generate Config File
# Generate configuration file
python -m pydoll_mcp.cli generate-config
# Generate and auto-setup
python -m pydoll_mcp.cli generate-config --auto-setup
# Generate in different formats
python -m pydoll_mcp.cli generate-config --format yaml
python -m pydoll_mcp.cli generate-config --format env
๐ Getting Started
1. Quick Start Guide
# Interactive setup guide
python -m pydoll_mcp.cli quick-start
2. Test Your Installation
# Test installation
python -m pydoll_mcp.cli test-installation --verbose
# Test browser automation
python -m pydoll_mcp.cli test-browser --browser chrome --headless
# Check status
python -m pydoll_mcp.cli status --logs --stats
3. Basic Usage Examples
Basic Website Navigation:
"Start a browser and go to https://example.com"
"Take a screenshot of the current page"
"Find the search box and search for 'browser automation'"
Advanced Form Automation:
"Fill the login form with username 'test@example.com' and password 'secure123'"
"Upload the file 'document.pdf' to the file input"
"Submit the form and wait for the success message"
Protection Bypass:
"Enable Cloudflare bypass and navigate to the protected site"
"Automatically solve any captcha challenges that appear"
"Extract the protected content after bypassing security"
Data Extraction & Monitoring:
"Monitor all network requests while browsing this e-commerce site"
"Extract product information from all visible items"
"Capture API responses containing pricing data"
๐ ๏ธ Complete Tool Arsenal
๐ Browser Management (8 tools)
- start_browser: Launch Chrome/Edge with advanced configuration
- stop_browser: Gracefully terminate browser with cleanup
- new_tab: Create isolated tabs with custom settings
- close_tab: Close specific tabs and free resources
- list_browsers: Show all browser instances and status
- list_tabs: Display detailed tab information
- set_active_tab: Switch between tabs seamlessly
- get_browser_status: Comprehensive health reporting
๐งญ Navigation & Page Control (10 tools)
- navigate_to: Smart URL navigation with load detection
- refresh_page: Intelligent page refresh with cache control
- go_back/go_forward: Browser history navigation
- wait_for_page_load: Advanced page readiness detection
- get_current_url: Current page URL with validation
- get_page_source: Complete HTML source extraction
- get_page_title: Page title and metadata retrieval
- wait_for_network_idle: Network activity monitoring
- set_viewport_size: Responsive design testing
- get_page_info: Comprehensive page analysis
๐ฏ Element Finding & Interaction (15 tools)
- find_element: Revolutionary natural attribute finding
- find_elements: Bulk element discovery with filtering
- click_element: Human-like clicking with timing
- type_text: Realistic text input simulation
- press_key: Advanced keyboard input handling
- get_element_text: Intelligent text extraction
- get_element_attribute: Attribute value retrieval
- wait_for_element: Smart element waiting conditions
- scroll_to_element: Smooth scrolling with viewport management
- hover_element: Natural mouse hover simulation
- select_option: Dropdown and select handling
- check_element_visibility: Comprehensive visibility testing
- drag_and_drop: Advanced drag-drop operations
- double_click: Double-click interaction simulation
- right_click: Context menu interactions
๐ธ Screenshots & Media (6 tools)
- take_screenshot: Full page capture with options
- take_element_screenshot: Precise element capture
- generate_pdf: Professional PDF generation
- save_page_content: Complete page archival
- capture_video: Screen recording capabilities
- extract_images: Image extraction and processing
โก JavaScript & Advanced Scripting (8 tools)
- execute_script: Full JavaScript execution environment
- execute_script_on_element: Element-context scripting
- evaluate_expression: Quick expression evaluation
- inject_script: External library injection
- get_console_logs: Browser console monitoring
- handle_dialogs: Alert/confirm/prompt handling
- manipulate_cookies: Complete cookie management
- local_storage_operations: Browser storage control
๐ก๏ธ Protection Bypass & Stealth (12 tools)
- bypass_cloudflare: Automatic Turnstile solving
- bypass_recaptcha: reCAPTCHA v3 intelligent bypass
- enable_stealth_mode: Advanced anti-detection
- simulate_human_behavior: Realistic user patterns
- randomize_fingerprint: Browser fingerprint rotation
- handle_bot_challenges: Generic challenge solving
- evade_detection: Comprehensive evasion techniques
- monitor_protection_status: Real-time security analysis
- proxy_rotation: Dynamic IP address changing
- user_agent_rotation: User agent randomization
- header_spoofing: Request header manipulation
- timing_randomization: Human-like timing patterns
๐ Network Control & Monitoring (10 tools)
- network_monitoring: Comprehensive traffic analysis
- intercept_requests: Real-time request modification
- extract_api_responses: Automatic API capture
- modify_headers: Dynamic header injection
- block_resources: Resource blocking for performance
- simulate_network_conditions: Throttling and latency
- get_network_logs: Detailed activity reporting
- monitor_websockets: WebSocket connection tracking
- analyze_performance: Page performance metrics
- cache_management: Browser cache control
๐ File & Data Management (8 tools)
- upload_file: Advanced file upload handling
- download_file: Controlled downloading with progress
- extract_page_data: Structured data extraction
- export_data: Multi-format data export
- import_configuration: Settings import/export
- manage_sessions: Session state management
- backup_browser_state: Complete state backup
- restore_browser_state: State restoration
๐ง Advanced Configuration
Performance Optimization
{
"browser_config": {
"headless": true,
"disable_images": true,
"disable_css": false,
"block_ads": true,
"enable_compression": true,
"max_concurrent_tabs": 5
},
"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 Settings
{
"captcha_config": {
"auto_solve_cloudflare": true,
"auto_solve_recaptcha": true,
"solve_timeout": 30,
"retry_failed_attempts": 3,
"human_behavior_simulation": true
}
}
๐ ๏ธ Command Line Interface
PyDoll MCP Server comes with a powerful CLI for management and testing:
# Main commands
pydoll-mcp # Start MCP server
pydoll-mcp-test # Test installation
pydoll-mcp-setup # Setup Claude Desktop
# Module commands
python -m pydoll_mcp.server # Start server
python -m pydoll_mcp.cli --help # Show all CLI options
# Setup and configuration
python -m pydoll_mcp.cli auto-setup # One-click setup
python -m pydoll_mcp.cli setup-claude # Setup Claude Desktop only
python -m pydoll_mcp.cli quick-start # Interactive guide
python -m pydoll_mcp.cli generate-config # Generate config files
# Testing and diagnostics
python -m pydoll_mcp.cli test-installation --verbose
python -m pydoll_mcp.cli test-browser --browser chrome
python -m pydoll_mcp.cli status --logs --stats
# Maintenance
python -m pydoll_mcp.cli cleanup # Clean temp files
๐ Troubleshooting
Common Issues
Installation Problems
# Check Python version (requires 3.8+)
python --version
# Upgrade pip
python -m pip install --upgrade pip
# Install with verbose output
pip install pydoll-mcp -v
Browser Issues
# Verify browser installation
python -c "from pydoll.browser import Chrome; print('Browser check passed')"
# Test basic functionality
python -m pydoll_mcp.cli test-browser
# Check browser permissions
ls -la /usr/bin/google-chrome # Linux
Connection Issues
# Test MCP server connection
python -m pydoll_mcp.server --test
# Check logs
python -m pydoll_mcp.cli status --logs
# Verify Claude Desktop config
python -m pydoll_mcp.cli generate-config
MCP Communication Issues (NEW in v1.1.3!) - FIXED!
# For JSON parsing errors, upgrade to v1.1.3
pip install --upgrade pydoll-mcp
# Verify the fix
python -m pydoll_mcp.server --test
# Check server output (should be clean JSON)
python -m pydoll_mcp.cli status
Encoding Issues (Korean Windows / International Systems)
# For Korean Windows systems with cp949 encoding
set PYTHONIOENCODING=utf-8
python -m pydoll_mcp.server
# Alternative: Use command prompt with UTF-8
chcp 65001
python -m pydoll_mcp.server
# Permanent solution: Add to Claude Desktop config
{
"mcpServers": {
"pydoll": {
"command": "python",
"args": ["-m", "pydoll_mcp.server"],
"env": {
"PYTHONIOENCODING": "utf-8",
"PYDOLL_LOG_LEVEL": "INFO"
}
}
}
}
Configuration Issues
# Re-run setup
python -m pydoll_mcp.cli auto-setup --force
# Check configuration
python -m pydoll_mcp.cli status
# Manual config generation
python -m pydoll_mcp.cli generate-config --auto-setup
Debug Mode
# Enable debug logging
export PYDOLL_DEBUG=1
export PYDOLL_LOG_LEVEL=DEBUG
# Run with detailed output
python -m pydoll_mcp.server --debug
๐ Performance Metrics
PyDoll MCP Server provides significant advantages over traditional automation:
Metric | PyDoll MCP | Traditional Tools |
---|---|---|
Setup Time | < 30 seconds | 5-15 minutes |
Captcha Success Rate | 95%+ | 20-30% |
Detection Evasion | 98%+ | 60-70% |
Memory Usage | 50% less | Baseline |
Speed | 3x faster | Baseline |
Reliability | 99%+ | 80-85% |
๐ What's New
v1.1.3 (Latest - 2025-06-18)
๐ Critical Bug Fixes
- Fixed JSON Parsing Errors: Resolved critical JSON parsing errors that prevented MCP client communication
- Stdout/Stderr Separation: Modified banner output to use stderr instead of stdout for MCP protocol compliance
- Encoding Compatibility: Fixed character encoding issues on Korean Windows systems (CP949/EUC-KR)
- Protocol Compliance: Ensured all stdout output is valid JSON for proper MCP client integration
- Enhanced Error Handling: Improved error messages with proper JSON formatting for better client parsing
- Cross-Platform Stability: Better handling of international character encodings
v1.1.2
๐ ๏ธ Enhanced Stability
- Server Reliability: Improved server startup and shutdown processes
- Error Recovery: Better error handling and recovery mechanisms
- Performance Optimization: Reduced memory usage and improved response times
v1.1.1
๐ Critical Bug Fixes
- Fixed Korean Windows Issue: Resolved
UnicodeEncodeError
that prevented server startup on Korean Windows systems - Enhanced Encoding Support: Added comprehensive encoding detection and fallback mechanisms
- International Compatibility: Improved support for all non-English Windows environments
- Automatic Recovery: Added robust error recovery for encoding-related failures
v1.1.0
๐ง One-Click Setup
- Auto-configuration: Automatic Claude Desktop setup during pip installation
- Smart detection: Automatic detection of Claude Desktop config paths
- Safe merging: Intelligent merging with existing configurations
- Backup protection: Automatic backup of existing configurations
๐ Enhanced CLI
- New Commands:
auto-setup
,setup-claude
,quick-start
- Interactive guides: Step-by-step setup assistance
- Better diagnostics: Enhanced testing and status reporting
- Cross-platform: Improved Windows, macOS, and Linux support
๐ ๏ธ Developer Experience
- Post-install hooks: Automatic setup prompts after installation
- Multiple entry points: Various ways to access setup functionality
- Better error handling: More helpful error messages and recovery suggestions
- Documentation: Updated docs with new setup methods
๐ค Contributing
We welcome contributions! See our for details.
Development Setup
# Clone repository
git clone https://github.com/JinsongRoh/pydoll-mcp.git
cd pydoll-mcp
# Create virtual environment
python -m venv venv
source venv/bin/activate # Linux/macOS
venv\\Scripts\\activate # Windows
# Install development dependencies
pip install -e ".[dev]"
# Run tests
python -m pytest tests/ -v
# Setup pre-commit hooks
pre-commit install
Adding Features
- Fork the repository
- Create a feature branch:
git checkout -b feature-name
- Add tests for new functionality
- Ensure all tests pass:
pytest
- Submit a pull request
๐ Documentation & Resources
- Complete Documentation: Full user guide and API reference
- PyDoll Library: Core automation library documentation
- MCP Protocol: Model Context Protocol specification
- Examples Repository: Comprehensive automation examples
๐ Security & Ethics
Responsible Use Guidelines
- Respect robots.txt: Honor website crawling policies
- Rate Limiting: Avoid overwhelming servers
- Legal Compliance: Ensure automation follows applicable laws
- Privacy: Handle data responsibly
- Terms of Service: Respect website terms
Security Features
- Sandboxed Execution: Isolated browser processes
- Secure Defaults: Conservative security settings
- Audit Logging: Comprehensive action logging
- Permission Model: Granular capability control
๐ Roadmap
v1.2.0 (Coming Soon)
- Firefox browser support
- Enhanced mobile device emulation
- Advanced form recognition
- Improved error handling
- GUI setup tool
v1.3.0 (Q3 2025)
- Visual element recognition
- Natural language to automation
- Cloud browser support
- Enterprise features
v2.0.0 (Future)
- AI-powered automation
- Self-healing scripts
- Advanced analytics
- Multi-platform support
๐ Support & Sponsorship
If you find PyDoll MCP Server valuable:
- โญ Star the repository on GitHub
- ๐ Report issues and suggest improvements
- ๐ฐ Sponsor the project for priority support
- ๐ข Share with your network
- ๐ Write tutorials and blog posts
๐ License
This project is licensed under the MIT License - see the file for details.
๐ Acknowledgments
- PyDoll Team: For the revolutionary automation library
- Anthropic: For Claude and the MCP protocol
- Open Source Community: For continuous improvements and feedback
Ready to revolutionize your browser automation?
Download Latest Release |
Documentation |
Community
PyDoll MCP Server - Where AI meets revolutionary browser automation! ๐ค๐