Skip to main content
Glama
outputs.tf7.57 kB
################################################################################ # Terraform Outputs for KYC MCP Server ################################################################################ output "instance_id" { description = "ID of the EC2 instance" value = aws_instance.kyc_mcp_server.id } output "instance_public_ip" { description = "Public IP address of the EC2 instance" value = var.use_elastic_ip ? aws_eip.kyc_mcp_server[0].public_ip : aws_instance.kyc_mcp_server.public_ip } output "instance_private_ip" { description = "Private IP address of the EC2 instance" value = aws_instance.kyc_mcp_server.private_ip } output "elastic_ip" { description = "Elastic IP address (if enabled)" value = var.use_elastic_ip ? aws_eip.kyc_mcp_server[0].public_ip : null } output "instance_public_dns" { description = "Public DNS name of the EC2 instance" value = aws_instance.kyc_mcp_server.public_dns } output "security_group_id" { description = "ID of the security group" value = aws_security_group.kyc_mcp_server.id } output "iam_role_name" { description = "Name of the IAM role" value = aws_iam_role.kyc_mcp_server.name } output "iam_role_arn" { description = "ARN of the IAM role" value = aws_iam_role.kyc_mcp_server.arn } output "instance_profile_name" { description = "Name of the instance profile" value = aws_iam_instance_profile.kyc_mcp_server.name } output "cloudwatch_log_group_name" { description = "Name of the CloudWatch log group" value = aws_cloudwatch_log_group.kyc_mcp_server.name } output "cloudwatch_log_group_arn" { description = "ARN of the CloudWatch log group" value = aws_cloudwatch_log_group.kyc_mcp_server.arn } output "backup_bucket_name" { description = "Name of the S3 backup bucket" value = var.enable_s3_backup && var.create_backup_bucket ? aws_s3_bucket.backups[0].id : var.backup_bucket_name } output "backup_bucket_arn" { description = "ARN of the S3 backup bucket" value = var.enable_s3_backup && var.create_backup_bucket ? aws_s3_bucket.backups[0].arn : null } output "vpc_id" { description = "ID of the VPC" value = var.create_vpc ? aws_vpc.main[0].id : var.existing_vpc_id } output "subnet_ids" { description = "IDs of the subnets" value = var.create_vpc ? aws_subnet.public[*].id : [var.existing_subnet_id] } output "key_pair_name" { description = "Name of the SSH key pair" value = var.create_key_pair ? aws_key_pair.deployer[0].key_name : var.existing_key_name } ################################################################################ # Connection Information ################################################################################ output "ssh_connection_command" { description = "SSH connection command" value = "ssh -i ~/.ssh/${var.create_key_pair ? aws_key_pair.deployer[0].key_name : var.existing_key_name}.pem ${var.os_type == "ubuntu" ? "ubuntu" : "ec2-user"}@${var.use_elastic_ip ? aws_eip.kyc_mcp_server[0].public_ip : aws_instance.kyc_mcp_server.public_ip}" } output "application_url" { description = "Application URL (HTTP)" value = "http://${var.use_elastic_ip ? aws_eip.kyc_mcp_server[0].public_ip : aws_instance.kyc_mcp_server.public_ip}" } output "application_url_https" { description = "Application URL (HTTPS)" value = "https://${var.use_elastic_ip ? aws_eip.kyc_mcp_server[0].public_ip : aws_instance.kyc_mcp_server.public_ip}" } output "metrics_url" { description = "Prometheus metrics URL" value = "http://${var.use_elastic_ip ? aws_eip.kyc_mcp_server[0].public_ip : aws_instance.kyc_mcp_server.public_ip}:9090/metrics" } ################################################################################ # Alarm Information ################################################################################ output "cpu_alarm_name" { description = "Name of the CPU utilization alarm" value = aws_cloudwatch_metric_alarm.cpu_utilization.alarm_name } output "memory_alarm_name" { description = "Name of the memory utilization alarm" value = aws_cloudwatch_metric_alarm.memory_utilization.alarm_name } output "disk_alarm_name" { description = "Name of the disk utilization alarm" value = aws_cloudwatch_metric_alarm.disk_utilization.alarm_name } output "status_check_alarm_name" { description = "Name of the status check alarm" value = aws_cloudwatch_metric_alarm.status_check_failed.alarm_name } ################################################################################ # Deployment Instructions ################################################################################ output "deployment_instructions" { description = "Next steps for deployment" value = <<-EOT ======================================== KYC MCP Server Infrastructure Created ======================================== Instance Details: - Instance ID: ${aws_instance.kyc_mcp_server.id} - Public IP: ${var.use_elastic_ip ? aws_eip.kyc_mcp_server[0].public_ip : aws_instance.kyc_mcp_server.public_ip} - Instance Type: ${var.instance_type} - OS: ${var.os_type} Next Steps: 1. Connect to the instance: ssh -i ~/.ssh/${var.create_key_pair ? aws_key_pair.deployer[0].key_name : var.existing_key_name}.pem ${var.os_type == "ubuntu" ? "ubuntu" : "ec2-user"}@${var.use_elastic_ip ? aws_eip.kyc_mcp_server[0].public_ip : aws_instance.kyc_mcp_server.public_ip} 2. Clone the repository: cd /opt sudo git clone <your-repo-url> kyc-mcp-server sudo chown -R $USER:$USER kyc-mcp-server 3. Configure environment: cd /opt/kyc-mcp-server cp .env.example .env nano .env # Edit with your credentials 4. Run setup script: chmod +x deploy/ec2-setup.sh ./deploy/ec2-setup.sh 5. Deploy application: chmod +x deploy/deploy.sh ./deploy/deploy.sh 6. Configure SSL (optional): sudo certbot --nginx -d your-domain.com Monitoring: - CloudWatch Logs: ${aws_cloudwatch_log_group.kyc_mcp_server.name} - Metrics: http://${var.use_elastic_ip ? aws_eip.kyc_mcp_server[0].public_ip : aws_instance.kyc_mcp_server.public_ip}:9090/metrics ======================================== EOT } ################################################################################ # Cost Estimation ################################################################################ output "estimated_monthly_cost" { description = "Estimated monthly cost (USD)" value = <<-EOT Estimated Monthly Costs: - EC2 Instance (${var.instance_type}): ~$${var.instance_type == "t3.micro" ? "7.50" : var.instance_type == "t3.small" ? "15.00" : var.instance_type == "t3.medium" ? "30.00" : var.instance_type == "t3.large" ? "60.00" : "120.00"} - EBS Storage (${var.root_volume_size}GB ${var.root_volume_type}): ~$${var.root_volume_size * (var.root_volume_type == "gp3" ? 0.08 : 0.10)} - Elastic IP: ~$3.60 (if not attached to running instance) - Data Transfer: ~$9.00 per 100GB - CloudWatch Logs: ~$0.50 per GB ingested - S3 Backups: ~$0.023 per GB stored Total Estimated: ~$${var.instance_type == "t3.micro" ? "20-30" : var.instance_type == "t3.small" ? "30-40" : var.instance_type == "t3.medium" ? "45-60" : var.instance_type == "t3.large" ? "75-90" : "135-150"}/month Note: Actual costs may vary based on usage patterns. EOT }

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/CTD-Techs/CTD-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server