cloudcostwise
Find AWS waste from your terminal or your AI assistant. cloudcostwise runs CloudWise's open waste
checks on your own machine, with your own read-only AWS credentials.
- Nothing leaves your machine. The only network calls are AWS API calls in your account. No signup, no IAM role for a third party, no telemetry.
- It cannot change anything. Every AWS call goes through a guard that
refuses any operation that isn't a
Describe,List,Get,SearchorLookup, 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.
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:
| Option | Meaning |
|---|---|
--profile NAME |
AWS profile; otherwise the standard credential chain (env vars, SSO, instance role) |
--regions LIST |
Comma-separated regions, or all for every enabled region. Account-level checks (Cost Explorer, Route 53) run once, in us-east-1 |
--format table|markdown|json |
Output format |
--no-cost-explorer |
Make no Cost Explorer call. AWS bills those at $0.01 per request and a scan makes about 13. Skips the RI/Savings Plans checks; extended-support surcharges fall back to estimates |
--verbose |
Show data warnings (checks that could not read a metric report it as missing, never as zero) |
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?"
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.
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?src=cli.
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.
Metadata
Release files for cloudcostwise 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| cloudcostwise-0.1.0.tar.gz | 425.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cloudcostwise-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 868.3 kB
Release files / cloudcostwise-0.1.0.tar.gz
| Download URL | cloudcostwise-0.1.0.tar.gz |
|---|---|
| Size | 425.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
14cdb0bc8cf79d46c25544d330ee0391d69bc4c0aefb0e7f54e86637ed8fcb64
|
|
BLAKE2b-256 checksum How to use checksums |
87ca1f5c3648032d3e8c792d132fc84daf04f6975a6a76054622b98dfce703b0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 4, 2026.
Transparency logRelease files / cloudcostwise-0.1.0-py3-none-any.whl
| Download URL | cloudcostwise-0.1.0-py3-none-any.whl |
|---|---|
| Size | 443.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
29f17113e1869d13d52f72dd79d152c3c61a48887d47a71535539d9f5770a1f4
|
|
BLAKE2b-256 checksum How to use checksums |
65468e06a78a66b189977f0632e662bf8df3d102878ba470e9eae237ecf11bd5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 4, 2026.
Transparency log