This monorepo contains two main packages:
- @aws-deploy-ai/mcp-server: Model Context Protocol server with AWS Bedrock integration
- @aws-deploy-ai/frontend: Next.js web interface for the deployment platform
# Copy environment variables
cd packages/frontend
cp .env.local.example .env.local- Go to GitHub Settings > Developer Settings > OAuth Apps
- Create a new OAuth App with:
- Application name: AWS Deploy AI
- Homepage URL:
http://localhost:3000 - Authorization callback URL:
http://localhost:3000/api/auth/github/callback
- Copy the Client ID and Client Secret to your
.env.localfile
# Install all dependencies and build MCP server
npm run install-all
# Start development environment (both packages)
npm run dev
# Access the web interface at http://localhost:3000- Click "Connect GitHub" on the main page
- Authorize the application
- Your repositories will be automatically loaded
No cloud expertise required. Just describe what you want, and watch your infrastructure come to life.
- Natural Language Processing: Describe your deployment in plain English
- Intelligent Infrastructure Recommendations: AI analyzes your needs and suggests optimal AWS services
- Cost Optimization: Automatic selection of cost-effective resources
- Smart Defaults: Production-ready configurations out of the box
- Static Websites: S3 + CloudFront for lightning-fast static sites
- Single Page Applications: Optimized SPA deployment with proper routing
- Serverless APIs: Lambda functions with API Gateway integration
- Full-Stack Applications: Complete infrastructure orchestration
- Custom Domains: Automatic SSL certificate provisioning and DNS setup
- Live Deployment Progress: Watch your infrastructure being created in real-time
- Cost Tracking: Transparent cost estimates and monitoring
- Resource Management: View and manage all deployed resources
- Health Monitoring: Automatic health checks and alerts
- Model Context Protocol (MCP): Extensible architecture for easy integration
- TypeScript: Full type safety throughout the codebase
- Modern Stack: Next.js frontend with Tailwind CSS
- Comprehensive Logging: Detailed deployment logs and error tracking
# Node.js 18+ required
node --version # Should be 18.0.0 or higher
# AWS CLI configured
aws configure
# OR set environment variables:
# AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_REGION
# Ensure AWS Bedrock access is enabled in your region- Clone the repository
git clone https://github.com/DheerajShrivastav/aws-deploy-ai.git
cd aws-deploy-ai- Set up the MCP Server
cd mcp-server
npm install
cp .env.example .env
# Edit .env with your AWS credentials
npm run build- Set up the Frontend (Optional)
cd ../frontend
npm install
npm run dev # Runs on http://localhost:3000- Start the MCP Server
cd ../mcp-server
npm run dev # For development
# OR
npm start # For production"Deploy my portfolio website with my resume and projects"
"Deploy my React app with custom domain myportfolio.com and SSL certificate"
"Create a blog website with fast loading and SEO optimization"
"Deploy my online store with product catalog and payment processing"
"Set up a serverless API for my mobile app with database integration"
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
β Frontend β β MCP Server β β AWS Services β
β (Next.js) ββββββ (TypeScript) ββββββ (Auto-Deploy) β
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
β β β
β βββββββββββββββββββ β
ββββββββββββββββ AI Interpreter ββββββββββββββββββ
β (AWS Bedrock) β
βββββββββββββββββββ
- Parses natural language deployment requests
- Generates infrastructure requirements
- Provides cost estimates and recommendations
- Powered by AWS Bedrock (Claude 3) for intelligent analysis
- S3 Service: Static website hosting and asset storage
- CloudFront Service: Global CDN distribution
- Lambda Service: Serverless function deployment
- IAM Service: Automated security policy creation
- Route53 Service: DNS and domain management
- State machine for deployment orchestration
- Real-time progress tracking
- Error handling and rollback capabilities
- Resource lifecycle management
Create a .env file in the mcp-server directory:
# AWS Configuration
AWS_REGION=us-east-1
AWS_ACCESS_KEY_ID=your_access_key_here
AWS_SECRET_ACCESS_KEY=your_secret_key_here
# AWS Bedrock Configuration
BEDROCK_MODEL_ID=anthropic.claude-3-sonnet-20240229-v1:0
BEDROCK_REGION=us-east-1
# Deployment Configuration
DEFAULT_BUCKET_PREFIX=aws-deploy-ai
DEFAULT_CLOUDFRONT_PRICE_CLASS=PriceClass_100
# Logging Configuration
LOG_LEVEL=info
LOG_FILE=./logs/aws-deploy-ai.log
# Security Configuration
ENCRYPTION_KEY=your_encryption_key_hereYour AWS user/role needs the following permissions:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:*",
"cloudfront:*",
"lambda:*",
"iam:CreateRole",
"iam:AttachRolePolicy",
"iam:PassRole",
"route53:*",
"acm:*",
"apigateway:*",
"logs:*"
],
"Resource": "*"
}
]
}Deploy a website or application to AWS.
Parameters:
prompt(string): Natural language description of what to deployprojectName(string, optional): Name of the projectcustomDomain(string, optional): Custom domain nameenvironment(string, optional): deployment environment (development/staging/production)
Example:
await mcpClient.callTool('deploy-website', {
prompt: 'Deploy my React portfolio with contact form',
projectName: 'my-portfolio',
customDomain: 'johnsmith.dev',
environment: 'production',
})Check the status of a deployment.
Parameters:
deploymentId(string): The deployment ID to check
Analyze deployment requirements without deploying.
Parameters:
prompt(string): Deployment requirements to analyze
Get detailed cost estimates for a deployment.
Parameters:
prompt(string): Deployment requirements for cost estimation
| Project Type | Description | AWS Services Used |
|---|---|---|
| Static Website | HTML, CSS, JS files | S3, CloudFront, Route53 |
| Single Page App | React, Vue, Angular apps | S3, CloudFront, Route53 |
| Blog | Content-focused websites | S3, CloudFront, Lambda |
| E-commerce | Online stores | S3, CloudFront, Lambda, DynamoDB |
| API Backend | RESTful APIs | Lambda, API Gateway, DynamoDB |
| Full-Stack App | Complete web applications | All services |
| Documentation | Documentation sites | S3, CloudFront |
| Portfolio | Personal/professional portfolios | S3, CloudFront, Route53 |
| Project Type | Small Traffic | Medium Traffic | High Traffic |
|---|---|---|---|
| Static Website | $2-5 | $10-25 | $50-100 |
| SPA | $3-8 | $15-35 | $75-150 |
| API Backend | $5-15 | $25-75 | $100-300 |
| Full-Stack App | $10-30 | $50-150 | $200-500 |
Costs include S3 storage, CloudFront distribution, Lambda execution, and data transfer. Actual costs may vary based on usage patterns.
- Intelligent Resource Sizing: AI selects optimal resource configurations
- Free Tier Utilization: Maximizes use of AWS free tier benefits
- Caching Optimization: CloudFront caching reduces data transfer costs
- Serverless-First: Uses cost-effective serverless services when possible
aws-deploy-ai/
βββ mcp-server/ # MCP Server (TypeScript)
β βββ src/
β β βββ main.ts # Server entry point
β β βββ services/ # AWS service integrations
β β βββ tools/ # MCP tool implementations
β β βββ types/ # TypeScript type definitions
β β βββ utils/ # Utility functions
β βββ package.json
β βββ tsconfig.json
β
βββ frontend/ # Next.js Frontend (Optional)
β βββ src/app/ # Next.js App Router
β βββ components/ # React components
β βββ package.json
β βββ tailwind.config.js
β
βββ docs/ # Documentation
βββ api.md # API documentation
βββ deployment-guide.md # Deployment guide
βββ examples/ # Usage examples
# MCP Server tests
cd mcp-server
npm test
# Frontend tests
cd frontend
npm test# Build MCP Server
cd mcp-server
npm run build
# Build Frontend
cd frontend
npm run buildWe welcome contributions! Please see our Contributing Guide for details.
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Make your changes
- Add tests for new functionality
- Run tests:
npm test - Commit changes:
git commit -m 'Add amazing feature' - Push to branch:
git push origin feature/amazing-feature - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Model Context Protocol (MCP): For providing the extensible server framework
- AWS Bedrock: For powering the intelligent deployment analysis with Claude 3
- AWS: For providing the robust cloud infrastructure platform
- Next.js & Tailwind CSS: For the beautiful and responsive frontend
- Documentation: Full Documentation
- GitHub Issues: Report Bugs or Request Features
- Discussions: Community Discussions
Made with β€οΈ for developers who want to focus on building, not configuring infrastructure.
Deploy with AI. Scale with AWS. Build without limits.