mcpField
C
cloudcostwise

cloudcostwise

Local
cloudcostwise.ioCloud & Infra1Updated 2d ago

About cloudcostwise

cloudcostwise is a local CLI and MCP server for finding potential AWS waste using read-only credentials. It runs checks on the user’s machine and sends AWS API requests only to the user’s account.

Key features

  1. 01Read-only AWS waste scans
  2. 02Checks across 20 AWS services
  3. 03Scans selected or all regions
  4. 04Table, Markdown, and JSON output
  5. 05Finding explanations and fix guidance

Use cases

  1. 01Review AWS resources for avoidable monthly costs
  2. 02Scan multiple AWS regions for waste
  3. 03Send findings to an MCP-connected assistant

MCP support

The `cloudcostwise mcp` command runs the scanner as a stdio MCP server. It exposes read-only scan, finding-list, explanation, and fix-guidance tools; suggested fixes are returned as text and are not executed.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"cloudwise-app-cloudcostwise": {
"command": "uvx",
"args": [
"cloudcostwise"
],
"env": {
"AWS_PROFILE": "<AWS_PROFILE>"
}
}
}
}
Run commanduvx cloudcostwise
Environment variables to set
AWS_PROFILEAWS profile to scan with (read-only access is enough). Defaults to the standard credential chain.

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
pypicloudcostwise0.1.15

Tools

4

Saved tool list · updated 1d ago

ParameterTypeRequiredDescription
profileanyNo
regionsanyNo
include_cost_explorerbooleanNo

Details

From the project README

cloudcostwise

PyPI Downloads Python 3.11+ MCP server AWS access: read-only Telemetry: none License: FSL-1.1-ALv2

Find AWS waste from your terminal or your AI assistant. cloudcostwise runs CloudWise's free waste checks on your own machine, with your own read-only AWS credentials.

  • Nothing is sent to CloudWise. The only network calls are AWS API calls in your account. No signup, no IAM role for a third party, no telemetry. Used through an AI assistant (MCP), the findings go to that assistant like any tool output.
  • It cannot change anything. Every AWS call goes through a guard that refuses any operation that isn't a Describe, List, Get, Search or Lookup, whatever your credentials allow.
  • 20 of CloudWise's 46 service checks: EC2, Lambda, SageMaker, WorkSpaces, Lightsail, EBS, S3, EFS, ECR, RDS, DynamoDB, ElastiCache, Elastic IPs, NAT gateways and load balancers, VPC endpoints, dangling DNS records, CloudWatch logs and dashboards, security posture, RI/Savings Plans opportunities, and Compute Optimizer.

cloudcostwise scanning our test account: findings ranked by monthly cost

Install and run

pipx install cloudcostwise          # or: uvx cloudcostwise scan
cloudcostwise scan                      # us-east-1 plus your profile's region
cloudcostwise scan --profile prod --regions all
cloudcostwise scan --format json > waste.json

Options:

OptionMeaning
--profile NAMEAWS profile; otherwise the standard credential chain (env vars, SSO, instance role)
--regions LISTComma-separated regions, or all for every enabled region. Account-level checks (Cost Explorer, Route 53) run once, in us-east-1
--format table|markdown|jsonOutput format
--no-cost-explorerMake no Cost Explorer call. AWS bills those at $0.01 per request and a scan makes about 19. Skips the RI/Savings Plans checks; extended-support surcharges fall back to estimates
--parallel NRegions scanned at once, each in its own process (default 4; --regions all takes ~2–3 min instead of ~10)
--verboseShow data warnings (checks that could not read a metric report it as missing, never as zero)

What AWS's free tools don't flag

This tool has 50 proven checks (L2 or above in VALIDATION.md: each fired on a real AWS resource built to trigger it and stayed silent on a healthy twin). 18 of them flag waste that none of AWS's own tools flag, and 9 more go further than the closest AWS check, going by AWS's lists of what its tools cover (Trusted Advisor, Cost Optimization Hub, Compute Optimizer; checked 2026-10-11).

