# Flightcontrol MCP

> Flightcontrol MCP lets your AI agent manage AWS infrastructure deployments from natural conversation. You can list projects, create environments, scale services, and trigger zero-downtime rollouts—all without leaving your IDE or chat window. It gives your agent the power to orchestrate complex cloud resources directly.

## Overview
- **Category:** developer-tools
- **Price:** Free
- **Tags:** aws, paas, deployment-automation, infrastructure-as-code, cloud-management

## Description

Look, managing AWS resources used to mean jumping between the console, a dozen command-line tabs, and your local Git repository. Now, you can tell your AI agent what needs doing and watch it handle the complexity. This MCP lets you treat infrastructure management like writing code: declarative and conversational. You ask for an environment update, and the agent executes the required steps—from creating resource connections to scaling services and initiating a full deployment cycle. It keeps everything running in one place. By connecting this capability through Vinkius, your preferred AI client gets access to this entire catalog of cloud actions, letting you focus on development while the system handles the heavy lifting.

## Tools

### create_aws_account_connection
Establishes a secure connection to a specific AWS account.

### create_cloudfront_invalidation
Forces a cache flush on CloudFront for content updates.

### create_deployment
Initiates a full service deployment based on defined repository rules.

### create_domain_group
Groups multiple domains together for certificate management.

### create_environment
Sets up a new, isolated operational environment within an existing project.

### create_environment_variables
Defines and sets necessary configuration variables for a service or environment.

### create_job_execution
Runs a specific, one-time background job using the scheduler service.

### create_project
Automates the setup and creation of an entirely new development project structure.

### create_service_variables
Sets variables specific to a service, separate from general environment settings.

### edit_environment
Modifies the configuration of an existing staging or testing environment.

### edit_preview_environment
Changes specific settings for a project's preview branch environment.

### get_aws_account_details
Retrieves general information and credentials for connected AWS accounts.

### get_cloudfront_invalidation_status
Checks the current status of a CloudFront cache invalidation request.

### get_deployment_status
Fetches the current state and progress details of any running deployment job.

### get_domain_details
Retrieves specific information about a single domain certificate.

### get_domains_from_group
Lists all domains associated with a defined group of certificates.

### get_job_execution_status
Checks the final status and logs for a completed one-off job execution.

### get_service_scaling
Gets current metrics and limits related to how many instances a service can run.

### get_service
Retrieves detailed metadata about a specific service within a project.

### list_projects
Lists all development projects that the team currently owns.

### list_services
Retrieves a paginated list of all available services across your accounts.

### swap_blue_green
Switches the live traffic from an old environment (blue) to a newly updated one (green).

### trigger_deploy_hook
Starts deployments using a predefined secret URL endpoint.

### update_service_scaling
Adjusts the desired number of running instances for a service manually.

## Prompt Examples

**Prompt:** 
```
List all our Flightcontrol projects.
```

**Response:** 
```
I've retrieved your projects. You have 3 active projects: 'Main-API' (ID: proj_123), 'Frontend-App' (ID: proj_456), and 'Worker-Service' (ID: proj_789). Which one would you like to inspect?
```

**Prompt:** 
```
Show me the details for service ID 'srv-abc12345'.
```

**Response:** 
```
Fetching service details... Service 'srv-abc12345' is a Web Service running in the 'production' environment. It is currently healthy and deployed on AWS us-east-1.
```

**Prompt:** 
```
Create a new environment named 'staging' for project 'proj_123' in us-west-2.
```

**Response:** 
```
Starting environment creation... I've initiated the creation of the 'staging' environment for project 'proj_123' in the us-west-2 region. I'll let you know once the configuration is ready.
```

## Capabilities

### Manage Projects and Environments
Automatically create new AWS projects or set up isolated staging environments within existing ones.

### Scale Services On Demand
Change the number of running service instances instantly, adjusting capacity to meet current demand.

### Perform Zero-Downtime Rollouts
Execute controlled swaps between a blue and green environment to update services without any service interruption.

### Track Deployment Statuses
Get real-time updates on whether a deployment succeeded or failed, eliminating manual status checks.

### Configure Core Infrastructure
Establish necessary AWS account connections and manage environment variables required for the services to run.

## Use Cases

