awslabs.aws-support-mcp-server 0.1.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (21) hide show
  1. awslabs_aws_support_mcp_server-0.1.2/PKG-INFO +145 -0
  2. awslabs_aws_support_mcp_server-0.1.2/README.md +107 -0
  3. awslabs_aws_support_mcp_server-0.1.2/awslabs/__init__.py +12 -0
  4. awslabs_aws_support_mcp_server-0.1.2/awslabs/aws_support_mcp_server/__init__.py +16 -0
  5. awslabs_aws_support_mcp_server-0.1.2/awslabs/aws_support_mcp_server/client.py +718 -0
  6. awslabs_aws_support_mcp_server-0.1.2/awslabs/aws_support_mcp_server/consts.py +115 -0
  7. awslabs_aws_support_mcp_server-0.1.2/awslabs/aws_support_mcp_server/debug_helper.py +191 -0
  8. awslabs_aws_support_mcp_server-0.1.2/awslabs/aws_support_mcp_server/errors.py +167 -0
  9. awslabs_aws_support_mcp_server-0.1.2/awslabs/aws_support_mcp_server/formatters.py +292 -0
  10. awslabs_aws_support_mcp_server-0.1.2/awslabs/aws_support_mcp_server/models.py +696 -0
  11. awslabs_aws_support_mcp_server-0.1.2/awslabs/aws_support_mcp_server/server.py +737 -0
  12. awslabs_aws_support_mcp_server-0.1.2/awslabs.aws_support_mcp_server.egg-info/PKG-INFO +145 -0
  13. awslabs_aws_support_mcp_server-0.1.2/awslabs.aws_support_mcp_server.egg-info/SOURCES.txt +19 -0
  14. awslabs_aws_support_mcp_server-0.1.2/awslabs.aws_support_mcp_server.egg-info/dependency_links.txt +1 -0
  15. awslabs_aws_support_mcp_server-0.1.2/awslabs.aws_support_mcp_server.egg-info/entry_points.txt +2 -0
  16. awslabs_aws_support_mcp_server-0.1.2/awslabs.aws_support_mcp_server.egg-info/requires.txt +22 -0
  17. awslabs_aws_support_mcp_server-0.1.2/awslabs.aws_support_mcp_server.egg-info/top_level.txt +1 -0
  18. awslabs_aws_support_mcp_server-0.1.2/pyproject.toml +106 -0
  19. awslabs_aws_support_mcp_server-0.1.2/setup.cfg +4 -0
  20. awslabs_aws_support_mcp_server-0.1.2/tests/test_aws_support_mcp_server.py +2268 -0
  21. awslabs_aws_support_mcp_server-0.1.2/tests/test_models.py +556 -0
