# MCP Cache and Site Data Management Test Examples This document provides examples of how to use the new cache and site data management tools through the MCP interface. ## Prerequisites 1. Ensure cremotedaemon is running 2. Ensure Chrome/Chromium is running with remote debugging enabled 3. Configure your MCP client to use the cremote MCP server ## Example 1: Basic Cache Disable/Enable Workflow ```yaml # Navigate to a test page web_navigate_cremotemcp: url: "https://httpbin.org/cache/60" screenshot: true # Disable cache for testing web_disable_cache_cremotemcp: timeout: 10 # Reload page to test without cache web_navigate_cremotemcp: url: "https://httpbin.org/cache/60" # Re-enable cache web_enable_cache_cremotemcp: timeout: 10 ``` ## Example 2: Performance Testing Workflow ```yaml # Clear cache before performance test web_clear_cache_cremotemcp: timeout: 15 # Disable cache for cold load test web_disable_cache_cremotemcp: timeout: 10 # Navigate and measure performance web_navigate_cremotemcp: url: "https://example.com" screenshot: true # Get performance metrics web_performance_metrics_cremotemcp: {} # Enable cache for warm load test web_enable_cache_cremotemcp: timeout: 10 # Navigate again and compare web_navigate_cremotemcp: url: "https://example.com" # Get performance metrics again web_performance_metrics_cremotemcp: {} ``` ## Example 3: Multi-Tab Cache Management ```yaml # Open first tab and disable cache web_manage_tabs_cremotemcp: action: "open" web_disable_cache_cremotemcp: tab: "tab-1" timeout: 10 # Open second tab and keep cache enabled web_manage_tabs_cremotemcp: action: "open" # Navigate both tabs to same URL web_navigate_cremotemcp: url: "https://httpbin.org/cache/60" tab: "tab-1" web_navigate_cremotemcp: url: "https://httpbin.org/cache/60" tab: "tab-2" ``` ## Example 4: Development Workflow ```yaml # Disable cache for development web_disable_cache_cremotemcp: timeout: 10 # Navigate to development site web_navigate_cremotemcp: url: "http://localhost:3000" # Interact with page web_interact_cremotemcp: action: "click" selector: "#refresh-button" # Take screenshot for documentation web_screenshot_enhanced_cremotemcp: output: "/tmp/dev-screenshot.png" full_page: true ``` ## Error Handling The cache management tools will return appropriate error messages if: - The daemon is not running - Chrome/Chromium is not accessible - The specified tab doesn't exist - Network operations timeout Example error response: ```json { "error": "failed to disable cache: tab not found: tab-123", "isError": true } ``` ## Best Practices 1. **Always set appropriate timeouts** for cache operations (5-15 seconds recommended) 2. **Clear cache before performance tests** to ensure consistent baseline measurements 3. **Disable cache during development** to see changes immediately 4. **Re-enable cache after testing** to restore normal browsing behavior 5. **Use specific tab IDs** when working with multiple tabs to avoid confusion ## Example 5: Authentication Testing Workflow ```yaml # Clear all site data before testing login web_clear_all_site_data_cremotemcp: timeout: 15 # Navigate to login page web_navigate_cremotemcp: url: "https://example.com/login" # Fill login form web_form_fill_bulk_cremotemcp: fields: username: "testuser" password: "testpass" # Submit and verify login web_interact_cremotemcp: action: "click" selector: "#login-button" # Clear cookies to test logout behavior web_clear_cookies_cremotemcp: timeout: 10 # Refresh page to verify logout web_navigate_cremotemcp: url: "https://example.com/dashboard" ``` ## Example 6: Storage Testing Workflow ```yaml # Clear storage before testing web_clear_storage_cremotemcp: timeout: 10 # Navigate to application web_navigate_cremotemcp: url: "https://example.com/app" # Interact with app to create storage data web_interact_cremotemcp: action: "click" selector: "#save-data-button" # Clear storage to test data persistence web_clear_storage_cremotemcp: timeout: 10 # Refresh to test if data is gone web_navigate_cremotemcp: url: "https://example.com/app" ``` ## Integration with Other Tools Cache and site data management works seamlessly with other cremote MCP tools: - Use with `web_performance_metrics_cremotemcp` for performance testing - Combine with `web_navigate_cremotemcp` for controlled page loading - Use with `web_screenshot_enhanced_cremotemcp` for visual testing - Integrate with `web_interact_cremotemcp` for user interaction testing - Use with `web_form_fill_bulk_cremotemcp` for authentication testing - Combine with `web_extract_cremotemcp` tools for data verification after clearing