loading…
Search for a command to run...
loading…
Automatically crawl and analyze legacy web applications to generate documentation and modernization plans.
Automatically crawl and analyze legacy web applications to generate documentation and modernization plans.
Legacy Web MCP Server implements the Model Context Protocol (MCP) to power automated discovery and analysis of legacy web applications. This AI-powered tool helps development teams automatically crawl websites, analyze site structure, and generate comprehensive documentation artifacts for modernization planning.
🚀 Now available on PyPI! Install and run globally with uvx legacy-web-mcp
# Install uvx (if not already installed)
curl -LsSf https://astral.sh/uv/install.sh | sh
# Run the MCP server directly from PyPI
uvx legacy-web-mcp
That's it! The server is ready for MCP connections.
The Legacy Web MCP Server uses uvx for isolation and easy installation. Install it if you haven't already:
curl -LsSf https://astral.sh/uv/install.sh | sh
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
uvx --version
# Run directly from PyPI - no installation required
uvx legacy-web-mcp
# Install globally and run
uvx install legacy-web-mcp
legacy-web-mcp
# Install specific version
uvx --from legacy-web-mcp==0.1.1 legacy-web-mcp
# Check version
uvx legacy-web-mcp --version
# Show help
uvx legacy-web-mcp --help
# Test server startup (Ctrl+C to stop)
uvx legacy-web-mcp
📍 Find your Claude Desktop configuration file:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%/Claude/claude_desktop_config.json~/.config/claude-desktop/config.json📝 Edit the configuration file and add the Legacy Web MCP Server:
{
"mcpServers": {
"legacy-web-mcp": {
"command": "uvx",
"args": ["legacy-web-mcp"],
"env": {
"OPENAI_API_KEY": "your_openai_key_here",
"ANTHROPIC_API_KEY": "your_anthropic_key_here",
"GEMINI_API_KEY": "your_gemini_key_here",
"STEP1_MODEL": "gpt-4o-mini",
"STEP2_MODEL": "gpt-4o-mini",
"FALLBACK_MODEL": "gpt-4o-mini",
"OPENAI_CHAT_MODEL": "gpt-4o-mini",
"ANTHROPIC_CHAT_MODEL": "claude-3-haiku-20240307",
"GEMINI_CHAT_MODEL": "gemini-1.5-flash",
"PLAYWRIGHT_HEADLESS": "true",
"MAX_CONCURRENT_PAGES": "3",
"OUTPUT_ROOT": "docs/web_discovery"
}
}
}
}
If you already have other MCP servers configured:
{
"mcpServers": {
"existing-server": {
"command": "existing-command",
"args": ["existing-args"]
},
"legacy-web-mcp": {
"command": "uvx",
"args": ["legacy-web-mcp"],
"env": {
"OPENAI_API_KEY": "your_openai_key_here",
"ANTHROPIC_API_KEY": "your_anthropic_key_here",
"GEMINI_API_KEY": "your_gemini_key_here",
"STEP1_MODEL": "gpt-4o-mini",
"STEP2_MODEL": "gpt-4o-mini",
"FALLBACK_MODEL": "gpt-4o-mini",
"OPENAI_CHAT_MODEL": "gpt-4o-mini",
"ANTHROPIC_CHAT_MODEL": "claude-3-haiku-20240307",
"GEMINI_CHAT_MODEL": "gemini-1.5-flash",
"PLAYWRIGHT_HEADLESS": "true",
"MAX_CONCURRENT_PAGES": "3",
"OUTPUT_ROOT": "docs/web_discovery"
}
}
}
}
🔐 Important: Replace the placeholder values with your actual API keys and desired configuration.
Security Note: For better security, you can use environment variable references instead:
{
"mcpServers": {
"legacy-web-mcp": {
"command": "uvx",
"args": ["legacy-web-mcp"],
"env": {
"OPENAI_API_KEY": "${OPENAI_API_KEY}",
"ANTHROPIC_API_KEY": "${ANTHROPIC_API_KEY}",
"GEMINI_API_KEY": "${GEMINI_API_KEY}",
"STEP1_MODEL": "gpt-4o-mini"
}
}
}
}
Then set the environment variables in your shell profile:
export OPENAI_API_KEY="your_openai_key_here"
export ANTHROPIC_API_KEY="your_anthropic_key_here"
export GEMINI_API_KEY="your_gemini_key_here"
For AI-powered analysis features, configure LLM providers:
# If using development version, copy template
cp .env.template .env
Edit .env with your API keys:
# LLM Providers (choose one or more)
OPENAI_API_KEY=your_openai_key_here
ANTHROPIC_API_KEY=your_anthropic_key_here
GEMINI_API_KEY=your_gemini_key_here
# Model Configuration (Required if using LLMs)
STEP1_MODEL=gpt-4o-mini
STEP2_MODEL=gpt-4o-mini
FALLBACK_MODEL=gpt-4o-mini
# Provider-specific chat models
OPENAI_CHAT_MODEL=gpt-4o-mini
ANTHROPIC_CHAT_MODEL=claude-3-haiku-20240307
GEMINI_CHAT_MODEL=gemini-1.5-flash
# Browser & Concurrency Settings
PLAYWRIGHT_HEADLESS=true
MAX_CONCURRENT_PAGES=3
# Output Directory
OUTPUT_ROOT=docs/web_discovery
For enhanced website crawling:
# Install Playwright browsers
uvx --from legacy-web-mcp playwright install
The server provides comprehensive website analysis and documentation tools:
discover_website - Comprehensive website structure discovery via sitemap/crawlinganalyze_legacy_site - Complete automated analysis workflow for legacy applicationsintelligent_analyze_site - AI-driven website analysis with natural language insightsanalyze_with_recommendations - Analysis with AI-powered modernization recommendationsping - Server health and status informationhealth_check - Comprehensive system health report with diagnosticsvalidate_dependencies - Check Playwright browser installationstest_llm_connectivity - Verify LLM provider connections and API healthshow_config - Display current configuration (redacted for security)setup_project_documentation_structure - Create project documentation foldersorganize_project_artifacts - Organize analysis results into project structuregenerate_master_analysis_report - Create comprehensive analysis reportsgenerate_url_slug - Convert URLs to safe filenamescreate_gitignore_for_web_discovery - Generate version control guidancevalidate_browser_dependencies - Detailed browser installation statusget_browser_metrics - Performance metrics for browser sessionsexecute_sequential_workflow - Multi-page analysis workflowscapture_page_screenshot - Page screenshot capturesimulate_page_interactions - Interactive element discovery and testinginspect_debug_session - Analysis debugging and quality inspectionlist_analysis_artifacts - View available analysis resultsexport_analysis_artifacts - Export analysis data for external usevalidate_analysis_quality - Quality scoring and validationcleanup_old_artifacts - Maintenance and cleanup operations# Test server version
uvx legacy-web-mcp --version
# Test help command
uvx legacy-web-mcp --help
With Claude Desktop running and configured:
# Clone the repository for testing scripts
git clone https://github.com/hieutrtr/web-discovery-mcp.git
cd web-discovery-mcp
# Test basic tools
uv run python scripts/test_mcp_client.py ping
uv run python scripts/test_mcp_client.py health_check
# Test website discovery
uv run python scripts/test_mcp_client.py discover_website https://example.com
# Test AI analysis (requires LLM configuration)
uv run python scripts/test_mcp_client.py analyze_legacy_site https://example.com
{
"mcpServers": {
"legacy-web-mcp": {
"command": "uv",
"args": ["run", "legacy-web-mcp"],
"cwd": "/path/to/web-discovery-mcp"
}
}
}
{
"mcpServers": {
"legacy-web-mcp": {
"command": "uvx",
"args": ["--from", ".", "legacy-web-mcp"],
"cwd": "/path/to/web-discovery-mcp"
}
}
}
{
"mcpServers": {
"legacy-web-mcp": {
"command": "uvx",
"args": ["--from", "legacy-web-mcp==0.1.1", "legacy-web-mcp"]
}
}
}
Problem: Claude Desktop doesn't show MCP connection
Solutions:
Check configuration file location and syntax
# Verify file exists and is valid JSON
cat ~/.config/claude-desktop/config.json | jq .
Test uvx installation
uvx --version
uvx legacy-web-mcp --version
Check Claude Desktop logs (if available)
Restart Claude Desktop completely
Problem: Server fails to start
Solutions:
Check Python version
python3 --version # Should be 3.11+
Reinstall the package
uvx uninstall legacy-web-mcp
uvx install legacy-web-mcp
Check for port conflicts
# Test basic startup
uvx legacy-web-mcp --help
Problem: Browser automation fails
Solutions:
Install Playwright browsers
uvx --from legacy-web-mcp playwright install
Validate installation
uv run python scripts/test_mcp_client.py validate_dependencies
Check system requirements for Playwright
Problem: AI analysis tools fail
Solutions:
Verify API keys in environment
# For development setup
grep -E "API_KEY|MODEL" .env
Test LLM connectivity
uv run python scripts/test_mcp_client.py test_llm_connectivity
Check model configuration
uv run python scripts/test_mcp_client.py show_config
The Legacy Web MCP Server automatically:
Perfect for development teams planning legacy application modernization, conducting technical audits, or understanding complex website architectures.
docs/ directory for detailed guidesQ: Do I need to install Python separately?
A: No, uvx manages Python environments automatically.
Q: Can I use this with other MCP clients? A: Yes, any MCP-compatible client should work.
Q: Do I need LLM API keys to use basic features? A: No, website discovery works without LLM configuration. AI analysis features require API keys.
Q: How do I update to a newer version?
A: Run uvx install --force legacy-web-mcp or use uvx directly which always uses the latest version.
After successful installation:
Happy analyzing! 🚀
Distributed under the MIT License. See LICENSE for details.
Выполни в терминале:
claude mcp add legacy-web-mcp -- npx Безопасность
Низкий рискАвтоматическая эвристика по публичным данным — не гарантия безопасности.