使用说明

项目简介

AWS CLI MCP 服务器是一个基于 Model Context Protocol (MCP) 构建的后端服务,旨在桥接 MCP 客户端(如 Claude Desktop)和 AWS 命令行工具 (AWS CLI)。它允许 AI 助手通过标准的 MCP 协议,安全、可控地执行 AWS CLI 命令,从而实现 AWS 云资源的管理和信息查询等功能。

主要功能点

  • AWS CLI 命令文档查询: 允许 AI 助手检索 AWS 服务的详细命令文档,帮助用户理解和使用 AWS CLI。
  • AWS CLI 命令执行: 允许 AI 助手执行 AWS CLI 命令,并以结构化的格式返回结果,方便 AI 理解和处理。
  • Docker 部署: 提供 Docker 镜像,支持多架构 (AMD64/ARM64),简化部署流程。
  • Python 部署: 支持 Python 环境部署,方便开发和定制。
  • AWS 认证集成: 利用主机上的 AWS 认证信息,无需额外配置。

安装步骤

方式一:使用 Docker (推荐)

  1. 克隆仓库:

    git clone https://github.com/alexei-led/aws-mcp-server.git
    cd aws-mcp-server
  2. 启动 Docker 容器:

    docker compose -f deploy/docker/docker-compose.yml up -d

    这将会在后台启动 AWS MCP 服务器 Docker 容器。

方式二:使用 Python

  1. 克隆仓库:

    git clone https://github.com/alexei-led/aws-mcp-server.git
    cd aws-mcp-server
  2. 创建并激活虚拟环境:

    python -m venv venv
    source venv/bin/activate   # Linux/macOS
    # venv\Scripts\activate  # Windows
  3. 安装 Python 依赖并运行服务器:

    pip install -e .
    python -m aws_mcp_server

    这将启动 Python 版本的 AWS MCP 服务器。

服务器配置 (MCP 客户端配置)

以下 JSON 配置信息用于配置 MCP 客户端 (例如 Claude Desktop) 连接到 AWS CLI MCP 服务器。您需要将此配置添加到您的 MCP 客户端设置中。

{
  "serverName": "aws-cli",
  "command": "docker",
  "args": [
    "run",
    "-i",
    "--rm",
    "-v",
    "/Users/yourusername/.aws:/root/.aws:ro",  //  挂载 AWS 认证信息目录 (请替换为您的用户目录)
    "ghcr.io/alexei-led/aws-mcp-server:latest" // 使用最新的 Docker 镜像
  ],
  "description": "AWS CLI commands and documentation"
}

参数说明:

  • serverName: 服务器名称,在 MCP 客户端中显示,可以自定义,例如 "aws-cli"。
  • command: 运行 MCP 服务器的命令,这里使用 'docker' 命令启动 Docker 容器。
  • args: 'command' 命令的参数列表。
    • 'run -i --rm': Docker 运行参数,'-i' 保持 STDIN 打开,'--rm' 容器退出后自动删除。
    • '-v /Users/yourusername/.aws:/root/.aws:ro': 重要: 将主机上的 AWS 认证信息目录挂载到容器内。请将 '/Users/yourusername/.aws' 替换为您实际的 AWS 认证信息目录路径 (通常是 '~/.aws' )。 ':ro' 表示只读挂载,提高安全性。
    • 'ghcr.io/alexei-led/aws-mcp-server:latest': AWS MCP 服务器的 Docker 镜像地址和标签。':latest' 表示使用最新稳定版本。您也可以指定特定版本,例如 'ghcr.io/alexei-led/aws-mcp-server:1.0.0'。
  • description: 服务器描述,在 MCP 客户端中显示,可以自定义。

注意:

  • Docker 路径替换: 请务必将配置中的 '/Users/yourusername/.aws' 替换为您实际的 AWS 认证信息目录路径。Windows 用户请使用 Windows 路径格式,例如 'C:/Users/yourusername/.aws'。
  • AWS 认证配置: 确保您的 AWS 认证信息 (例如 AWS Access Key ID 和 Secret Access Key,或已配置的 AWS CLI 配置文件) 在主机上已正确配置,以便 Docker 容器内的 AWS CLI 可以使用这些认证信息访问 AWS 服务。

基本使用方法

成功配置并连接 MCP 客户端后,您可以使用以下工具与 AWS MCP 服务器进行交互:

  1. describe_command 工具 (获取 AWS CLI 命令文档)

    在 MCP 客户端中,您可以调用 'describe_command' 工具来获取 AWS CLI 命令的帮助文档。例如,要获取 'aws s3 cp' 命令的文档,您可以发送如下请求:

    {
      "jsonrpc": "2.0",
      "id": 1,
      "method": "tools/describe_command",
      "params": {
        "service": "s3",
        "command": "cp"
      }
    }

    服务器会返回包含 'aws s3 cp' 命令详细文档的 JSON 响应。

  2. execute_command 工具 (执行 AWS CLI 命令)

    您可以使用 'execute_command' 工具来执行 AWS CLI 命令。例如,要列出您的 S3 存储桶,您可以发送如下请求:

    {
      "jsonrpc": "2.0",
      "id": 2,
      "method": "tools/execute_command",
      "params": {
        "command": "aws s3 ls"
      }
    }

    服务器会执行 'aws s3 ls' 命令,并返回包含命令执行结果的 JSON 响应。

请参考仓库 README.md 文件获取更详细的使用说明和安全注意事项。

信息

分类

开发者工具