@@ -0,0 +1,145 @@
1
+ Metadata-Version: 2.4
2
+ Name: awslabs.aws-support-mcp-server
3
+ Version: 0.1.2
4
+ Summary: An Model Context Protocol (MCP) server for AWS SupportAPI.
5
+ Author: Amazon Web Services
6
+ Author-email: John de Villiers <jackdevilliers.work@gmail.com>
7
+ Classifier: License :: OSI Approved :: Apache Software License
8
+ Classifier: Operating System :: OS Independent
9
+ Classifier: Programming Language :: Python
10
+ Classifier: Programming Language :: Python :: 3
11
+ Classifier: Programming Language :: Python :: 3.10
12
+ Classifier: Programming Language :: Python :: 3.11
13
+ Classifier: Programming Language :: Python :: 3.12
14
+ Classifier: Programming Language :: Python :: 3.13
15
+ Requires-Python: >=3.10
16
+ Description-Content-Type: text/markdown
17
+ Requires-Dist: boto3>=1.38.12
18
+ Requires-Dist: fastmcp>=2.3.4
19
+ Requires-Dist: langdetect>=1.0.9
20
+ Requires-Dist: loguru>=0.7.0
21
+ Requires-Dist: markdownify>=0.13.1
22
+ Requires-Dist: mcp[cli]>=1.8.0
23
+ Requires-Dist: pre-commit>=4.2.0
24
+ Requires-Dist: protego>=0.3.1
25
+ Requires-Dist: pydantic>=2.0.0
26
+ Requires-Dist: pytest>=8.3.5
27
+ Requires-Dist: pytest-asyncio>=0.26.0
28
+ Requires-Dist: pytest-cov>=6.1.1
29
+ Requires-Dist: readabilipy>=0.2.0
30
+ Requires-Dist: requests>=2.32.3
31
+ Provides-Extra: dev
32
+ Requires-Dist: pytest>=7.0.0; extra == "dev"
33
+ Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev"
34
+ Requires-Dist: pytest-cov>=4.1.0; extra == "dev"
35
+ Requires-Dist: ruff>=0.0.291; extra == "dev"
36
+ Requires-Dist: pyright>=1.1.350; extra == "dev"
37
+ Requires-Dist: pre-commit>=3.5.0; extra == "dev"
38
+
39
+ # AWS Support MCP Server
40
+
41
+ A Model Context Protocol (MCP) server implementation for interacting with the AWS Support API. This server enables AI assistants to create and manage AWS support cases programmatically.
42
+
43
+ ## Features
44
+
45
+ - Create and manage AWS support cases
46
+ - Retrieve case information and communications
47
+ - Add communications to existing cases
48
+ - Resolve support cases
49
+ - Determine appropriate Issue Type, Service Code, and Category Code
50
+ - Determine appropriate Severity Level for a case
51
+
52
+
53
+ ## Requirements
54
+
55
+ - Python 3.7+
56
+ - AWS credentials with Support API access
57
+ - Business, Enterprise On-Ramp, or Enterprise Support plan
58
+
59
+ ## Prerequisites
60
+
61
+ 1. Install `uv` from [Astral](https://docs.astral.sh/uv/getting-started/installation/) or the [GitHub README](https://github.com/astral-sh/uv#installation)
62
+ 2. Install Python using `uv python install 3.10`
63
+
64
+ ## Installation
65
+
66
+ Here are some ways you can work with MCP across AWS, and we'll be adding support to more products including Amazon Q Developer CLI soon: (e.g. for Amazon Q Developer CLI MCP, `~/.aws/amazonq/mcp.json`):
67
+ ```json
68
+
69
+ {
70
+ "mcpServers": {
71
+ "awslabs_support_mcp_server": {
72
+ "command": "uvx",
73
+ "args": [
74
+ "-m", "awslabs.aws-support-mcp-server@latest",
75
+ "--debug",
76
+ "--log-file",
77
+ "./logs/mcp_support_server.log"
78
+ ],
79
+ "env": {
80
+ "AWS_PROFILE": "your-aws-profile"
81
+ }
82
+ }
83
+ }
84
+ }
85
+ ```
86
+
87
+ Alternatively:
88
+ ```bash
89
+
90
+
91
+ uv pip install -e .
92
+ uv run awslabs/aws_support_mcp_server/server.py
93
+ ```
94
+
95
+ ```json
96
+ {
97
+ "mcpServers": {
98
+ "awslabs_support_mcp_server": {
99
+ "command": "path-to-python",
100
+ "args": [
101
+ "-m",
102
+ "awslabs.aws_support_mcp_server.server",
103
+ "--debug",
104
+ "--log-file",
105
+ "./logs/mcp_support_server.log"
106
+ ],
107
+ "env": {
108
+ "AWS_PROFILE": "manual_enterprise"
109
+ }
110
+ }
111
+ }
112
+ }
113
+ ```
114
+
115
+ ## Usage
116
+
117
+ Start the server:
118
+
119
+ ```bash
120
+ python -m awslabs.aws_support_mcp_server.server [options]
121
+ ```
122
+
123
+ Options:
124
+ - `--port PORT`: Port to run the server on (default: 8888)
125
+ - `--debug`: Enable debug logging
126
+ - `--log-file`: Where to save the log file
127
+
128
+ ## Configuration
129
+
130
+ The server can be configured using environment variables:
131
+
132
+ - `AWS_REGION`: AWS region (default: us-east-1)
133
+ - `AWS_PROFILE`: AWS credentials profile name
134
+
135
+ ## Documentation
136
+
137
+ For detailed documentation on available tools and resources, see the [API Documentation](docs/api.md).
138
+
139
+
140
+
141
+ ## License
142
+
143
+ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
144
+
145
+ Licensed under the Apache License, Version 2.0 (the "License").
@@ -0,0 +1,107 @@
1
+ # AWS Support MCP Server
2
+
3
+ A Model Context Protocol (MCP) server implementation for interacting with the AWS Support API. This server enables AI assistants to create and manage AWS support cases programmatically.
4
+
5
+ ## Features
6
+
7
+ - Create and manage AWS support cases
8
+ - Retrieve case information and communications
9
+ - Add communications to existing cases
10
+ - Resolve support cases
11
+ - Determine appropriate Issue Type, Service Code, and Category Code
12
+ - Determine appropriate Severity Level for a case
13
+
14
+
15
+ ## Requirements
16
+
17
+ - Python 3.7+
18
+ - AWS credentials with Support API access
19
+ - Business, Enterprise On-Ramp, or Enterprise Support plan
20
+
21
+ ## Prerequisites
22
+
23
+ 1. Install `uv` from [Astral](https://docs.astral.sh/uv/getting-started/installation/) or the [GitHub README](https://github.com/astral-sh/uv#installation)
24
+ 2. Install Python using `uv python install 3.10`
25
+
26
+ ## Installation
27
+
28
+ Here are some ways you can work with MCP across AWS, and we'll be adding support to more products including Amazon Q Developer CLI soon: (e.g. for Amazon Q Developer CLI MCP, `~/.aws/amazonq/mcp.json`):
29
+ ```json
30
+
31
+ {
32
+ "mcpServers": {
33
+ "awslabs_support_mcp_server": {
34
+ "command": "uvx",
35
+ "args": [
36
+ "-m", "awslabs.aws-support-mcp-server@latest",
37
+ "--debug",
38
+ "--log-file",
39
+ "./logs/mcp_support_server.log"
40
+ ],
41
+ "env": {
42
+ "AWS_PROFILE": "your-aws-profile"
43
+ }
44
+ }
45
+ }
46
+ }
47
+ ```
48
+
49
+ Alternatively:
50
+ ```bash
51
+
52
+
53
+ uv pip install -e .
54
+ uv run awslabs/aws_support_mcp_server/server.py
55
+ ```
56
+
57
+ ```json
58
+ {
59
+ "mcpServers": {
60
+ "awslabs_support_mcp_server": {
61
+ "command": "path-to-python",
62
+ "args": [
63
+ "-m",
64
+ "awslabs.aws_support_mcp_server.server",
65
+ "--debug",
66
+ "--log-file",
67
+ "./logs/mcp_support_server.log"
68
+ ],
69
+ "env": {
70
+ "AWS_PROFILE": "manual_enterprise"
71
+ }
72
+ }
73
+ }
74
+ }
75
+ ```
76
+
77
+ ## Usage
78
+
79
+ Start the server:
80
+
81
+ ```bash
82
+ python -m awslabs.aws_support_mcp_server.server [options]
83
+ ```
84
+
85
+ Options:
86
+ - `--port PORT`: Port to run the server on (default: 8888)
87
+ - `--debug`: Enable debug logging
88
+ - `--log-file`: Where to save the log file
89
+
90
+ ## Configuration
91
+
92
+ The server can be configured using environment variables:
93
+
94
+ - `AWS_REGION`: AWS region (default: us-east-1)
95
+ - `AWS_PROFILE`: AWS credentials profile name
96
+
97
+ ## Documentation
98
+
99
+ For detailed documentation on available tools and resources, see the [API Documentation](docs/api.md).
100
+
101
+
102
+
103
+ ## License
104
+
105
+ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
106
+
107
+ Licensed under the Apache License, Version 2.0 (the "License").
@@ -0,0 +1,12 @@
1
+ # Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance
4
+ # with the License. A copy of the License is located at
5
+ #
6
+ # http://www.apache.org/licenses/LICENSE-2.0
7
+ #
8
+ # or in the 'license' file accompanying this file. This file is distributed on an 'AS IS' BASIS, WITHOUT WARRANTIES
9
+ # OR CONDITIONS OF ANY KIND, express or implied. See the License for the specific language governing permissions
10
+ # and limitations under the License.
11
+ # This file is part of the awslabs namespace.
12
+ # It is intentionally minimal to support PEP 420 namespace packages.
@@ -0,0 +1,16 @@
1
+ """AWS Support MCP Server package."""
2
+
3
+ import sys
4
+
5
+ from loguru import logger
6
+
7
+ # Configure package-level logging
8
+ logger.remove()
9
+ logger.add(
10
+ sys.stderr,
11
+ level="DEBUG",
12
+ format="<green>{time:YYYY-MM-DD HH:mm:ss.SSS}</green> | <level>{level: <8}</level> | <cyan>{name}</cyan>:<cyan>{function}</cyan>:<cyan>{line}</cyan> - <level>{message}</level>",
13
+ )
14
+
15
+ # Export version
16
+ __version__ = "0.1.0"