Describe AWS infra in plain English and get an official, shareable AWS Pricing Calculator link with real costs — as an MCP server, CLI, and REST API.
Project description
AWS Pricing Calculator — Estimate Generator
Describe your AWS setup in plain English → get an official AWS Pricing Calculator link with real costs already filled in. No AWS account, no logins, no JSON.
$ aws-calc --prompt "2 t3.large EC2 with 50GB, RDS MySQL db.m5.large 100GB, 500GB S3, an ALB"
✅ Monthly cost: $312.40 USD
🔗 https://calculator.aws/#/estimate?id=8422dc22a2849dbf798ab405385a7e5f32fcb055
Use it from the command line, inside Claude / Cursor / any AI IDE (it's an MCP server), or as a small REST API. One install does all three.
Install
pipx install aws-calculator-mcp # recommended
# or: pip install aws-calculator-mcp
That's all. The first time you make an estimate it downloads a small browser engine once (~150 MB) to read live prices — you don't install anything else.
(On Ubuntu/Debian, if pip says "externally managed", use pipx or add
--break-system-packages.)
3 ways to use it
1) Plain English (easiest)
aws-calc --prompt "1 t4g.medium server with 50GB and daily snapshot, plus a 100GB S3 bucket"
It prints exactly what it understood, then the link:
Understood from your prompt:
• ec2 (instances=1, instance_type=t4g.medium, storage_gb=50,
snapshot_frequency=daily, snapshot_changed_gb=10)
• s3 (storage_gb=100)
Monthly cost: $46.41 USD
🔗 https://calculator.aws/#/estimate?id=...
- Add
--groupto organise by category (Compute, Database, Network…). - Add
--region ap-south-1(Mumbai) etc. Default isus-east-1. - Typos are okay (
lamda,buckit,dynmodball work).
2) Interactive (it asks you)
aws-calc -i
Estimate name [My Estimate]: Prod
AWS region [us-east-1]: ap-south-1
Group services by category? (y/n) [y]: y
Describe your infrastructure: 2 m5.large EC2, RDS MySQL db.m5.large 100GB, an ALB
→ 🔗 https://calculator.aws/#/estimate?id=...
3) Inside Claude / Cursor / any MCP client
Add this to your MCP config (e.g. Claude Desktop claude_desktop_config.json,
or Claude Code / Cursor settings):
{
"mcpServers": {
"aws-calculator": { "command": "aws-calc-mcp" }
}
}
Restart the app, then just chat:
"I'm building a small website with ~10k visitors. Suggest a budget AWS setup and create a pricing link."
The assistant designs the stack and calls the tool — you get the official link back.
Tip: if the tool doesn't show up, the command isn't on PATH. Use the full path instead, e.g.
"command": "/home/you/.local/bin/aws-calc-mcp"(find it withwhich aws-calc-mcp).
What you can put in an estimate
~50 services. Just name them; sizes/counts are optional (sensible defaults apply):
| Type | Examples |
|---|---|
| Compute | EC2, Lambda, Fargate, EKS, Lightsail |
| Storage | S3, EBS, EFS, ECR |
| Database | RDS (MySQL/PostgreSQL/Oracle/SQL Server/MariaDB), Aurora, DynamoDB, Redshift, OpenSearch, ElastiCache |
| Network | CloudFront, Route 53, API Gateway, ALB/NLB, VPC, NAT Gateway, Transit Gateway, Site-to-Site VPN, Network Firewall, PrivateLink |
| Security | WAF, GuardDuty, KMS, Cognito, Inspector, Security Hub |
| Other | CloudWatch, CloudTrail, Config, SQS, SNS, SES, Kinesis, Bedrock, AWS Backup, Disaster Recovery (EDR), CodeBuild |
Handy things you can say:
- Instance type: "t4g.medium", "db.m5.large", "cache.r6g.large"
- Storage / transfer: "50GB storage", "1TB data transfer"
- Requests: "2M requests", "10k messages per day"
- Snapshots: "daily snapshot of 20GB" (also weekly / monthly)
- Savings: "reserved 3 year", "savings plan 1 year"
- Auto-scaling / part-time: "runs 5 hours per day"
Real examples (live links)
Every link below was generated by the prompt next to it — click to open the real AWS estimate. From a one-word-vague idea to a full grouped architecture:
| What you type | Cost | Estimate link |
|---|---|---|
| "a small website with a database and a 100GB bucket" (vague) | ~$146/mo | open |
| "cheapest setup: 1 t4g.small server with 20GB for a personal blog" | ~$14/mo | open |
| "1 t4g.medium server 50GB with daily snapshot, plus a 100GB S3 bucket" | ~$41/mo | open |
"3 t3.large EC2 with 50GB, RDS MySQL db.m5.large 100GB multi-az, 500GB S3, an ALB, CloudFront 1TB" --group |
~$641/mo | open |
"Lambda with 10M requests, DynamoDB, API Gateway, 200GB S3" --group |
~$29/mo | open |
"4 m5.xlarge EC2, Aurora MySQL db.r6g.large 2 nodes, Redis cache.r6g.large, CloudFront 2TB, WAF, GuardDuty, CloudTrail" --group |
~$961/mo | open |
Use it with other AI tools
It's a standard MCP server, so any MCP-capable assistant can call it. The config
block is the same everywhere — {"command": "aws-calc-mcp"}:
| Tool | How to add it |
|---|---|
| Claude Desktop | Settings → Developer → Edit Config → add the mcpServers block → restart |
| Claude Code | claude mcp add aws-calculator -- aws-calc-mcp (or a project .mcp.json) |
| Cursor | Settings → MCP → Add server → command aws-calc-mcp |
| Windsurf / Continue (VS Code) | add the same mcpServers block to their MCP settings |
| ChatGPT (Custom GPT) | run aws-calc-api, then import http://your-host:8080/openapi.json as an Action |
| n8n / Zapier / Make | HTTP request node → POST /v1/estimate with {"prompt": "..."} |
| LangChain / LlamaIndex / any agent | call the REST endpoint, or shell out to the aws-calc CLI |
Once added, just ask the assistant in plain language:
"Design a budget AWS setup for a 10k-user app and create a pricing link."
It picks the services and calls the tool — you get the official link back.
Optional: run it as a REST API
Only if you want an HTTP endpoint (e.g. for ChatGPT actions or automation):
pip install "aws-calculator-mcp[api]"
aws-calc-api # http://localhost:8080
curl -X POST http://localhost:8080/v1/estimate -H "Content-Type: application/json" \
-d '{"prompt": "2 m5.large EC2, RDS MySQL db.m5.large 100GB, 500GB S3", "group": true}'
Docs at /docs. For ChatGPT, import /openapi.json as a Custom GPT Action.
Good to know
- Costs come from AWS itself — the tool fills the official calculator and reads the real numbers, so they match calculator.aws exactly.
- Friendly errors — unknown service → "did you mean…?"; it also tells you if it skipped a part it didn't understand.
- A few services may show $0 until you tweak them on the page (AWS Backup, Transfer Family, EC2 standard Reserved — use Savings Plans instead).
- The natural-language reader is a helper; an AI client (Claude/ChatGPT) handles messy descriptions even better.
Changelog
- 1.3.0 — EBS snapshots (daily/weekly/monthly); simpler README + real example links; AI-tool integration guide.
- 1.2.x — plain-English prompts, interactive mode, auto-grouping, self-contained baking (auto-installs the browser engine), multi-service phrases, friendly errors, typo tolerance.
- 1.0.x — initial release: MCP server + CLI + REST API, ~50 AWS services, real baked-in costs.
Issues & ideas: github.com/vireshsolanki/aws-calculator-mcp · MIT licensed · not affiliated with AWS (uses the public calculator.aws endpoints).
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file aws_calculator_mcp-1.3.0.tar.gz.
File metadata
- Download URL: aws_calculator_mcp-1.3.0.tar.gz
- Upload date:
- Size: 45.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d59405ec2d5cdbafeb64ea201c398879aeab11a64f9f7b69a718b63f4fcaeccf
|
|
| MD5 |
9123027ee2a8ca1992026b0884a6e6c2
|
|
| BLAKE2b-256 |
805fabb9cf36ee5dfb4b3b51834d56e34634e8782e915eca9c53939e0f794af6
|
File details
Details for the file aws_calculator_mcp-1.3.0-py3-none-any.whl.
File metadata
- Download URL: aws_calculator_mcp-1.3.0-py3-none-any.whl
- Upload date:
- Size: 44.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8776ad70af5d363b365616ed740d42ff1c8bfc18730c432d75b11e351cfe283c
|
|
| MD5 |
5981019489e9b13fd07693b464eb49ca
|
|
| BLAKE2b-256 |
f4f16b957991a54aad20d6816670c9c02b5b474b0c22fba1cf2d5d6f95393f03
|