Team Ai
Apppublic

MCP-1st-Birthday/legacy_code_modernizer

sourceHugging Faceapache-2.0updated 11mo agoView on Hugging Face
1likes
App README

๐Ÿค– Legacy Code Modernizer - Autonomous AI Agent

Track 2: MCP in Action - Enterprise Applications

An autonomous AI agent that modernizes legacy codebases through intelligent planning, reasoning, and execution using Model Context Protocol (MCP) tools.

๐ŸŽฏ Project Overview

Legacy Code Modernizer is a complete autonomous agent system that transforms outdated code into modern, secure, and maintainable software. The agent autonomously:

  1. 1.Plans - Analyzes codebases and creates modernization strategies
  2. 2.Reasons - Makes intelligent decisions about transformation priorities
  3. 3.Executes - Applies transformations, generates tests, and validates changes
  4. 4.Integrates - Creates GitHub PRs with comprehensive documentation

๐Ÿ† Why This Project Stands Out

Autonomous Agent Capabilities

Multi-Phase Planning & Reasoning:

  • โ€”Phase 1: Intelligent file discovery and classification using AI pattern detection
  • โ€”Phase 2: Semantic code analysis with vector-based similarity search (LlamaIndex + Chroma)
  • โ€”Phase 3: Deep pattern analysis using multiple AI models (Gemini, Nebius AI)
  • โ€”Phase 4: Autonomous code transformation with context-aware reasoning
  • โ€”Phase 5: Automated testing in isolated sandbox + GitHub PR creation

Context Engineering & RAG:

  • โ€”Vector embeddings for semantic code search
  • โ€”Pattern grouping across similar files
  • โ€”Historical transformation caching via MCP Memory
  • โ€”Real-time migration guide retrieval via MCP Search

MCP Tools Integration

The agent uses 4 MCP servers as autonomous tools:

  1. 1.GitHub MCP - Autonomous PR creation with comprehensive documentation
  2. 2.Tavily Search MCP - Real-time migration guide discovery
  3. 3.Memory MCP - Pattern analysis caching and learning
  4. 4.Filesystem MCP - Safe file operations (planned)

Real-World Enterprise Value

  • โ€”Multi-language support: Python, Java, JavaScript, TypeScript
  • โ€”Secure execution: Modal sandbox with isolated test environments
  • โ€”Production-ready: Comprehensive test generation with coverage reporting

๐Ÿš€ Demo

Video Demo

