使用说明

项目简介

AWS MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在为LLM(大型语言模型)客户端提供访问和操作 AWS 云资源的能力。它目前支持 AWS S3 存储服务和 DynamoDB NoSQL 数据库服务,允许LLM通过预定义的工具与这些服务进行交互,例如创建S3 bucket、上传文件、查询DynamoDB表等。所有操作都会被记录在审计日志中,方便追踪和审查。

主要功能点

  • AWS S3 服务集成: 提供一系列工具,允许LLM客户端管理S3 bucket和对象,包括创建、删除、列出bucket,上传、下载、删除对象等。
  • AWS DynamoDB 服务集成: 提供丰富的工具集,支持LLM客户端进行DynamoDB表和项目的管理操作,包括表的创建、删除、描述、更新,以及项目的增删改查、批量操作、TTL设置等。
  • 操作审计日志: 所有通过该MCP服务器执行的AWS操作都会被详细记录,并以资源的形式提供访问,方便用户查看和审计LLM客户端的AWS操作行为。
  • 易于集成: 可以通过 Smithery 或手动方式安装,并与支持MCP协议的LLM客户端(如 Claude 桌面应用)轻松集成。

安装步骤

通过 Smithery 自动安装 (推荐 Claude Desktop)

  1. 确保已安装 Node.js 和 npm。
  2. 打开终端,运行以下命令,根据提示操作即可自动安装并配置 Claude Desktop 客户端:
    npx -y @smithery/cli install mcp-server-aws --client claude

手动安装

  1. 克隆仓库: 使用 git 命令克隆 GitHub 仓库到本地:

    git clone https://github.com/rishikavikondala/mcp-server-aws
    cd mcp-server-aws
  2. 配置 AWS 凭证: AWS MCP Server 需要 AWS 账户的访问密钥和密钥以及区域信息才能正常工作。您可以通过以下两种方式配置:

    • 环境变量: 设置以下环境变量:
      • 'AWS_ACCESS_KEY_ID': 您的 AWS 访问密钥 ID
      • 'AWS_SECRET_ACCESS_KEY': 您的 AWS 密钥
      • 'AWS_REGION': AWS 区域 (默认为 'us-east-1')
    • 默认 AWS 凭证链: 如果您已经安装并配置了 AWS CLI ('aws configure'),服务器将自动使用默认凭证链。

    注意: 请确保您使用的 IAM 用户拥有 S3 和 DynamoDB 的读写权限。

  3. 配置 Claude Desktop 客户端: 如果您使用 Claude 桌面应用,需要修改其配置文件 'claude_desktop_config.json' 以添加 AWS MCP Server。

    • MacOS: '~/Library/Application\ Support/Claude/claude_desktop_config.json'
    • Windows: '%APPDATA%/Claude/claude_desktop_config.json'

    在 'claude_desktop_config.json' 文件中,找到 '"mcpServers"' 部分(如果没有则手动创建),添加以下配置信息:

    "mcpServers": {
      "mcp-server-aws": {
        "command": "uv",
        "args": [
          "--directory",
          "/path/to/repo/mcp-server-aws",  // 将 "/path/to/repo/mcp-server-aws" 替换为您克隆仓库的本地路径
          "run",
          "mcp-server-aws"
        ]
      }
    }

    配置参数说明:

    • '"command": "uv"': 指定运行服务器的命令。'uv' 是一个快速的 Python 包安装器和运行器,仓库使用了 'uv' 来运行服务器。您需要确保安装了 'uv' (可以使用 'pip install uv' 安装)。
    • '"args": [...]"': 传递给 'uv' 命令的参数列表。
      • '"--directory", "/path/to/repo/mcp-server-aws"': 指定仓库的本地路径。请务必将 '/path/to/repo/mcp-server-aws' 替换为您实际克隆仓库的路径。
      • '"run", "mcp-server-aws"': 指示 'uv' 运行 'mcp-server-aws' 包,这会执行 'src/mcp_server_aws/init.py' 文件中的 'main' 函数,启动 MCP 服务器。
  4. 启动 Claude 桌面应用: 安装并打开 Claude 桌面应用

基本使用方法

配置完成后,您可以在 Claude 桌面应用中,通过自然语言指令调用 AWS MCP Server 提供的工具。例如,您可以尝试以下指令:

  • "创建一个名为 'my-test-bucket' 的 S3 bucket" (对应 's3_bucket_create' 工具)
  • "列出我所有的 S3 bucket" (对应 's3_bucket_list' 工具)
  • "将文件 'my_document.txt' 上传到名为 'my-test-bucket' 的 S3 bucket,对象键为 'documents/my_document.txt'" (对应 's3_object_upload' 工具,需要将文件内容转换为 Base64 编码)
  • "查询 DynamoDB 表 'my-table' 中 'id' 为 '123' 的项目" (对应 'dynamodb_item_get' 工具)

如果配置正确,Claude 应该能够理解您的指令,并调用相应的 AWS 工具执行操作。您可以通过查看审计日志资源 ('audit://aws-operations') 来确认操作是否成功执行。

信息

分类

数据库与文件