What cloudcostwise MCP server does
The cloudcostwise MCP server scans AWS accounts for potential waste using credentials already available to the local environment. It is intended for read-only analysis: the application refuses AWS operations outside Describe, List, Get, Search, and Lookup actions, subject to the permissions granted by the credentials.
Results identify resources and conditions that may increase AWS costs. The checks span compute, storage, databases, networking, observability, security posture, and pricing-related opportunities. Examples include orphaned EBS snapshots, empty or over-retained CloudWatch log groups, old ECR images, idle load balancers, incomplete S3 multipart uploads, unused Elastic IPs, oversized SageMaker endpoints, and possible RI or Savings Plans opportunities.
The scan runs on the user's machine. According to the project documentation, data is not sent to CloudWise, and the only network requests made by the scanner are AWS API calls in the user's account. When invoked through MCP, findings are passed to the connected assistant as tool output.
How it works
The package can run from a terminal or through an AI assistant that supports MCP. A scan can target the default region and the region in the active AWS profile, selected regions, or every enabled region. Account-level checks such as Cost Explorer and Route 53 run once in us-east-1.
The command can emit table, Markdown, or JSON output. Regional scans can run in parallel in separate processes; the documented default is four concurrent regions. Diagnostic output is available with verbose mode, and checks that cannot read a metric are reported as missing rather than treated as zero.
Cost Explorer access is optional. The --no-cost-explorer option avoids its API calls, which the documentation notes are billed at $0.01 per request and number about 13 for a scan. Disabling it skips RI and Savings Plans checks, while some extended-support costs use estimates instead.
Setup and configuration
Install the Python package with pipx install cloudcostwise, or run a scan with uvx cloudcostwise scan. The project requires Python 3.11 or newer. AWS authentication uses the standard credential chain unless a profile is selected, including environment variables, SSO, and an instance role.
Typical command options include --profile NAME, --regions LIST or --regions all, --format table|markdown|json, --parallel N, and --verbose. JSON output can be redirected to a file for later processing.
For MCP use, the README identifies Claude Code and Codex as supported assistant clients and describes the package as usable from an AI assistant or another MCP client. The provided material does not specify an MCP configuration block or additional server-specific environment variables.
Tools and capabilities
The cloudcostwise MCP server exposes the scanner's AWS waste analysis to an MCP-compatible assistant. Its documented coverage includes EC2, Lambda, SageMaker, WorkSpaces, Lightsail, EBS, S3, EFS, ECR, RDS, DynamoDB, ElastiCache, Elastic IPs, NAT gateways, load balancers, VPC endpoints, DNS records, CloudWatch logs and dashboards, security posture, RI and Savings Plans opportunities, and Compute Optimizer.
The checks include both resource cleanup findings and configuration or purchasing suggestions. Findings can be requested across multiple regions and returned in structured JSON, which is useful when an agent needs to inspect or summarize scan results.
Limitations and notes
The scanner cannot change AWS resources. Its read-only guard does not expand the permissions granted to the selected AWS identity, so missing permissions or unavailable metrics can limit results.
Cost Explorer calls can create AWS charges, and avoiding those calls removes related checks. The scan also does not represent the full hosted CloudWise product: the README states that the local package includes 20 of CloudWise's 46 service checks. AWS's own tools may cover some areas, including idle EC2, RDS, and NAT gateway analysis, rightsizing, and Savings Plans. The documentation recommends using those tools alongside this scanner where applicable.