npm package: @ktmcp-cli/awsbudgets
Description: Production-ready CLI for AWS Budgets Cost Management API - Kill The MCP
Author: KTMCP
Latest version: 1.0.0

> "Six months ago, everyone was talking about MCPs. And I was like, screw MCPs. Every MCP would be better as a CLI."
>
> — [Peter Steinberger](https://twitter.com/steipete), Founder of OpenClaw
> [Watch on YouTube (~2:39:00)](https://www.youtube.com/@lexfridman) | [Lex Fridman Podcast #491](https://lexfridman.com/peter-steinberger/)

# AWS Budgets CLI

Production-ready CLI for the AWS Budgets Cost Management API. Track spending, set alerts, and manage budget notifications from your terminal.

## Installation

```bash
npm install -g @ktmcp-cli/awsbudgets
```

## Configuration

```bash
awsbudgets config set --access-key-id YOUR_ACCESS_KEY_ID \
  --secret-access-key YOUR_SECRET_ACCESS_KEY \
  --account-id YOUR_AWS_ACCOUNT_ID
```

## Usage

### Config

```bash
# Set AWS credentials
awsbudgets config set --access-key-id <id> --secret-access-key <secret> --account-id <account>

# Get a config value
awsbudgets config get accountId

# List all config
awsbudgets config list
```

### Budgets

```bash
# List all budgets
awsbudgets budgets list

# Get budget details
awsbudgets budgets get my-monthly-budget

# Create a monthly cost budget
awsbudgets budgets create \
  --name "Monthly Production Costs" \
  --amount 1000 \
  --unit USD \
  --time-unit MONTHLY

# Create a daily usage budget
awsbudgets budgets create \
  --name "Daily EC2 Usage" \
  --amount 50 \
  --unit USD \
  --time-unit DAILY \
  --type USAGE

# Update budget limit
awsbudgets budgets update my-monthly-budget --amount 1500

# Delete a budget
awsbudgets budgets delete my-monthly-budget

# JSON output
awsbudgets budgets list --json
```

### Notifications

```bash
# List notifications for a budget
awsbudgets notifications list my-monthly-budget

# Create a notification at 80% threshold
awsbudgets notifications create my-monthly-budget \
  --type ACTUAL \
  --threshold 80 \
  --email alerts@company.com

# Create a forecasted spend notification
awsbudgets notifications create my-monthly-budget \
  --type FORECASTED \
  --threshold 100 \
  --email cfo@company.com

# Delete a notification
awsbudgets notifications delete my-monthly-budget \
  --type ACTUAL \
  --threshold 80
```

### Subscribers

```bash
# List subscribers for a notification
awsbudgets subscribers list my-monthly-budget \
  --type ACTUAL \
  --threshold 80

# Add a subscriber
awsbudgets subscribers create my-monthly-budget \
  --type ACTUAL \
  --threshold 80 \
  --email team@company.com

# Add SNS subscriber
awsbudgets subscribers create my-monthly-budget \
  --type ACTUAL \
  --threshold 90 \
  --email arn:aws:sns:us-east-1:123456789:MyBudgetTopic \
  --sub-type SNS

# Remove a subscriber
awsbudgets subscribers delete my-monthly-budget \
  --type ACTUAL \
  --threshold 80 \
  --email team@company.com
```

## Budget Types

- `COST` — Track spending in USD (default)
- `USAGE` — Track service usage (e.g. EC2 hours)
- `RI_UTILIZATION` — Reserved Instance utilization
- `RI_COVERAGE` — Reserved Instance coverage
- `SAVINGS_PLANS_UTILIZATION` — Savings Plans utilization
- `SAVINGS_PLANS_COVERAGE` — Savings Plans coverage

## Time Periods

- `DAILY` — Reset every day
- `MONTHLY` — Reset every month (most common)
- `QUARTERLY` — Reset every quarter
- `ANNUALLY` — Reset every year

## License

MIT