MCP ExplorerExplorer

Aws Pricing Mcp

@trilogy-groupon a year ago
8 MIT
FreeCommunity
AI Systems
An MCP server that exposes AWS EC2 pricing data with an option to search by CPU, RAM, networking

Overview

What is Aws Pricing Mcp

aws-pricing-mcp is an MCP server that provides real-time AWS EC2 pricing data, allowing users to query pricing based on specific parameters such as CPU, RAM, and networking.

Use cases

Use cases include finding the cheapest EC2 instance for specific requirements, comparing instance types based on CPU performance, and calculating discounts for long-term commitments.

How to use

To use aws-pricing-mcp, you can either run it using a Docker image or directly with Python. For Docker, use the provided mcp_config.json to configure the server. For Python, download the EC2 pricing data and run the server script.

Key features

Key features include the ability to query EC2 pricing with a single call, support for various instance specifications, and options for both Docker and Python usage.

Where to use

aws-pricing-mcp can be used in cloud computing environments, financial analysis, cost optimization, and any application requiring real-time AWS EC2 pricing information.

Content

AWS EC2 Pricing MCP Server

Docker Pulls smithery badge

The AWS EC2 Pricing MCP Server lets any LLM or automation script query real-time EC2 pricing with one call. Powered by a pre-parsed AWS pricing catalogue, it answers questions such as

What is the cheapest EC2 instance with 32GB RAM?

Which AMD instances have more than 3.5 Ghz CPUs?

What is the 3-yr All Upfront discount on r6g family in eu-west-1?

What is the cheapest instance to run Windows with SQL Server Enterprise?

Using Docker

Using a Docker hub image

Use this mcp_config.json for Docker hub image:

{
  "mcpServers": {
    "AWS EC2 Pricing MCP": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "-q",
        "--network",
        "none",
        "ai1st/aws-pricing-mcp"
      ]
    }
  }
}
  • The --rm flag removes the container when it exits.
  • The -i flag enables interactive mode for stdio communication.
  • The -q flag suppresses the docker messages about downloading the image.
  • The --network none totally disconnects the container from the network to guarantee no data exfiltration.

Using a local image

Build the image:

docker build -t aws-pricing-mcp . --build-arg BUILD_DATE=$(date +%Y-%m-%d)

This will download the pricing data and build the image. The BUILD_DATE parameter ensures the fresh pricing data is downloaded during build.

Sample mcp_config.json for a locally built image:

{
  "mcpServers": {
    "AWS EC2 Pricing MCP": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "--network",
        "none",
        "aws-pricing-mcp"
      ]
    }
  }
}
  • The --rm flag removes the container when it exits.
  • The -i flag enables interactive mode for stdio communication.
  • The --network none totally disconnects the container from the network to guarantee no data exfiltration.

Using Python directly

You’ll need to download the pricing data first:

curl https://cloudfix-public-aws-pricing.s3.us-east-1.amazonaws.com/pricing/ec2_pricing.json.gz | gunzip > ec2_pricing.json

It should be in the same directory as server.py.

Sample mcp_config.json for local Python:

{
  "mcpServers": {
    "AWS EC2 Pricing MCP": {
      "command": "python",
      "args": [
        "/path/to/server.py"
      ]
    }
  }
}

Building Instructions

For instructions on building and publishing the Docker image, see BUILD.md.

Pricing Data JSON Format

See PRICING.md.

Tools

No tools

Comments

Recommend MCP Servers

View All MCP Servers