CheckWhat it findsClosest AWS check
ami_orphaned_snapshotEBS snapshots left behind by an AMI that was deregisteredNone
classic_lb_migrationClassic Load Balancers that would cost less as an ALB or NLBNone
elasticache_data_tiering_opportunityRedis OSS or Valkey replication groups on r6g/r7g nodes that would cost less on data-tiering r6gd nodesNone
elasticache_engine_migrationRedis OSS or Memcached clusters that would cost about 20% less on ValkeyNone
elasticache_extended_support_costElastiCache engine versions billed the Extended Support surchargeNone
idle_lightsailStopped or idle Lightsail instances that still bill their bundle priceNone
lambda_arm64_migrationLambda functions that would cost about 20% less on arm64 (Graviton)None
lambda_provisioned_concurrency_idleLambda provisioned concurrency that is paid for and barely usedNone
lightsail_idle_load_balancerIdle Lightsail load balancersNone
lightsail_unattached_diskLightsail disks attached to nothingNone
lightsail_unattached_static_ipLightsail static IPs attached to nothingNone
low_traffic_albApplication Load Balancers carrying almost no trafficNone
multiple_eips_per_instanceExtra Elastic IPs on one instance, each billed as a public IPv4 addressNone
no_lifecycle_efsLarge EFS file systems with no Infrequent Access or Archive tieringNone
orphaned_ebs_snapshotEBS snapshots whose source volume no longer existsNone
previous_gen_sagemaker_instanceSageMaker instances on a previous generation with a cheaper current oneNone
s3_empty_bucketEmpty S3 buckets left behind for 30+ daysNone
stopped_sagemaker_notebook_storageStopped SageMaker notebook instances whose ML storage volume keeps billingNone
excessive_retention_log_groupLog groups keeping a year or more of data they are billed to storeAmazon CloudWatch Log Group Retention Period: Trusted Advisor checks log group retention but flags retention shorter than a minimum (365 days by default) for compliance, so long, costly retention passes it.
idle_efsEFS file systems with no mount targets: nothing can read them, and they still billAmazon EFS no mount target redundancy: Trusted Advisor checks EFS mount targets for multi-AZ redundancy, not file systems with no mount targets at all, and EFS is not among the resources Compute Optimizer or Cost Optimization Hub cover.
idle_load_balancerIdle Application and Network Load BalancersIdle Load Balancers: Trusted Advisor flags idle Classic Load Balancers only (Business Support+ or higher); its documentation says Application and Network Load Balancers are not included.
incomplete_multipartIncomplete S3 multipart uploads whose stored parts keep billingAmazon S3 Incomplete Multipart Upload Abort Configuration: Trusted Advisor flags buckets whose lifecycle configuration lacks a rule to abort incomplete multipart uploads after 7 days; it does not find the incomplete uploads that are already stored and billing.
lambda_excessive_timeoutLambda timeouts set far above what the function needsAWS Lambda functions with excessive timeouts: Trusted Advisor flags functions where more than 10% of invocations time out; it does not flag a configured timeout set far above the function's real duration.
no_retention_log_groupLog groups set to never expire, so they grow every monthAmazon CloudWatch Log Group Retention Period: Trusted Advisor checks log group retention but flags retention below a minimum, so a log group set to never expire passes it.
old_ecr_imagesOld ECR images still billed for storageAmazon ECR Repository without lifecycle policy configured: Trusted Advisor checks that an ECR repository has a lifecycle policy; it does not flag the old images already stored.
oversized_sagemaker_endpointSageMaker endpoints serving traffic on bigger instances than they needIdle recommendation for SageMaker endpoints: Compute Optimizer flags SageMaker endpoints with zero invocations over 14 days but gives no rightsizing for endpoints that serve traffic on oversized instances.
untagged_ecr_imagesUntagged ECR images still billed for storageAmazon ECR Repository without lifecycle policy configured: Trusted Advisor checks that an ECR repository has a lifecycle policy; it does not flag the untagged images already stored.

For idle EC2, RDS and NAT gateways, rightsizing and Savings Plans, AWS's tools cover the same ground: use them too. Trusted Advisor's cost checks need a Business, Enterprise or Unified Operations support plan; Cost Optimization Hub and Compute Optimizer are free.

