MCP HubMCP Hub
rishikavikondala

mcp-server-aws

by: rishikavikondala

A Model Context Protocol server implementation for operations on AWS resources

101created 04/12/2024
Visit
AWS
Protocol

📌Overview

Purpose: The AWS MCP Server aims to provide a robust implementation of the Model Context Protocol (MCP) for managing AWS services, specifically S3 and DynamoDB, with comprehensive logging and auditing capabilities.

Overview: The AWS MCP Server supports seamless integration with AWS operations, allowing users to perform various actions on S3 and DynamoDB. All operations are automatically logged for easy access via an audit resource endpoint. The server is listed as a Community Server within the MCP repository, promoting collaboration and usability.

Key Features:

  • Automated Operation Logging: Every operation conducted through the server is logged automatically, ensuring transparency and facilitating audits through the audit://aws-operations resource endpoint.

  • Comprehensive AWS Service Support: The server enables a wide range of operations for S3 (creation, listing, uploading, and deleting objects) and DynamoDB (including table creation, item manipulation, querying, and batch operations), enhancing the versatility and efficiency of AWS service management.


AWS MCP Server

A Model Context Protocol server implementation for AWS that supports S3 and DynamoDB services. All operations are automatically logged and can be accessed through the audit://aws-operations resource endpoint.

Running Locally with the Claude Desktop App

Installing via Smithery

To install the AWS MCP Server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install mcp-server-aws --client claude

Manual Installation

  1. Clone this repository.

  2. Set up your AWS credentials. This server requires an IAM user with RW permissions for your AWS account for S3 and DynamoDB:

    • Environment variables: AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_REGION (defaults to us-east-1)
    • Default AWS credential chain (set up via AWS CLI with aws configure)
  3. Add the following to your claude_desktop_config.json file located at:

    • MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%/Claude/claude_desktop_config.json
    "mcpServers": {
      "mcp-server-aws": {
        "command": "uv",
        "args": [
          "--directory",
          "/path/to/repo/mcp-server-aws",
          "run",
          "mcp-server-aws"
        ]
      }
    }
    
  4. Install and open the Claude desktop app.

  5. Confirm the setup by asking Claude to perform a read/write operation, such as creating an S3 bucket. Use the debugging tools provided in the MCP documentation if needed.

Available Tools

S3 Operations

  • s3_bucket_create: Create a new S3 bucket
  • s3_bucket_list: List all S3 buckets
  • s3_bucket_delete: Delete an S3 bucket
  • s3_object_upload: Upload an object to S3
  • s3_object_delete: Delete an object from S3
  • s3_object_list: List objects in an S3 bucket
  • s3_object_read: Read an object's content from S3

DynamoDB Operations

Table Operations

  • dynamodb_table_create: Create a new DynamoDB table
  • dynamodb_table_describe: Get details about a DynamoDB table
  • dynamodb_table_delete: Delete a DynamoDB table
  • dynamodb_table_update: Update a DynamoDB table

Item Operations

  • dynamodb_item_put: Put an item into a DynamoDB table
  • dynamodb_item_get: Get an item from a DynamoDB table
  • dynamodb_item_update: Update an item in a DynamoDB table
  • dynamodb_item_delete: Delete an item from a DynamoDB table
  • dynamodb_item_query: Query items in a DynamoDB table
  • dynamodb_item_scan: Scan items in a DynamoDB table

Batch Operations

  • dynamodb_batch_get: Batch get multiple items from DynamoDB tables
  • dynamodb_item_batch_write: Batch write operations (put/delete) for DynamoDB items
  • dynamodb_batch_execute: Execute multiple PartiQL statements in a batch

TTL Operations

  • dynamodb_describe_ttl: Get the TTL settings for a table
  • dynamodb_update_ttl: Update the TTL settings for a table