{"id":7024,"library":"awslabs-aws-pricing-mcp-server","title":"AWS Pricing MCP Server","description":"The AWS Pricing MCP Server (Model Context Protocol) is an open-source tool developed by AWS Labs that enables AI assistants to access real-time AWS pricing data, providing cost estimates and insights through natural language queries. Currently at version 1.0.27, it receives frequent updates, often tied to the broader `awslabs/mcp` repository's release cadence, which can be daily or weekly with minor fixes and feature enhancements. [1, 2, 6, 8]","status":"active","version":"1.0.27","language":"en","source_language":"en","source_url":"https://github.com/awslabs/mcp.git","tags":["AWS","Pricing","AI","MCP","Server","Cost Management","FinOps"],"install":[{"cmd":"pip install awslabs-aws-pricing-mcp-server","lang":"bash","label":"PyPI installation"},{"cmd":"uvx awslabs.aws-pricing-mcp-server@latest","lang":"bash","label":"Recommended via uvx for MCP Clients"}],"dependencies":[{"reason":"Recommended package manager for installation and execution of MCP servers.","package":"uv","optional":false},{"reason":"Used internally for AWS API interactions, requires AWS credentials configured.","package":"boto3","optional":false}],"imports":[{"note":"This is a server, not a library intended for direct module imports in user applications.","symbol":"AWS Pricing MCP Server","correct":"The AWS Pricing MCP Server is designed to be run as a standalone process, typically invoked via a command-line utility like 'uvx' from an MCP-compatible client (e.g., Amazon Q CLI, Kiro, Cursor, VS Code). Direct programmatic import of its server components for end-user application logic is not the primary use case. Its entry point is usually a `main()` function executed as a script. [18, 19, 21]"}],"quickstart":{"code":"{\n  \"mcpServers\": {\n    \"awslabs.aws-pricing-mcp-server\": {\n      \"command\": \"uvx\",\n      \"args\": [\n        \"awslabs.aws-pricing-mcp-server@latest\"\n      ],\n      \"env\": {\n        \"AWS_PROFILE\": \"your-aws-profile\",\n        \"FASTMCP_LOG_LEVEL\": \"ERROR\"\n      }\n    }\n  }\n}","lang":"json","description":"To get started, configure your MCP-compatible client (such as Kiro, Cursor, or Amazon Q CLI) by adding the AWS Pricing MCP Server definition to its configuration file (e.g., `~/.kiro/settings/mcp.json`). Ensure you have `uv` installed and AWS credentials configured with appropriate permissions (`pricing:*`). Replace `your-aws-profile` with your AWS CLI profile name or ensure `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY` environment variables are set. [8, 18, 21]"},"warnings":[{"fix":"Migrate your MCP client to use alternative transport methods (e.g., stdio or Streamable HTTP when available) or, if absolutely necessary, use an older major version of the server that still supports SSE. [3, 5]","message":"Server Sent Events (SSE) support was removed in version 1.0.0 (May 26, 2025). This aligns with the Model Context Protocol specification's backwards compatibility guidelines and prepares for Streamable HTTP transport.","severity":"breaking","affected_versions":">=1.0.0"},{"fix":"Always cross-reference with official AWS billing statements and the AWS Pricing Calculator for exact costs. Treat server outputs as guidance for planning, not final figures. [4, 8]","message":"The AWS Pricing MCP Server provides *estimated* pricing information based on AWS Pricing APIs and web pages. These estimates are intended for pre-deployment planning and may not reflect actual deployed cloud service expenses. AI assistants might also not always construct filters correctly or identify the absolute cheapest options.","severity":"gotcha","affected_versions":"All"},{"fix":"Configure your AWS CLI with an IAM role or user that has a policy granting `pricing:*` permissions (e.g., `pricing:GetProducts`, `pricing:DescribeServices`). This can be done via `aws configure` or environment variables (e.g., `AWS_PROFILE`, `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`). [8]","message":"AWS credentials with `pricing:*` permissions are required for the server to access the AWS Pricing API. Without these, the server will not be able to fetch pricing data.","severity":"gotcha","affected_versions":"All"},{"fix":"Remove `core-mcp-server` from your MCP client configuration and add `awslabs.aws-pricing-mcp-server` (and other required servers) individually. This gives faster installs and direct control. [9]","message":"The `awslabs.core-mcp-server`, which bundled many individual MCP servers, is deprecated. It had issues with massive dependency footprints, slow installs, and tool name conflicts. Users are now advised to configure individual MCP servers directly.","severity":"deprecated","affected_versions":"All versions where `core-mcp-server` was used as a proxy."}],"env_vars":null,"last_verified":"2026-04-16T00:00:00.000Z","next_check":"2026-07-15T00:00:00.000Z","problems":[{"fix":"In your client configuration, try modifying the script name to remove dots, for example, `awslabsaws-pricing-mcp-server` if your MCP client supports alias mapping. Alternatively, ensure `uv` is correctly configured and accessible in your PATH. [17]","cause":"On Windows, the `uv` tool (or other command runners) may fail to find executable scripts with dots in their names. This is a known issue with the script invocation mechanism.","error":"error: Failed to spawn: `awslabs.aws-pricing-mcp-server` Caused by: program not found"},{"fix":"Ensure that if your AI assistant is querying an AWS API that requires specific parameters, those parameters are correctly formulated. If the issue persists for operations with no expected input, report it to the `awslabs/mcp` GitHub repository, as it may indicate an internal parsing bug. [20]","cause":"This error can occur when an underlying AWS API operation expects input parameters but receives `None`, or when the MCP server's parser incorrectly handles an API call that genuinely has no input parameters (where `input_shape` is `None` in botocore models).","error":"{ \"error\": true, \"detail\": \"Error while validating the command: 'NoneType' object has no attribute 'members'\" }"},{"fix":"Do not use the `core-mcp-server`. Instead, configure `awslabs.aws-pricing-mcp-server` directly in your client's MCP configuration, enabling only the specific servers you need. This reduces the dependency footprint and avoids conflicts. [9, 22]","cause":"When using the now-deprecated `core-mcp-server` with many `ENV` variables (roles) enabled, it can lead to dependency conflicts or resource exhaustion, causing the server to crash. Although `aws-pricing-mcp-server` is a standalone server, users migrating from `core-mcp-server` might encounter this.","error":"MCP server fails to load with a variety of errors when multiple roles are enabled (specifically for `core-mcp-server`)."}]}