Multi-cloud cost, inventory and waste analysis over MCP: AWS, GCP, Cloudflare and OVH.
MCPpedia last refreshed this data
io.github.munhq/cloud-tools is an MCP server that multi-cloud cost, inventory and waste analysis over MCP: AWS, GCP, Cloudflare and OVH. Its tool list has not been published yet over stdio, sse and http, requires no API key, and scores 87/100 on MCPpedia's security, maintenance and efficiency rubric.
Config is the same across clients - only the file and path differ.
{
"mcpServers": {
"io-github-munhq-cloud-tools": {
"args": [
"-y",
"@munhq/cloud-tools"
],
"command": "npx"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
Multi-cloud cost, inventory and waste analysis over MCP: AWS, GCP, Cloudflare and OVH.
Run this in your terminal to verify the server starts. Then let us know if it worked - your result helps other developers.
npx -y '@munhq/cloud-tools' 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
Five weighted categories - click any category to see the underlying evidence.
No known CVEs.
Checked @munhq/cloud-tools against OSV.dev.
Click any tool to inspect its schema.
Be the first to review
Have you used this server?
Share your experience - it helps other developers decide.
Sign in to write a review.
Others in cloud
Cloud-powered AI platform with multi-agent swarms, sandboxes, and workflow automation
Gives AI development tools Firebase-specific capabilities and expertise.
Evidence-grounded agent memory with mandatory provenance, on local SQLite or Cloudflare D1
Draw cloud architecture diagrams with official AWS, Azure and GCP icons from a prompt or Terraform.
MCP Security Weekly
Get CVE alerts and security updates for io.github.munhq/cloud-tools and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
Multi-cloud cost, inventory and waste analysis in Rust — exposed as an MCP server so an AI agent can query spend and waste directly, and as an HTTP API for everything else.
It reports spend and waste: idle instances, oversized nodes, previous-generation hardware, unattached resources, and commitments you are not using.
Every tool takes cloud and nothing else it does not need. Credentials never
appear in a tool call — the server reads them from its own environment, so the
agent never handles a secret and never needs to be told one.
{ "cloud": "aws" }
{ "cloud": "gcp" }
Start with check_access. It takes no arguments, contacts no cloud, and reports
which clouds this server can reach and what is missing for the ones it cannot.
| Tool | AWS | GCP | Cloudflare | OVH |
|---|---|---|---|---|
check_access | reports configuration for all four | |||
get_costs | yes | needs a billing table | yes | yes |
compare_costs | yes | needs a billing table | — | — |
get_inventory | — | yes | yes | yes |
get_waste | yes | yes | — | — |
get_commitments | yes | yes | — | — |
get_recommendations | — | yes | — | — |
get_cross_cloud_summary | every cloud the server can reach |
A dash is not a silent empty result. The tool answers, for example,
waste analysis is not implemented for ovh; supported: aws, gcp, so an agent
cannot read a gap as a clean bill.
get_waste and get_inventory return a coverage field and an errors list.
A zero total means one of two entirely different things:
| coverage | meaning |
|---|---|
complete | Nothing is wasted. |
PARTIAL — N API call(s) failed… | Part of the account could not be read. |
A partial result is not a clean bill of health.
Credentials are read from the environment of the machine running cloud-tools. Nothing is stored, and every call is read-only.
Resolved in this order, first match winning:
AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY~/.aws/credentials, profile from AWS_PROFILE, otherwise [default]An SSO-only profile is not read directly. Export it first:
aws configure export-credentials --profile <name> --format env.
To scan a different account, pass a role to assume. A role ARN is not a secret, so it stays an argument:
{ "cloud": "aws", "target": { "role_arn": "arn:aws:iam::…:role/ReadOnly" } }
CLOUD_TOOLS_AWS_ROLE_ARN and CLOUD_TOOLS_AWS_EXTERNAL_ID set a default for
that, if every call should assume the same role.
get_waste reads EC2 instances, volumes, snapshots, AMIs, Elastic IPs, key
pairs and reserved instances; RDS; S3; Lambda; DynamoDB; ECS; ElastiCache; load
balancers; NAT gateways; CloudWatch log groups with no retention; and Compute
Optimizer. Idle and oversized come from CloudWatch CPU series, so they are
measured rather than guessed.
Application Default Credentials