使用说明

项目简介

本项目是一个基于 Amazon Bedrock 构建的 AWS 云资源对话式助手。它利用 Model Context Protocol (MCP) 服务器作为桥梁,将自然语言指令转换为 AWS CLI 命令执行,帮助用户通过聊天的方式管理和查询 AWS 资源。用户可以通过友好的 Web 界面与 AI 助手对话,实现例如查看 S3 存储桶、创建 EC2 实例、查询账单等操作。

主要功能点

  • 自然语言操作 AWS 云资源: 用户可以使用自然语言提问或下达指令,例如 “列出我的 S3 存储桶” 或 “创建一个 EC2 实例”,无需手动编写 AWS CLI 命令。
  • 集成 AWS CLI 工具: 通过 MCP 服务器集成 AWS CLI,AI 助手可以实际执行 AWS 命令,与 AWS 云平台进行交互。
  • AI 驱动的智能助手: 利用 Amazon Bedrock 的强大语言模型(如 Claude),理解用户意图,并生成和执行相应的 AWS CLI 命令。
  • 实时思考过程展示: Web 界面可以实时展示 AI 助手的思考过程,帮助用户理解 AI 如何将自然语言问题转化为 AWS CLI 命令。
  • 友好的 Web 界面: 使用 Streamlit 构建交互式 Web 界面,用户可以方便地进行对话和操作。

安装步骤

  1. 克隆仓库:

    git clone https://github.com/blait/mcp-bedrock-inline-agent
    cd mcp-bedrock-inline-agent
  2. 创建并激活虚拟环境:

    python3 -m venv .venv
    source .venv/bin/activate  # Linux/macOS
    # 或
    .venv\Scripts\activate  # Windows
  3. 安装 Python 依赖:

    pip install -r requirements.txt

    'requirements.txt' 文件包含了 'streamlit', 'boto3', 'mcp' 等必要的 Python 库。

  4. 安装 Amazon Bedrock Inline Agent SDK:

    git clone https://github.com/awslabs/amazon-bedrock-agent-samples.git
    cd amazon-bedrock-agent-samples/src/InlineAgent
    pip install -e .
    cd ../../../mcp-bedrock-inline-agent # 返回主仓库目录
  5. 拉取 Docker 镜像:

    docker pull ghcr.io/alexei-led/aws-mcp-server:latest

    此 Docker 镜像包含了 MCP 服务器和 AWS CLI 工具。

  6. 配置 AWS 凭证:

    • 确保您的 AWS 凭证已配置在 '~/.aws/credentials' 文件中,并具有操作 AWS 资源的权限。
    [default]
    aws_access_key_id = YOUR_ACCESS_KEY
    aws_secret_access_key = YOUR_SECRET_KEY
    region = YOUR_PREFERRED_REGION

服务器配置

本项目实际使用 Docker 镜像 'ghcr.io/alexei-led/aws-mcp-server:latest' 作为 MCP 服务器,并在 'aws_chat_with_thoughts_stream.py' 脚本中通过以下配置启动:

{
  "server name": "awscli-mcp-server",
  "command": "docker",
  "args": [
    "run",
    "-i",
    "--rm",
    "-v",
    "~/.aws:/home/appuser/.aws:ro",
    "ghcr.io/alexei-led/aws-mcp-server:latest"
  ],
  "description": "配置用于连接 AWS CLI MCP 服务器的 Docker 命令",
  "notes": [
    "'-i':  保持STDIN打开,即使没有连接。",
    "'--rm': 容器退出后自动删除。",
    "'-v ~/.aws:/home/appuser/.aws:ro':  将宿主机的 AWS 凭证目录挂载到容器中,以只读方式挂载,确保容器内 AWS CLI 可以使用您的 AWS 凭证。"
    "'ghcr.io/alexei-led/aws-mcp-server:latest':  使用的 Docker 镜像,包含了 MCP 服务器和 AWS CLI 工具。"
  ]
}

注意: 上述 JSON 配置信息描述了 MCP 客户端 ('aws_chat_with_thoughts_stream.py') 如何配置并启动 MCP 服务器 (Docker 镜像)。 实际的 MCP 服务器代码和配置存在于 'ghcr.io/alexei-led/aws-mcp-server:latest' Docker 镜像中,用户无需直接配置 MCP 服务器。

基本使用方法

  1. 激活虚拟环境 (如果尚未激活):

    source .venv/bin/activate  # Linux/macOS
    # 或
    .venv\Scripts\activate  # Windows
  2. 运行 Streamlit 应用:

    streamlit run aws_chat_with_thoughts_stream.py
  3. 在浏览器中打开应用:

    • 默认地址为 http://localhost:8501。
    • 在 Web 界面中,您可以输入关于 AWS 的问题或指令,与 AI 助手进行对话,管理您的 AWS 云资源。

信息

分类

开发者工具