mcp-aws-manager 0.3.3 → 0.3.5
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.
- package/IMPLEMENTATION_INTEGRATIONS.md +0 -2
- package/MCP_CLIENT_SETUP.md +1 -2
- package/README.md +172 -31
- package/bin/mcp-aws-manager-mcp.js +0 -7
- package/package.json +1 -1
|
@@ -7,7 +7,6 @@ This document lists MCP/API/CLI integrations used by `mcp-aws-manager`.
|
|
|
7
7
|
Tools:
|
|
8
8
|
|
|
9
9
|
- `discover_ec2_with_ssm`
|
|
10
|
-
- `discover_public_ec2_with_pem` (compat alias)
|
|
11
10
|
- `mcp_aws_discover_cli_help`
|
|
12
11
|
|
|
13
12
|
Files:
|
|
@@ -86,6 +85,5 @@ The setup flow tries multiple `mcp` command variants (`get/show`, `add`, `remove
|
|
|
86
85
|
## 6) Related docs
|
|
87
86
|
|
|
88
87
|
- `README.md`
|
|
89
|
-
- `USAGE_GUIDE.md`
|
|
90
88
|
- `MCP_CLIENT_SETUP.md`
|
|
91
89
|
- `MCP_DIFFERENTIATION.md`
|
package/MCP_CLIENT_SETUP.md
CHANGED
|
@@ -8,7 +8,6 @@ This project provides an MCP stdio wrapper around the SSM-first AWS operations C
|
|
|
8
8
|
Exposed MCP tools:
|
|
9
9
|
|
|
10
10
|
- `discover_ec2_with_ssm` (primary, multi-service inventory + SSM runtime)
|
|
11
|
-
- `discover_public_ec2_with_pem` (compatibility alias, same behavior)
|
|
12
11
|
- `mcp_aws_discover_cli_help`
|
|
13
12
|
|
|
14
13
|
## Recommended (Install Once)
|
|
@@ -28,7 +27,7 @@ mcp-aws-manager doctor
|
|
|
28
27
|
|
|
29
28
|
## Agent-Led Setup Flow
|
|
30
29
|
|
|
31
|
-
Detailed onboarding flow is maintained in `
|
|
30
|
+
Detailed onboarding flow is maintained in `README.md` ("Agent-Assisted First-Time Setup").
|
|
32
31
|
This document only covers MCP server registration/configuration.
|
|
33
32
|
|
|
34
33
|
## Explicit Registration
|
package/README.md
CHANGED
|
@@ -1,55 +1,196 @@
|
|
|
1
1
|
# mcp-aws-manager
|
|
2
2
|
|
|
3
|
-
AWS operations CLI
|
|
3
|
+
AWS operations CLI + MCP stdio server (SSM-first).
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
This package is not a plain AWS CLI wrapper. It orchestrates multi-step operations:
|
|
6
|
+
|
|
7
|
+
- Multi-service inventory (EC2/Lambda/ALB/ASG/RDS/ElastiCache/Route53)
|
|
8
|
+
- SSM management/online status
|
|
9
|
+
- Optional runtime snapshot and SSM remediation
|
|
10
|
+
- Normalized output + `ACTION_REQUIRED` guidance for human-in-the-loop retries
|
|
11
|
+
|
|
12
|
+
Execution path is internal-only (AWS SDK + AWS CLI). It does not delegate runtime execution to external AWS management MCP backends.
|
|
13
|
+
|
|
14
|
+
## Binaries
|
|
6
15
|
|
|
7
16
|
- CLI: `mcp-aws-manager`
|
|
8
17
|
- MCP stdio server: `mcp-aws-manager-mcp`
|
|
9
18
|
|
|
10
|
-
Current implementation focuses on:
|
|
11
|
-
|
|
12
|
-
- Internal-only execution (AWS SDK + AWS CLI), no external AWS management MCP backend dependency
|
|
13
|
-
- EC2 inventory discovery (multi profile / multi region)
|
|
14
|
-
- Optional Lambda function inventory (same profile/region sweep)
|
|
15
|
-
- Optional ALB/NLB + Target Group inventory
|
|
16
|
-
- Optional Auto Scaling Group inventory
|
|
17
|
-
- Optional RDS inventory
|
|
18
|
-
- Optional ElastiCache inventory
|
|
19
|
-
- Optional Route53 hosted zone inventory
|
|
20
|
-
- SSM management and online-state visibility
|
|
21
|
-
- Optional SSM runtime snapshot collection (`RunCommand`)
|
|
22
|
-
- Optional SSM auto-remediation (instance profile association)
|
|
23
|
-
- Human-in-the-loop guidance via `ACTION_REQUIRED` messages
|
|
24
|
-
- JSON/CSV output (CLI)
|
|
25
|
-
- MCP registration bootstrap helpers (`codex`, `claude`, `cursor`, `windsurf`, `antigravity`)
|
|
26
|
-
|
|
27
19
|
## Install
|
|
28
20
|
|
|
29
21
|
```bash
|
|
30
22
|
npm install -g mcp-aws-manager
|
|
31
23
|
```
|
|
32
24
|
|
|
33
|
-
##
|
|
25
|
+
## First Run (Recommended)
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
mcp-aws-manager
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
This bootstraps MCP server registration for detected clients (`codex`, `claude` by default).
|
|
32
|
+
|
|
33
|
+
## Agent-Assisted First-Time Setup
|
|
34
|
+
|
|
35
|
+
Use this 5-step flow for new users.
|
|
36
|
+
|
|
37
|
+
1. Install and bootstrap:
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
npm.cmd install -g mcp-aws-manager@latest
|
|
41
|
+
mcp-aws-manager
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
2. Health check:
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
mcp-aws-manager doctor
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
3. Configure AWS auth (SSO recommended):
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
aws configure sso --profile default
|
|
54
|
+
aws sso login --profile default
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
4. Verify identity:
|
|
34
58
|
|
|
35
|
-
|
|
59
|
+
```bash
|
|
60
|
+
aws sts get-caller-identity --profile default
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
5. Run discovery:
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
mcp-aws-manager discover --profiles default --no-progress
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
If blocked, follow one `ACTION_REQUIRED` item, then retry the same command.
|
|
70
|
+
|
|
71
|
+
## User Confirmation Required
|
|
72
|
+
|
|
73
|
+
These are expected manual steps (agent-guided):
|
|
74
|
+
|
|
75
|
+
- SSO browser login and MFA confirmation
|
|
76
|
+
- IAM permission approval in organization account
|
|
77
|
+
- For EC2 runtime visibility: attach `AmazonSSMManagedInstanceCore` and keep SSM Agent/network healthy
|
|
78
|
+
|
|
79
|
+
## Prerequisites
|
|
80
|
+
|
|
81
|
+
- Node.js `>=18`
|
|
82
|
+
- AWS credentials on the host where CLI/MCP runs:
|
|
83
|
+
- SSO: `aws configure sso --profile <profile>` then `aws sso login --profile <profile>`
|
|
84
|
+
- Access key: `aws configure --profile <profile>`
|
|
85
|
+
- Verify auth:
|
|
86
|
+
- `aws sts get-caller-identity --profile <profile>`
|
|
87
|
+
- Runtime snapshot permissions:
|
|
88
|
+
- `ssm:SendCommand`, `ssm:GetCommandInvocation`, `ssm:DescribeInstanceInformation`
|
|
89
|
+
- Auto-remediation permissions:
|
|
90
|
+
- `ec2:AssociateIamInstanceProfile`
|
|
91
|
+
- optional `ec2:ReplaceIamInstanceProfileAssociation`
|
|
92
|
+
- `iam:PassRole`
|
|
93
|
+
|
|
94
|
+
Why SSO is recommended:
|
|
95
|
+
|
|
96
|
+
- Avoid long-lived access keys on user machines
|
|
97
|
+
- Easier MFA/session-based enforcement
|
|
98
|
+
- Better centralized revoke/audit handling
|
|
99
|
+
|
|
100
|
+
## Commands
|
|
101
|
+
|
|
102
|
+
- `mcp-aws-manager`: bootstrap mode (default)
|
|
103
|
+
- `mcp-aws-manager setup`: register/re-register MCP server
|
|
104
|
+
- `mcp-aws-manager doctor`: check install/registration/auth readiness
|
|
105
|
+
- `mcp-aws-manager discover ...`: run inventory/runtime workflow
|
|
106
|
+
|
|
107
|
+
## Quick Commands
|
|
36
108
|
|
|
37
109
|
```bash
|
|
38
110
|
mcp-aws-manager
|
|
111
|
+
mcp-aws-manager doctor
|
|
112
|
+
mcp-aws-manager discover --profiles default
|
|
113
|
+
mcp-aws-manager discover --profiles default --include-lambda
|
|
114
|
+
mcp-aws-manager discover --profiles default --include-alb --include-asg --include-rds --include-elasticache --include-route53
|
|
115
|
+
mcp-aws-manager discover --profiles default --public-only
|
|
116
|
+
mcp-aws-manager discover --profiles default --runtime-snapshot
|
|
117
|
+
mcp-aws-manager discover --profiles default --auto-remediate-ssm --ssm-instance-profile-name MySsmInstanceProfile
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
Legacy invocation form (still supported):
|
|
121
|
+
|
|
122
|
+
```bash
|
|
123
|
+
mcp-aws-manager --profiles default --public-only
|
|
39
124
|
```
|
|
40
125
|
|
|
41
|
-
|
|
126
|
+
## Important Discover Options
|
|
127
|
+
|
|
128
|
+
- `--profiles <a,b,c>`
|
|
129
|
+
- `--regions <a,b,c>`
|
|
130
|
+
- `--instance-ids <id1,id2>`
|
|
131
|
+
- `--include-lambda`
|
|
132
|
+
- `--include-ec2` / `--no-ec2`
|
|
133
|
+
- `--include-alb` / `--no-include-alb`
|
|
134
|
+
- `--include-asg` / `--no-include-asg`
|
|
135
|
+
- `--include-rds` / `--no-include-rds`
|
|
136
|
+
- `--include-elasticache` / `--no-include-elasticache`
|
|
137
|
+
- `--include-route53` / `--no-include-route53`
|
|
138
|
+
- `--public-only`
|
|
139
|
+
- `--managed-only`
|
|
140
|
+
- `--auto-remediate-ssm`
|
|
141
|
+
- `--ssm-instance-profile-name <name>` / `--ssm-instance-profile-arn <arn>`
|
|
142
|
+
- `--allow-replace-profile`
|
|
143
|
+
- `--runtime-snapshot` / `--no-runtime-snapshot`
|
|
144
|
+
- `--snapshot-timeout <seconds>`
|
|
145
|
+
- `--snapshot-concurrency <n>`
|
|
146
|
+
- `--snapshot-max-kb <n>`
|
|
147
|
+
- `--auto-sso-login` / `--no-auto-sso-login`
|
|
148
|
+
- `--format <json|csv>`
|
|
149
|
+
- `--out <path>`
|
|
150
|
+
|
|
151
|
+
## MCP Tool Usage
|
|
152
|
+
|
|
153
|
+
Run MCP server:
|
|
154
|
+
|
|
155
|
+
```bash
|
|
156
|
+
mcp-aws-manager-mcp
|
|
157
|
+
```
|
|
42
158
|
|
|
43
|
-
|
|
159
|
+
Exposed MCP tools:
|
|
44
160
|
|
|
45
|
-
|
|
161
|
+
- `discover_ec2_with_ssm`
|
|
162
|
+
- `mcp_aws_discover_cli_help`
|
|
46
163
|
|
|
47
|
-
|
|
48
|
-
- MCP client registration and stdio config: `MCP_CLIENT_SETUP.md`
|
|
49
|
-
- Agent retry/guidance loop template: `AGENT_GUIDANCE_LOOP_TEMPLATE_KO.md`
|
|
50
|
-
- Implementation APIs/CLI wiring: `IMPLEMENTATION_INTEGRATIONS.md`
|
|
51
|
-
- Positioning vs existing AWS MCPs: `MCP_DIFFERENTIATION.md`
|
|
164
|
+
Example tool args:
|
|
52
165
|
|
|
53
|
-
|
|
166
|
+
```json
|
|
167
|
+
{
|
|
168
|
+
"profiles": ["default"],
|
|
169
|
+
"regions": ["ap-northeast-2"],
|
|
170
|
+
"includeLambda": true,
|
|
171
|
+
"publicOnly": true,
|
|
172
|
+
"runtimeSnapshot": true,
|
|
173
|
+
"autoSsoLogin": true,
|
|
174
|
+
"noProgress": true
|
|
175
|
+
}
|
|
176
|
+
```
|
|
54
177
|
|
|
55
|
-
|
|
178
|
+
## ACTION_REQUIRED Examples
|
|
179
|
+
|
|
180
|
+
- `SSO_LOGIN_NEEDED`
|
|
181
|
+
- `SSM_ROLE_OR_AGENT_REQUIRED`
|
|
182
|
+
- `IAM_PROFILE_ASSOCIATION_FAILED`
|
|
183
|
+
- `SSM_RUNCOMMAND_PERMISSION_REQUIRED`
|
|
184
|
+
- `LAMBDA_LIST_PERMISSION_REQUIRED`
|
|
185
|
+
- `ELBV2_LIST_PERMISSION_REQUIRED`
|
|
186
|
+
- `ASG_LIST_PERMISSION_REQUIRED`
|
|
187
|
+
- `RDS_LIST_PERMISSION_REQUIRED`
|
|
188
|
+
- `ELASTICACHE_LIST_PERMISSION_REQUIRED`
|
|
189
|
+
- `ROUTE53_LIST_PERMISSION_REQUIRED`
|
|
190
|
+
|
|
191
|
+
## Related Docs
|
|
192
|
+
|
|
193
|
+
- `MCP_CLIENT_SETUP.md`: MCP registration and stdio config details
|
|
194
|
+
- `AGENT_GUIDANCE_LOOP_TEMPLATE_KO.md`: agent retry/guidance template
|
|
195
|
+
- `IMPLEMENTATION_INTEGRATIONS.md`: API/CLI integration inventory
|
|
196
|
+
- `MCP_DIFFERENTIATION.md`: differentiation from existing AWS MCP servers
|
|
@@ -657,13 +657,6 @@ async function registerTools(server) {
|
|
|
657
657
|
"Runs mcp-aws-manager and returns inventory across EC2/Lambda/ALB/ASG/RDS/ElastiCache/Route53 with optional SSM runtime snapshots."
|
|
658
658
|
);
|
|
659
659
|
|
|
660
|
-
registerDiscoverTool(
|
|
661
|
-
server,
|
|
662
|
-
"discover_public_ec2_with_pem",
|
|
663
|
-
"Discover AWS Inventory (compat alias)",
|
|
664
|
-
"Compatibility alias. Internally runs the same multi-service discovery flow."
|
|
665
|
-
);
|
|
666
|
-
|
|
667
660
|
server.registerTool(
|
|
668
661
|
"mcp_aws_discover_cli_help",
|
|
669
662
|
{
|
package/package.json
CHANGED