Skip to main content

Production-ready MCP server for monitoring AWS Health events and service status

Project description

AWS Health MCP Server

MCP server that exposes AWS Health API as tools. Works with Claude Desktop, Kiro, Amazon Q CLI, or any MCP-compatible client.

Prerequisites

  • Python 3.10+
  • AWS credentials configured (aws configure or environment variables)
  • AWS Business or Enterprise Support plan (required for Health API)
  • For org-level tools: AWS Organizations with Health service access enabled

Setup

Add this to your MCP config file:

  • Claude Desktop: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Kiro: ~/.kiro/settings/mcp.json
  • Amazon Q CLI: ~/.aws/amazonq/mcp.json

Using uvx from PyPI (recommended)

{
  "mcpServers": {
    "aws-health": {
      "command": "uvx",
      "args": ["aws-health-mcp-server"],
      "env": {
        "AWS_PROFILE": "default"
      }
    }
  }
}

Using pip

pip install aws-health-mcp-server

From a local clone

{
  "mcpServers": {
    "aws-health": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/aws-health-mcp-server", "aws-health-mcp-server"],
      "env": {
        "AWS_PROFILE": "default"
      }
    }
  }
}

That's it. uv handles the venv and dependencies automatically.

Tools

Account-Level

Tool Description
get_service_health All active health events
get_affected_entities Resources impacted by open events
get_service_events(service) Events for a specific service (e.g., EC2, RDS)
get_completed_events(service?) Recently resolved events
get_scheduled_changes Upcoming maintenance

Organization-Level

Tool Description
get_org_health_events(service?, account_id?, status?) Events across all accounts
get_org_service_health Active events org-wide
get_org_affected_entities(account_id?, event_arn?) Impacted resources across accounts
get_org_service_events(service) Service-specific events org-wide
get_org_account_events(account_id) Events for a specific account
get_org_scheduled_changes Org-wide scheduled maintenance

Example Prompts

  • "Are there any active AWS health events?"
  • "What's happening with EC2 right now?"
  • "Show me scheduled maintenance across my organization"
  • "What resources are affected by current issues in account 123456789012?"

Environment Variables

Variable Default Description
AWS_PROFILE none AWS credentials profile
AWS_REGION us-east-1 Region (Health API is us-east-1 only)
LOG_LEVEL INFO Logging level (DEBUG, INFO, WARNING)
HEALTH_API_TIMEOUT 30 API timeout in seconds

Troubleshooting

"SubscriptionRequiredException" — You need AWS Business or Enterprise Support.

"AccessDeniedException" — Your IAM user/role needs health:Describe* permissions.

Org tools return access error — Enable Health service access from your management account:

aws health enable-health-service-access-for-organization

Server not starting — Check the MCP client logs. Common issues:

  • Wrong Python path in config (use the full .venv/bin/python path)
  • Missing dependencies (run pip install -e . in the venv)

Development

git clone https://github.com/jsanketh/aws-health-mcp-server.git
cd aws-health-mcp-server
uv sync --extra dev
uv run pytest tests/ -v

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aws_health_mcp_server-1.0.1.tar.gz (19.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aws_health_mcp_server-1.0.1-py3-none-any.whl (22.9 kB view details)

Uploaded Python 3

File details

Details for the file aws_health_mcp_server-1.0.1.tar.gz.

File metadata

File hashes

Hashes for aws_health_mcp_server-1.0.1.tar.gz
Algorithm Hash digest
SHA256 687363aaf8a69d45c5d3a29e6e804594252ea0a28fa0dc33236336f223c172eb
MD5 39d905eba528e730b2ac713ced935068
BLAKE2b-256 17dabfc4c84c8d4d51bf1de0b5663db0d5e91bdab24f59372be9186845d46d0b

See more details on using hashes here.

File details

Details for the file aws_health_mcp_server-1.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for aws_health_mcp_server-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f3830a2eb2dd31b865b31cf573920d004e2a04f63f2eef4380cedf30089a7e00
MD5 989b74ad59c176b7d121a1939f8bef44
BLAKE2b-256 6bf451a6e21b5ed69b466232537799fef0319f46bcbc06191e2eef091181b0a0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page