Skip to main content

BCM Pricing Calculator MCP Server

MCP server for AWS Billing and Cost Management Pricing Calculator API - programmatically create cost estimates for planned cloud usage.

Author: oreokebu-dev
License: MIT

Features

Cost Estimation & Planning

  • Workload Estimates: Model usage patterns for specific workloads
  • Bill Scenarios: Create different cost configuration scenarios
  • Bill Estimates: Generate comprehensive cost projections
  • Line Item Analysis: View detailed cost breakdowns
  • Commitment Modeling: Include Savings Plans and Reserved Instances
  • Discount Integration: Apply your organization's discounts and benefit sharing

Query with Natural Language

  • Ask questions about your cost estimates in plain English
  • Create and compare multiple scenarios
  • Get detailed cost breakdowns and projections

Prerequisites

  1. Install uv from Astral
  2. Install Python using uv python install 3.10
  3. Set up AWS credentials with access to BCM Pricing Calculator
    • Configure AWS credentials with aws configure or environment variables
    • Ensure your IAM role/user has bcm-pricing-calculator:* permissions

Installation

Add to your MCP client config (e.g., ~/.kiro/settings/mcp.json for Kiro):

{
  "mcpServers": {
    "bcm-pricing-calculator": {
      "command": "uvx",
      "args": ["bcm-pricing-calculator-mcp-server@latest"],
      "env": {
        "AWS_REGION": "us-east-1"
      }
    }
  }
}

Restart your MCP client and you're ready to use it!

Available Tools

Workload Estimates

  • create_workload_estimate - Create a new workload estimate
  • list_workload_estimates - List all workload estimates
  • get_workload_estimate - Get details of a specific workload estimate

Bill Scenarios

  • create_bill_scenario - Create a new bill scenario
  • list_bill_scenarios - List all bill scenarios for an estimate

Bill Estimates

  • create_bill_estimate - Create a new bill estimate
  • list_bill_estimates - List all bill estimates
  • get_bill_estimate - Get details of a specific bill estimate
  • list_bill_estimate_line_items - View detailed cost breakdown

Preferences

  • get_preferences - Get your pricing calculator preferences

Example Usage

Create a Cost Estimate

1. Create a bill estimate: "Create a bill estimate named 'Q1 2025 Migration'"
2. Create a scenario: "Create a bill scenario for the estimate"
3. Add usage modifications (via batch operations)
4. View results: "Show me the line items for this estimate"

Compare Scenarios

1. Create multiple scenarios with different configurations
2. Generate estimates for each
3. Compare costs across scenarios

AWS Authentication

The MCP server requires specific AWS permissions:

Required Permissions

Your AWS IAM role or user must have bcm-pricing-calculator:* permissions to access the Pricing Calculator API.

Configuration

Environment Variables (optional):

  • AWS_PROFILE - AWS profile to use (defaults to "default")
  • AWS_REGION - Must be "us-east-1" (only supported region)
  • FASTMCP_LOG_LEVEL - Log level: ERROR, INFO, DEBUG (defaults to INFO)

The server uses your AWS credentials from ~/.aws/credentials automatically.

Important Notes

  • BCM Pricing Calculator API is only available in us-east-1 region
  • All API calls are free of charge
  • Estimates are based on your organization's pricing, discounts, and commitments
  • This is different from the AWS Pricing API - it creates estimates rather than querying list prices

Documentation

Project Documentation

AWS Documentation

Development

Local Setup for Contributors

# Clone and install
git clone <repo-url>
cd bcm-pricing-calculator-mcp-server
uv pip install -e .

# Run tests
./test_local.sh

Configure for Local Development

Use local path in your MCP config:

{
  "mcpServers": {
    "bcm-pricing-calculator": {
      "command": "uv",
      "args": [
        "--directory",
        "/absolute/path/to/bcm-pricing-calculator-mcp-server",
        "run",
        "bcm-pricing-calculator-mcp-server"
      ],
      "env": {
        "AWS_REGION": "us-east-1"
      }
    }
  }
}

Testing

# Run all tests
./test_local.sh

# Run with coverage
uv run pytest --cov=bcm_pricing_calculator_mcp_server

# Run specific test
uv run pytest tests/test_server.py::test_create_workload_estimate_success

Important Note

Do NOT run the server directly - MCP servers communicate via stdio protocol and expect JSON-RPC messages. Always test through an MCP client or use the test suite.

License

MIT License - see LICENSE file for details

Metadata

Release files for bcm-pricing-calculator-mcp-server 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for bcm-pricing-calculator-mcp-server 1.0.0
File Size Uploaded
bcm_pricing_calculator_mcp_server-1.0.0.tar.gz 124.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for bcm-pricing-calculator-mcp-server 1.0.0
File Interpreter ABI Platform
bcm_pricing_calculator_mcp_server-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 143.2 kB

Release files / bcm_pricing_calculator_mcp_server-1.0.0.tar.gz

Download URL bcm_pricing_calculator_mcp_server-1.0.0.tar.gz
Size 124.2 kB
Tags Source
SHA-256 checksum
How to use checksums
fee22686f7f2393da59e43dd1d21e4667d7ac699be29240b0cc72a9f962c43cc
BLAKE2b-256 checksum
How to use checksums
8cb80bbdab9cbec5c8b1b40708048cdfef67a74472c72d4edd027fb0a349125c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.7.8

Release files / bcm_pricing_calculator_mcp_server-1.0.0-py3-none-any.whl

Download URL bcm_pricing_calculator_mcp_server-1.0.0-py3-none-any.whl
Size 19.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
22305251e302d57128761a305f831fdebf101e2e7c6f016799311adbbe3e0401
BLAKE2b-256 checksum
How to use checksums
5a5a4480f8f052a0d6bcaea7bf6fdc4eebc773beabb80534e36675d32c5ed85b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.7.8

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files

0.3.4

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page