@gnaws/mcp

@gnaws/mcp

Enables AI agents to scan AWS accounts, build resource relationship graphs, detect unused resources, and export data via MCP tools.

Category
Visit Server

README

@gnaws/mcp

Let your AI agent see what's beneath your cloud.

npm license node

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

Installation

npm install -g @gnaws/mcp
# or run without installing:
npx @gnaws/mcp

Requires 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
status Check server state (loaded? how many nodes/edges?) —
scan Scan AWS resources live with a profile AWS credentials
load Load from a dump directory (offline) Dump path
detect Find unused/orphaned resources scan or load
export Export graph to gexf/json/md scan or load
dump Save raw data for offline use scan or load
regions List enabled AWS regions scan or load

Example Conversations

User: Show me the unused resources in my AWS account
Agent: calls scan with profile → calls detect → presents findings

User: Load the dump from ./data and export a graph
Agent: calls load with path → calls export with format "gexf"

User: What's the state of the gnaws server?
Agent: calls status → reports no data loaded, suggests scan or load

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
  • 65+ 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/mcp

Available 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/mcp

Contributing

See CONTRIBUTING.md.

Support

If GNAWS saves you money on your AWS bill, consider sponsoring the project.

Sponsor on GitHub Sponsor on PayPal

License

AGPL-3.0 — see LICENSE.


Not affiliated with or endorsed by Amazon Web Services.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured