Professional Web Automation and Testing Framework with 60+ MCP Tools, Cloud Platform Support, and Performance Optimization
Project description
๐ WebPilot
Professional Web Automation Framework with 60+ MCP Tools, Cloud Support, and AI Integration
WebPilot v1.3.0 is a comprehensive web automation framework that combines browser automation, intelligent test generation, and seamless CI/CD integration. Now with 60+ MCP tools, intelligent error handling, cloud platform support, and performance optimization.
๐ What's New in v1.3.0
- ๐ ๏ธ 60+ MCP Tools: Expanded from 27 to 60+ tools for comprehensive automation
- ๐ก๏ธ Intelligent Error Handling: Context-aware error recovery with actionable suggestions
- โ๏ธ Cloud Platform Support: Native integration with BrowserStack, Sauce Labs, and LambdaTest
- โก Performance Optimization: Smart caching, parallel execution, and batch operations
- ๐ Enhanced Reporting: Performance metrics and cache statistics
โจ Key Features
- ๐ Multi-Backend Support: Selenium, Playwright, and async HTTP operations
- ๐ค MCP Integration: Full Model Context Protocol with 60+ tools for AI assistants
- ๐ง ML-Powered Test Generation: Automatically learn and generate tests from user interactions
- โ๏ธ Cloud Testing: Native support for BrowserStack, Sauce Labs, LambdaTest
- ๐ CI/CD Ready: Pre-built templates for GitHub Actions, GitLab, Jenkins, and more
- ๐ Advanced Reporting: Beautiful HTML reports with performance metrics
- ๐ Smart Waiting: Intelligent wait strategies that adapt to your application
- โฟ Accessibility Testing: Built-in WCAG compliance checking
- ๐ฏ Visual Testing: Screenshot comparison and OCR capabilities
- โก Performance Testing: Lighthouse integration and smart caching
- ๐ Security Scanning: Security audit capabilities with recovery suggestions
๐ Quick Start
Installation
# Basic installation
pip install claude-webpilot
# With all features
pip install claude-webpilot[all]
# Specific features
pip install claude-webpilot[selenium] # Selenium backend
pip install claude-webpilot[vision] # OCR and visual testing
pip install claude-webpilot[ml] # Machine learning features
pip install claude-webpilot[cloud] # Cloud testing platforms
Basic Usage
from webpilot import WebPilot
# Simple browser automation
with WebPilot() as pilot:
pilot.start("https://example.com")
pilot.click(text="Login")
pilot.type_text("username", selector="#email")
pilot.type_text("password", selector="#password")
pilot.click(selector="button[type='submit']")
pilot.screenshot("login_success.png")
Intelligent Test Generation
from webpilot.ml import IntelligentTestGenerator
# Learn from manual testing
generator = IntelligentTestGenerator()
patterns = generator.learn_from_session("manual_test_session.json")
# Generate test code
generator.export_tests("generated_tests/", language="python")
Cloud Testing
from webpilot.cloud import CloudWebPilot, CloudConfig, CloudProvider
config = CloudConfig(
provider=CloudProvider.BROWSERSTACK,
username="your_username",
access_key="your_key",
project_name="My Test Suite"
)
with CloudWebPilot(config, browser="chrome", os_name="Windows", os_version="11") as pilot:
pilot.start("https://myapp.com")
# Your test steps here
pilot.mark_test_status(passed=True)
๐ค MCP Integration - 60+ Tools for AI Assistants!
WebPilot v1.3.0 provides comprehensive Model Context Protocol support with 60+ tools organized into 8 categories:
Tool Categories & Counts
| Category | Tools | Examples |
|---|---|---|
| Core | 9 | webpilot_start, webpilot_navigate, webpilot_click, webpilot_type |
| Forms | 5 | webpilot_fill_form_auto, webpilot_upload_file, webpilot_validate_form |
| Navigation | 5 | webpilot_open_new_tab, webpilot_switch_tab, webpilot_handle_alert |
| Data | 8 | webpilot_extract_emails, webpilot_save_as_pdf, webpilot_extract_meta_tags |
| Testing | 8 | webpilot_check_broken_links, webpilot_lighthouse_audit, webpilot_check_seo |
| Interaction | 6 | webpilot_drag_and_drop, webpilot_right_click, webpilot_press_key |
| Automation | 5 | webpilot_login, webpilot_search_and_filter, webpilot_monitor_changes |
| Cloud | 3 | webpilot_browserstack_session, webpilot_sauce_labs_session |
New v1.3.0 Enhancements
from webpilot.mcp.server import WebPilotMCPServer
server = WebPilotMCPServer()
# ๐ก๏ธ Intelligent Error Handling
result = await server.handle_tool_call("webpilot_click", {"selector": ".missing"})
# Returns helpful recovery suggestions if element not found
# โก Performance Optimization
server.optimize_for_scenario("speed") # Enable caching & parallel execution
perf_report = server.get_performance_report() # View cache hit rates
# โ๏ธ Cloud Platform Support
platforms = server.get_cloud_platforms() # List available cloud providers
# ๐ Batch Operations
results = await server.batch_execute_tools([
{"tool": "webpilot_navigate", "params": {"url": "https://example.com"}},
{"tool": "webpilot_screenshot", "params": {"name": "page1"}},
{"tool": "webpilot_extract", "params": {}}
])
For Claude Desktop
Add to your MCP configuration:
{
"mcpServers": {
"webpilot": {
"command": "python",
"args": ["-m", "webpilot.mcp.run_server"]
}
}
}
See MCP Integration Guide for full details.
๐ Documentation
Examples
Check the examples/ directory for complete examples:
- Basic Automation - Getting started with WebPilot
- Test Generation - ML-powered test creation
- Cloud Testing - Cross-browser testing
- CI/CD Integration - Pipeline setup
- Performance Testing - Lighthouse and metrics
- Visual Testing - Screenshot comparison
- Accessibility Testing - WCAG compliance
Guides
๐๏ธ Architecture
webpilot/
โโโ core/ # Core framework and session management
โโโ backends/ # Browser automation backends (Selenium, Playwright, Async)
โโโ ml/ # Machine learning test generation
โโโ cloud/ # Cloud testing platform integrations
โโโ features/ # Advanced features (vision, DevOps, accessibility)
โโโ utils/ # Utilities (smart wait, reporting, helpers)
โโโ monitoring/ # Real-time monitoring and dashboards
โโโ cicd/ # CI/CD template generation
๐งช Testing
# Run tests
pytest tests/
# With coverage
pytest tests/ --cov=webpilot --cov-report=html
# Run specific test categories
pytest tests/unit/
pytest tests/integration/
pytest tests/e2e/
๐ค Contributing
We welcome contributions! Please see our Contributing Guidelines for details.
Development Setup
# Clone the repository
git clone https://github.com/yourusername/webpilot.git
cd webpilot
# Install in development mode
pip install -e ".[dev]"
# Install pre-commit hooks
pre-commit install
# Run code formatters
black src/ tests/
isort src/ tests/
# Run linters
flake8 src/ tests/
mypy src/
Code Style
- We use Black for code formatting
- We use isort for import sorting
- We follow PEP 8 style guide
- All code must have type hints (PEP 484)
- All public functions must have docstrings (Google style)
๐ Performance
WebPilot is designed for speed and efficiency:
- Smart Wait: Reduces test time by up to 40% with intelligent waiting
- Parallel Execution: Run tests concurrently across multiple browsers
- Caching: Session and element caching for faster execution
- Lazy Loading: Load features only when needed
๐ก๏ธ Security
WebPilot takes security seriously:
- No credentials stored in code
- Environment variable support for sensitive data
- Secure cloud provider integrations
- Regular dependency updates
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ Acknowledgments
- Selenium WebDriver team for the excellent browser automation
- Playwright team for modern browser automation
- scikit-learn team for ML capabilities
- The open source community for continuous inspiration
๐บ๏ธ Roadmap
- Docker container support
- Kubernetes integration for distributed testing
- Enhanced ML models for test generation
- GraphQL API testing support
- Mobile browser testing
- Advanced performance profiling
- Integration with more cloud providers
๐ฌ Support
- Documentation: https://webpilot.readthedocs.io
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Email: webpilot@example.com
๐ Star History
Made with โค๏ธ by the WebPilot Team
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file claude_webpilot-1.3.0.tar.gz.
File metadata
- Download URL: claude_webpilot-1.3.0.tar.gz
- Upload date:
- Size: 87.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.3 CPython/3.13.5 Linux/6.16.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b3fb1b913f89c3113aec6f34ffab2ac308560b6e3322b8bfe7a0fb7c3674e611
|
|
| MD5 |
b4f09c4e23a2c0dcb4b93c140783912b
|
|
| BLAKE2b-256 |
e21e5e5d73c74da154d0188883aed84843a400fc9c357919a02da8e643397f94
|
File details
Details for the file claude_webpilot-1.3.0-py3-none-any.whl.
File metadata
- Download URL: claude_webpilot-1.3.0-py3-none-any.whl
- Upload date:
- Size: 99.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.3 CPython/3.13.5 Linux/6.16.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e55b6dd1e100662b9b7062a823989aaf59b19d715f8b8be573c9355785620282
|
|
| MD5 |
827db0c2b41b2a929db92cecd7934f8e
|
|
| BLAKE2b-256 |
c4162651c5ce21d69d66c9f43e1f0704f4d90ce7a4260cc5267342e42035d2f8
|