The hosted CloudWise product adds 22 more proven checks that none of AWS's tools flag, across AWS Backup, AppSync, CloudFront, Elastic Beanstalk, FSx, Glue, KMS, Kinesis, Route 53, Step Functions.

Excerpt of a real scan of our test account (cloudcostwise 0.1.15, us-east-1, 2026-10-27). The resources there are deliberately tiny, which is why the amounts are cents:

no_retention_log_group  x6  $0.06/mo
    us-east-1       /aws/lambda/cwfx-clo464-docdb-connect                               $0.01/mo
    us-east-1       /aws/lambda/cwfx-ec-hold-driver                                     $0.01/mo
    us-east-1       /aws/sagemaker/Endpoints/cwfx-w8b-ep-big                            $0.01/mo
    us-east-1       /aws/sagemaker/Endpoints/cwfx-w8b-ep-big-control                    $0.01/mo
    us-east-1       /aws/sagemaker/Endpoints/cwfx-w8b-ep-idle                           $0.01/mo
    us-east-1       /aws/sagemaker/Endpoints/cwfx-w8b-ep-idle-control                   $0.01/mo
old_ecr_images  x1  $0.06/mo
    us-east-1       cwfx-old-ecr-images                                                 $0.06/mo
untagged_ecr_images  x1  $0.02/mo
    us-east-1       cwfx-untagged-ecr-images                                            $0.02/mo
idle_efs  x1  $0.01/mo
    us-east-1       fs-090bfb32bd49de8b7                                                $0.01/mo

Use it from Claude Code, Codex or any MCP client

cloudcostwise mcp runs the same scan as an MCP server (stdio). Then ask your assistant: "Where am I wasting money on AWS?"

The plugin and registry entries start the server with uvx, so install uv first (brew install uv or pipx install uv).

Claude Code, as a plugin (asks for your AWS profile):

/plugin marketplace add cloudwise-app/cloudcostwise
/plugin install cloudcostwise@cloudcostwise

Claude Code, as a plain MCP server:

claude mcp add cloudcostwise -- uvx cloudcostwise mcp
# a specific profile:
claude mcp add cloudcostwise -e AWS_PROFILE=prod -- uvx cloudcostwise mcp

Codex (~/.codex/config.toml):

[mcp_servers.cloudcostwise]
command = "uvx"
args = ["cloudcostwise", "mcp"]
env = { AWS_PROFILE = "prod" }

Tools, all read-only: scan, list_findings, explain_finding, fix_guidance. fix_guidance returns the steps and AWS CLI command as text for you to review; nothing is ever executed. The assistant is told about the Cost Explorer cost before it scans, and include_cost_explorer=false skips it.

Permissions

ReadOnlyAccess (AWS managed) is enough. The minimal policy the checks use is in docs/iam-policy.json. It was derived from a scan of an account with most supported resource types; if a check lacks a permission, the scan says so in its data warnings instead of failing.

How the numbers are counted

Each finding shows an estimated monthly saving. Advisory waste types, ones CloudWise could not validate against a real AWS resource, are listed but never added to the total.

For consultancies and MSPs

The partner licence runs on your own machine like this tool: the other 26 service checks, one scan across every client account, and a client report under your firm's name. One price per firm, unlimited client accounts: https://cloudcostwise.io/partners?utm_source=cloudcostwise&utm_medium=readme.

What the hosted product adds

The other 26 service checks (Glue, ECS, Step Functions, Backup, CloudFront, commitments and more), history and trends, alerts, and safe automated fixes: https://cloudcostwise.io/connect?utm_source=cloudcostwise&utm_medium=cli.

Tell us where it's wrong

A false positive, a miss, or a dollar figure that looks off: post it in issue #1, or email [email protected] if you'd rather not post in public. The waste types and counts from your scan are enough. Leave out account IDs and resource names. Every report gets a reply, and a confirmed false positive gets fixed in the next release.

License

FSL-1.1-ALv2. Each release becomes Apache-2.0 two years after it ships.

How we know it's right

See VALIDATION.md: the validation level of every waste type this tool reports, from L0 (unit-tested) to L2 (fired on a real AWS resource and stayed silent on a healthy twin) and beyond.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.