"""
MCP Tools for Web Parser
"""

from .fetch import fetch_html_tool
from .extract import extract_text_tool, find_elements_tool, extract_links_tool
from .parse import parse_page_tool
from .auth import login_form_tool
from .browser_auth import browser_login_tool
from .session import (
    get_session_info_tool, clear_session_tool, import_browser_cookies_tool,
    set_basic_auth_tool, set_oauth_token_tool
)
from .navigation import auto_paginate_tool, parallel_fetch_tool, infinite_scroll_tool
from .media import download_media_tool, debug_screenshot_tool
from .cache import cache_results_tool
from .structured import extract_structured_data_tool
from .monitoring import (
    get_system_health_tool, get_performance_metrics_tool, get_cache_stats_tool,
    clear_cache_tool, get_connection_stats_tool, run_diagnostic_tool
)
from .api_test import (
    api_test_tool, api_batch_test_tool, parse_advanced_tool, 
    extract_dynamic_content_tool, load_plugin_tool, unload_plugin_tool,
    list_plugins_tool, discover_plugins_tool, get_plugin_tools_tool
)

# Tool definitions for MCP server
from .tool_definitions import get_all_tools

__all__ = [
    # Basic tools
    "fetch_html_tool",
    "extract_text_tool", 
    "find_elements_tool",
    "extract_links_tool",
    "parse_page_tool",
    
    # Authentication tools
    "login_form_tool",
    "browser_login_tool", 
    "set_basic_auth_tool",
    "set_oauth_token_tool",
    
    # Session tools
    "get_session_info_tool",
    "clear_session_tool",
    "import_browser_cookies_tool",
    
    # Navigation tools
    "auto_paginate_tool",
    "parallel_fetch_tool",
    "infinite_scroll_tool",
    
    # Media tools
    "download_media_tool",
    "debug_screenshot_tool",
    
    # Data tools
    "cache_results_tool",
    "extract_structured_data_tool",
    
    # Monitoring tools
    "get_system_health_tool",
    "get_performance_metrics_tool", 
    "get_cache_stats_tool",
    "clear_cache_tool",
    "get_connection_stats_tool",
    "run_diagnostic_tool",
    
    # API test tools
    "api_test_tool",
    "api_batch_test_tool", 
    "parse_advanced_tool",
    "extract_dynamic_content_tool",
    
    # Plugin tools
    "load_plugin_tool",
    "unload_plugin_tool",
    "list_plugins_tool",
    "discover_plugins_tool",
    "get_plugin_tools_tool",
    
    # Tool definitions
    "get_all_tools"
]
