@gnaws/mcp
An MCP server that lets AI agents scan, analyze, and export AWS resource graphs to find unused resources.
Status: Check whether resources are loaded and see graph size with
status.Scan live AWS: Use
scanwith an AWS profile to build a resource relationship graph.Work offline: Use
loadto load a previously dumped directory without AWS credentials.List regions: Use
regionsto see enabled AWS regions from the loaded inventory.Detect unused resources: Use
detectto find orphaned/unused resources (e.g., detached volumes, unassociated IPs).Export graph: Use
exportto save the graph as GEXF (Gephi), JSON (sigma.js), or Markdown.Dump data: Use
dumpto save raw resource data for later offline analysis.Agent-friendly: Includes progress notifications, structured errors, and workflow guidance, supporting 81 AWS services.
Allows AI agents to scan AWS accounts, build resource relationship graphs, and detect unused/orphaned resources across 65+ AWS services.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@@gnaws/mcp scan my AWS account and find any unused resources"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
@gnaws/mcp
Let your AI agent see what's beneath your cloud.
MCP (Model Context Protocol) server for @gnaws/core — expose AWS resource scanning, graph building, and unused resource detection as tools for AI agents.
What is this?
An MCP server that gives AI agents (Claude, Kiro, Cursor, etc.) the ability to:
Scan your AWS account and build a resource relationship graph
Load previously dumped data for offline analysis
Detect unused/orphaned resources (detached volumes, unassociated IPs, empty load balancers, etc.)
Export the graph to GEXF (Gephi), JSON (sigma.js), or Markdown
Dump raw resource data for later use
Related MCP server: CloudGuard MCP
Installation
npm install -g @gnaws/mcp
# or run without installing:
npx @gnaws/mcpRequires Node.js >= 24.
MCP Client Configuration
Kiro
Add to .kiro/settings/mcp.json:
{
"mcpServers": {
"gnaws": {
"command": "npx",
"args": ["@gnaws/mcp"]
}
}
}Claude Desktop
Add to claude_desktop_config.json:
{
"mcpServers": {
"gnaws": {
"command": "npx",
"args": ["@gnaws/mcp"]
}
}
}VS Code (GitHub Copilot)
Add to .vscode/mcp.json:
{
"servers": {
"gnaws": {
"command": "npx",
"args": ["@gnaws/mcp"]
}
}
}Cursor
Add to .cursor/mcp.json (project) or ~/.cursor/mcp.json (global):
{
"mcpServers": {
"gnaws": {
"command": "npx",
"args": ["@gnaws/mcp"]
}
}
}Available Tools
Tool | Description | Requires |
| Check server state (loaded? how many nodes/edges?) | — |
| Scan AWS resources live with a profile | AWS credentials |
| Load from a dump directory (offline) | Dump path |
| Find unused/orphaned resources |
|
| Export graph to gexf/json/md/csv |
|
| Save raw data for offline use |
|
| List enabled AWS regions |
|
Example Conversations
User: Show me the unused resources in my AWS account
Agent: callsscanwith profile → callsdetect→ presents findings
User: Load the dump from ./data and export a graph
Agent: callsloadwith path → callsexportwith format "gexf"
User: What's the state of the gnaws server?
Agent: callsstatus→ reports no data loaded, suggestsscanorload
Features
Progress notifications — long-running scans report progress to the agent
Error handling — every tool returns structured errors with actionable guidance
Workflow guidance — tool responses tell the agent what to call next
Offline mode — load from dumps without AWS credentials
81 AWS services — EC2, Lambda, S3, RDS, ECS, EKS, DynamoDB, and many more
Log Level
All logging goes to stderr (safe for MCP stdio transport). Control verbosity with:
LOG_LEVEL=debug npx @gnaws/mcpAvailable levels: debug, info, warn, error, silent (default: info).
Development
# Build
npm run build
# Dev mode (tsx with hot reload)
npm run dev
# Type-check
npm run typecheck
# Lint
npm run lint
# Test with MCP Inspector
npx @modelcontextprotocol/inspector npx @gnaws/mcpContributing
See CONTRIBUTING.md.
Support
If GNAWS saves you money on your AWS bill, consider sponsoring the project.
License
AGPL-3.0 — see LICENSE.
Not affiliated with or endorsed by Amazon Web Services.
Available Tools
7 toolsdetectDetect Unused ResourcesA
Detect structurally unused/orphaned resources in the loaded graph. Requires 'scan' or 'load' to be called first. Optionally export findings to a file (.json or .md).
Inputs: outputPath.
dumpDump ResourcesA
Dump loaded resources to a directory for offline use. Requires 'scan' or 'load' to be called first. The output can later be used with 'load' for offline analysis.
Inputs: path.
exportExport GraphA
Export the resource graph to a file. Requires 'scan' or 'load' to be called first. Supported formats: gexf (Gephi), json (sigma.js viewer), md (markdown report), csv (flat inventory sheet).
Inputs: format (required), path.
loadLoad Cached ResourcesA
Load resources from a previously dumped directory (offline mode). No AWS credentials needed. After loading, use 'regions', 'detect', or 'export' to work with the data.
Inputs: path (required).
regionsList RegionsA
List enabled AWS regions from the loaded inventory. Requires 'scan' or 'load' to be called first.
Inputs: no named parameters.
scanScan AWS ResourcesA
Scan AWS resources live using an AWS profile. This builds an in-memory graph of all resources and their relationships. This is a long-running operation (may take several minutes). After scanning, use 'regions' to list regions, 'detect' to find unused resources, 'export' to export the graph, or 'dump' to save raw data for offline use.
Inputs: profile (required).
statusServer StatusA
Check the current state of the gnaws server: whether resources are loaded, graph size, and available actions. Call this first to understand what tools are available.
Inputs: no named parameters.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 7 tools
Each tool maps to a distinct action (scan live, load offline, detect orphans, export graph, dump raw data, list regions, show status), but export and dump both involve saving data and detect can also write findings to a file, creating mild overlap. Overall boundaries are clear enough for an agent to select correctly.
All tool names are single lowercase words following a simple command-style convention (scan, load, detect, export, dump, status). The only non-verb, regions, still fits the same flat lowercase pattern, so there is no style mixing.
Seven tools is well-scoped for an AWS resource graph scanning and orphan detection server. Each tool supports a distinct stage in the workflow without redundancy or bloat.
The core workflow is complete: scan or load builds the graph, status confirms readiness, regions summarizes scope, detect finds orphans, dump enables offline reuse, and export produces output. A minor gap is the lack of a direct resource-listing/query tool, though export formats can serve that purpose.
Maintenance
Related MCP Connectors
AWS cloud security scanners for AI agents — S3, IAM, EC2, EKS, RDS, CloudTrail, CloudWatch Logs
Unified API to query AWS, GCP, Azure and generate Terraform/CLI execution kits for AI agents.
AI supply-chain BOM: agents, MCP servers, packages and recorded reach. Scan and investigate via MCP.
Verified AI free tiers plus source-backed agent and MCP discovery monitoring.
Related MCP Servers
- FlicenseNot gradedqualityBmaintenanceEnables AI to scan AWS accounts, analyze attack paths, and verify security fixes on a read-only graph of cloud resources.5-
- FlicenseNot gradedqualityDmaintenanceA read-only MCP server for inspecting AWS resources, detecting misconfigurations, and estimating costs across EC2, S3, and IAM, enabling agents to safely query and analyze cloud infrastructure.-
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to query multi-cloud costs, inventory, waste, and commitments across AWS, GCP, Cloudflare, and OVH through read-only MCP tools.Apache 2.0
- FlicenseNot gradedqualityAmaintenanceEnables users to analyze AWS cloud costs, audit for wasted resources like stopped EC2 instances and unattached EBS volumes, and check budget status through natural language in any MCP-compatible AI assistant. Supports multi-profile and multi-region querying while keeping AWS credentials local to the user's machine.-