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
| Tool | Risk | Side effects | Approval |
|---|---|---|---|
| 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. | write | true | unknown |
| 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')
``` | unknown | unknown | unknown |
| 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')
``` | read | false | unknown |
| 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...',
)
``` | write | true | unknown |
| 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',
)
``` | read | false | unknown |
| 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 | unknown | unknown | unknown |
| 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')
``` | read | false | unknown |
| 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')
``` | read | false | unknown |
| 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. | read | false | unknown |
| 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"}
]
}
}
``` | read | false | unknown |
| 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>'}]
)
``` | write | true | unknown |
02Install & source
pip install awslabs.aws-support-mcp-server
pipuvx awslabs.aws-support-mcp-server
uvx04Trust reasoning
- 0Community serverofficial_status
- -3No clear licenselicense
- -3Exposes write toolstool_risk
- +10MCP handshake verifiedverification
- +5tools/list verifiedverification
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_statusindex — 5 unique facts >= 5
06Badge
Show your MCPExplorer trust badge in your README.
[](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