[Demo video](https://drive.google.com/file/d/1ph0NK8QKXRStjydqBV9w6HJaViirswE2/view?usp=sharing)

Social Media Post

[Post on X](https://x.com/naazimhussain02/status/1994786125110710567?s=46&t=SdhRmvogISrVhMiZB_HDJQ)

๐ŸŽฌ Quick Start

Try It Live on Hugging Face Spaces

  1. 1.Upload a code file (Python, Java, JavaScript, TypeScript)
  2. 2.Select target version (auto-detected from your code)
  3. 3.Click "Start Modernization"
  4. 4.Watch the autonomous agent work through all 5 phases
  5. 5.Download modernized code, tests, and reports

Local Installation

bash
# Clone repository
git clone https://huggingface.co/spaces/MCP-1st-Birthday/legacy_code_modernizer
cd legacy_code_modernizer

# Set up environment variables
cp .env.example .env
# Edit .env with your API keys:
# - GEMINI_API_KEY (required)
# - GITHUB_TOKEN (for PR creation)
# - TAVILY_API_KEY (for search)
# - MODAL_TOKEN_ID & MODAL_TOKEN_SECRET (for sandbox)

# Set up Python virtual environment
#   On macOS / Linux:
source venv/bin/activate
#   On Windows PowerShell:
.\venv\Scripts\Activate.ps1
#   On Windows CMD:
venv\Scripts\activate.bat

# Install dependencies
pip install -r requirements.txt

# Run the Gradio app
python app.py

๐Ÿง  Autonomous Agent Architecture

Planning Phase

Input: Legacy codebase
โ†“
Agent analyzes file structure and content
โ†“
Classifies files by modernization priority
โ†“
Creates transformation roadmap

Reasoning Phase

Agent groups similar patterns using vector search
โ†“
Retrieves migration guides via Tavily MCP
โ†“
Checks cached analyses via Memory MCP
โ†“
Prioritizes transformations by risk/impact

Execution Phase

Agent transforms code with AI models
โ†“
Generates comprehensive test suites
โ†“
Validates in isolated Modal sandbox
โ†“
Auto-fixes export/import issues

Integration Phase

Agent creates GitHub branch via GitHub MCP
โ†“
Commits transformed files
โ†“
Generates PR with deployment checklist
โ†“
Adds rollback plan and test results

๐Ÿ› ๏ธ Technical Stack

AI & LLM

  • โ€”Google Gemini - Primary reasoning engine with large context window
  • โ€”Nebius AI - Alternative model for diverse perspectives
  • โ€”LlamaIndex - RAG framework for semantic code search
  • โ€”Chroma - Vector database for embeddings
  • โ€”bge-large-en - Embedding model deployed on Modal for inference

MCP Integration

  • โ€”mcp (v1.22.0) - Model Context Protocol SDK
  • โ€”@modelcontextprotocol/server-github - GitHub operations
  • โ€”@modelcontextprotocol/server-tavily - Web search
  • โ€”@modelcontextprotocol/server-memory - Persistent storage

Execution & Testing

  • โ€”Modal - Serverless sandbox for secure test execution
  • โ€”pytest/Jest/JUnit - Language-specific test frameworks
  • โ€”Coverage.py/JaCoCo - Code coverage analysis

UI & Orchestration

  • โ€”Gradio 6.0 - Interactive web interface
  • โ€”LangGraph - Agent workflow orchestration
  • โ€”asyncio - Asynchronous execution

๐Ÿ“Š Features Showcase

1. Intelligent Pattern Detection

python
# Agent automatically detects legacy patterns:
- Deprecated libraries (MySQLdb โ†’ PyMySQL)
- Security vulnerabilities (SQL injection)
- Python 2 syntax โ†’ Python 3
- Missing type hints
- Old-style string formatting

2. Semantic Code Search

python
# Vector-based similarity search finds:
- Files with similar legacy patterns
- Related security vulnerabilities
- Common refactoring opportunities

3. Autonomous Test Generation

python
# Agent generates:
- Unit tests with pytest/Jest/JUnit
- Integration tests
- Edge case coverage
- Performance benchmarks

4. GitHub Integration via MCP

python
# Automated PR includes:
- Comprehensive change summary
- Test results with coverage
- Risk assessment
- Deployment checklist
- Rollback plan

๐ŸŽฏ Supported Languages & Versions

Python

  • โ€”Versions: 3.10, 3.11, 3.12, 3.13, 3.14
  • โ€”Frameworks: Django 5.2 LTS, Flask 3.1, FastAPI 0.122
  • โ€”Testing: pytest with coverage

Java

  • โ€”Versions: Java 17 LTS, 21 LTS, 23, 25 LTS
  • โ€”Frameworks: Spring Boot 3.4, 4.0
  • โ€”Testing: Maven + JUnit 5 + JaCoCo

JavaScript

  • โ€”Standards: ES2024, ES2025
  • โ€”Runtimes: Node.js 22 LTS, 24 LTS, 25
  • โ€”Frameworks: React 19, Angular 21, Vue 3.5, Express 5.1, Next.js 16
  • โ€”Testing: Jest with coverage

TypeScript

  • โ€”Versions: 5.6, 5.7, 5.8, 5.9
  • โ€”Frameworks: React 19, Angular 21, Next.js 16
  • โ€”Testing: Jest with ts-jest

๐Ÿ”’ Security & Isolation

Modal Sandbox Execution

  • โ€”Network isolation: No external network access during tests
  • โ€”Filesystem isolation: Temporary containers per execution
  • โ€”Resource limits: CPU and memory constraints
  • โ€”Automatic cleanup: Containers destroyed after execution

Code Validation

  • โ€”Syntax checking: Pre-execution validation
  • โ€”Import/export fixing: Automatic resolution of module issues
  • โ€”Security scanning: Detection of vulnerabilities
  • โ€”Type checking: Language-specific validation

๐ŸŽ“ Advanced Features

Context Engineering

  • โ€”Sliding window context: Manages large files efficiently
  • โ€”Cross-file analysis: Understands dependencies
  • โ€”Pattern learning: Improves with usage via Memory MCP

RAG Implementation

  • โ€”Semantic chunking: Intelligent code splitting
  • โ€”Vector similarity: Finds related patterns
  • โ€”Hybrid search: Combines keyword + semantic search

Agent Reasoning

  • โ€”Priority scoring: Risk vs. impact analysis
  • โ€”Dependency tracking: Understands file relationships

๐Ÿ“ License

Apache 2.0 - See LICENSE file for details

๐Ÿ™ Acknowledgments

Built for MCP's 1st Birthday Hackathon hosted by Anthropic and Gradio.

Powered by:

  • โ€”Google Gemini & Nebius AI
  • โ€”Model Context Protocol (MCP)
  • โ€”LlamaIndex & Chroma
  • โ€”Modal
  • โ€”Gradio

Autonomous agents + MCP tools = The future of software development