### The Staging Environment needs an update.
A developer finishes a feature branch. Instead of manually creating the staging environment, they ask their agent to run `create_environment` and populate it with variables using `create_service_variables`. The agent handles the setup, making sure the new code runs in isolation.

### The service is getting slow under load.
An ops engineer notices performance dips. They ask their agent to check scaling limits via `get_service_scaling`, see that capacity is low, and then run `update_service_scaling` to provision more instances immediately.

### We need a zero-downtime release.
The team pushes a major update. Instead of risking downtime by updating the live stack, they instruct their agent to first deploy to the green environment via `create_deployment`, and then execute the safe switch using `swap_blue_green`.

### We are setting up a brand new microservice.
An infra lead needs to spin up an entire service. They first run `create_project` to define the boundary, then use `get_aws_account_details` to ensure the correct credentials are attached before proceeding.

## Benefits

- Zero-downtime updates become simple. Instead of complex load balancer adjustments, you just tell the agent to run `swap_blue_green`, and it handles routing traffic instantly.
- You avoid losing context when debugging. If a deployment fails, running `get_deployment_status` gives you the full details right in your chat window, letting you fix issues immediately.
- Setting up new services is faster than ever. Use `create_project` and then define necessary variables with `create_environment_variables` to get fully configured environments quickly.
- Scaling capacity requires no manual effort. If traffic spikes, running `update_service_scaling` lets you adjust service instances instantly without touching the console.
- Auditing becomes a single query. Use `list_projects` or `get_aws_account_details` to get an overview of every resource and connection point across your entire cloud footprint.

## How It Works

The bottom line is: it takes complex cloud orchestration tasks and turns them into simple chat commands.

1. First, subscribe your AI agent to this MCP and provide the Flightcontrol API Key.
2. Next, ask your agent to perform a high-level task, like 'Create a staging environment for Project X.'
3. The agent translates that request into a sequence of calls, manages dependencies, and reports back the final state.

## Frequently Asked Questions

**How do I use create_project with Flightcontrol MCP?**
You ask your agent to 'Create a new project named X.' The tool automates the entire setup, giving you an isolated workspace ready for development.

**What is the difference between create_environment and edit_environment using Flightcontrol MCP?**
Use `create_environment` to set up a completely new staging area. Use `edit_environment` when you need to modify settings on an environment that already exists.

**Can I check deployment status with get_deployment_status using Flightcontrol MCP?**
Yes, running `get_deployment_status` tells you exactly where a deployment is in the process—whether it's pending, deploying resources, or if it failed.

**How does swap_blue_green work with Flightcontrol MCP?**
This tool safely switches live traffic from an old version (the blue environment) to a new one (the green environment), ensuring zero downtime during the rollout.

**How do I check or establish AWS credentials using get_aws_account_details and create_aws_account_connection?**
The MCP handles connection setup by first creating an account link via `create_aws_account_connection`. Then, you use `get_aws_account_details` to confirm the connectivity status and verify your region parameters. This ensures your agent has the necessary permissions before any deployment actions run.

**What information does get_service_scaling provide regarding service capacity?**
`get_service_scaling` retrieves the current scaling metrics for a specific service instance. It details minimum and maximum allowed replicas, helping you determine if `update_service_scaling` needs to be run before your deployment.

**If an automated job fails, how do I check its status with get_job_execution_status?**
`get_job_execution_status` provides a direct report on background jobs. It returns the current state—running, succeeded, or failed—and includes necessary logs to pinpoint exactly where the execution broke down.

**After deploying code, how do I clear cached assets using create_cloudfront_invalidation?**
Use `create_cloudfront_invalidation` immediately after a deployment. This tells Amazon CloudFront to discard old versions of your site's files and pull the latest content from your origin server.

**Can I see all my active projects and their IDs?**
Yes! Use the `list_projects` tool to retrieve a complete list of projects owned by your team, including their unique identifiers and repository links.

**How do I check the configuration of a specific service?**
Simply provide the Service ID to the `get_service` tool. Your agent will fetch the full details, including type, status, and current environment mapping.

**Is it possible to scale my services using the AI?**
Yes, the `update_service_scaling` tool allows you to manually adjust the scaling parameters of your services directly through the conversation.