servers / awslabs-aws-support-mcp-server

awslabs.aws-support-mcp-server

communityunknownpythonwrite capablehealthy

An Model Context Protocol (MCP) server for AWS SupportAPI.

49
/ 100

01Tools · 11
ToolRiskSide effectsApproval
create_support_case
Create a new AWS Support case. ## Prerequisites 1. **describe_services** → get valid `service_code` and `category_code` values 2. (Optional) **describe_create_case_options** → check support hours and language availability 3. (Optional) **describe_supported_languages** → check if your preferred language is supported Severity codes are: low, normal, high, urgent, critical. Pick based on impact — no need to call describe_severity_levels. ## Attaching files Call **add_attachments_to_set** first to upload files, then pass the returned `attachmentSetId` as the `attachment_set_id` parameter here. ## Example ``` create_support_case( subject='EC2 instance not starting', service_code='amazon-elastic-compute-cloud-linux', category_code='using-aws', severity_code='urgent', communication_body='My EC2 instance i-1234567890abcdef0 is not starting.', ) ``` ## Severity Level Guidelines - low (General guidance): You have a general development question or want to request a feature. - normal (System impaired): Non-critical functions are behaving abnormally or you have a time-sensitive development question. - high (Production system impaired): Important functions are impaired but a workaround exists. - urgent (Production system down): Your business is significantly impacted and no workaround exists. - critical (Business-critical system down): Your business is at risk and critical functions are unavailable.
writetrueunknown
resolve_support_case
Resolve a support case. ## Usage - You must provide a valid case ID - The case must be in an open state to be resolved ## Example ``` resolve_support_case(case_id='case-12345678910-2013-c4c1d2bf33c5cf47') ```
unknownunknownunknown
describe_create_case_options
Retrieve supported hours and language availability for a service. Returns communication types (e.g., chat, phone, web) with their supported hours and any dates without support, plus language availability status. ## Usage - Check what support channels and hours are available before creating a case - languageAvailability will be: available, best_effort, or unavailable ## Example ``` describe_create_case_options(service_code='ec2-container-service') ```
readfalseunknown
add_communication_to_case
Add communication to a support case. ## Usage - You must provide a valid case ID - You must provide a communication body - You can optionally CC email addresses on the communication ## Attaching files Call **add_attachments_to_set** first to upload files, then pass the returned `attachmentSetId` as the `attachment_set_id` parameter here. ## Example ``` add_communication_to_case( case_id='case-12345678910-2013-c4c1d2bf33c5cf47', communication_body='Here is an update on my issue...', ) ```
writetrueunknown
describe_supported_languages
Retrieve supported languages for a specific service and category. Returns a list of languages with their ISO 639-1 code and display name. Language support varies by service, category, and issue type. ## Usage - Call before creating a case in a non-English language to verify support - Requires service_code and category_code (get these from describe_services) ## Example ``` describe_supported_languages( service_code='ec2-container-service', category_code='general-guidance', issue_type='technical', ) ```
readfalseunknown
describe_severity_levels
Retrieve information about AWS Support severity levels. This tool provides details about the available severity levels for AWS Support cases, including their codes and descriptions. ## Usage - You can request the response in either JSON or Markdown format. - Use this information to determine the appropriate severity level for creating support cases. ## Example ``` describe_severity_levels() describe_severity_levels(language='ja', format='markdown') ``` ## Severity Level Guidelines - low (General guidance): You have a general development question or want to request a feature - normal (System impaired): Non-critical functions are behaving abnormally - high (Production system impaired): Important functions are impaired but a workaround exists - urgent (Production system down): Your business is significantly impacted; no workaround exists - critical (Business-critical system down): Your business is at risk; critical functions unavailable
unknownunknownunknown
describe_communications
Retrieve communications for a support case. ## Usage - Provide a case ID to get all communications for that case - Use date filters and pagination for large result sets - Communications may include attachment IDs — use **describe_attachment** to download them ## Example ``` describe_communications(case_id='case-12345678910-2013-c4c1d2bf33c5cf47') ```
readfalseunknown
describe_attachment
Retrieve an attachment by ID. ## Usage - Get attachment IDs from describe_communications results - Returns the file name and base64-encoded content ## Example ``` describe_attachment(attachment_id='attachment-id-from-communications') ```
readfalseunknown
describe_support_cases
Retrieve information about support cases. ## Usage - You can retrieve cases by ID, display ID, or date range - You can include or exclude resolved cases and communications - You can paginate through results using the next_token parameter - Use **describe_communications** to get the full communication history for a case ## Example ``` describe_support_cases( case_id_list=['case-12345678910-2013-c4c1d2bf33c5cf47'], include_communications=True ) ``` ## Date Format Dates should be provided in ISO 8601 format (e.g., "2023-01-01T00:00:00Z") ## Response Format You can request the response in either JSON or Markdown format using the format parameter.
readfalseunknown
describe_services
Retrieve information about AWS services available for support cases. This tool provides details about AWS services, including their service codes, names, and categories. Use this information when creating support cases to ensure you're using valid service and category codes. ## Usage - You can optionally filter results by providing specific service codes - You can specify the language for the response - You can request the response in either JSON or Markdown format ## Example ```python # Get all services describe_services() # Get specific services describe_services(service_code_list=['amazon-elastic-compute-cloud-linux', 'amazon-s3']) # Get services in Japanese describe_services(language='ja') # Get services in Markdown format describe_services(format='markdown') ``` ## Response Format The JSON response includes service codes, names, and their categories: ```json { "amazon-elastic-compute-cloud-linux": { "name": "Amazon Elastic Compute Cloud (Linux)", "categories": [ {"code": "using-aws", "name": "Using AWS"} ] } } ```
readfalseunknown
add_attachments_to_set
Add attachments to a new or existing attachment set. ## Usage - Use before create_support_case or add_communication_to_case - Pass the returned attachmentSetId to those tools - Attachment sets expire after 1 hour; each file must be < 5MB - The `data` field must be the file contents as a base64-encoded string - The server decodes it to raw bytes before sending to AWS (the SDK handles wire encoding) - Do NOT double-encode: encode the raw file bytes to base64 exactly once ## Example ``` add_attachments_to_set( attachments=[{'fileName': 'error.log', 'data': '<base64-encoded-file-contents>'}] ) ```
writetrueunknown

02Install & source
pip install awslabs.aws-support-mcp-server
pip
uvx awslabs.aws-support-mcp-server
uvx

04Trust reasoning
  • 0
    Community server
    official_status
  • -3
    No clear license
    license
  • -3
    Exposes write tools
    tool_risk
  • +10
    MCP handshake verified
    verification
  • +5
    tools/list verified
    verification

05Provenance & freshness
sourcesPyPI [p4]
last_checked2026-06-30 21:08Z
next_check2026-07-01 07:53Z
cadenceevery 48h
verifiedtools_list:passed handshake:passed metadata:passed metadata:passed
index_statusindex5 unique facts >= 5

06Badge

Show your MCPExplorer trust badge in your README. awslabs.aws-support-mcp-server on MCPExplorer

[![MCPExplorer](https://mcpexplorer.com/badge/awslabs-aws-support-mcp-server.svg)](https://mcpexplorer.com/servers/awslabs-aws-support-mcp-server)

Next step

Generate a runtime config, or package this server into a governed Loadout with approvals and policies before your agent uses it.

Use in a Loadout