使用说明

项目简介

本项目 'AWS Nova Canvas MCP Server' 是一个基于 Model Context Protocol (MCP) 的服务器实现,它利用 Amazon Bedrock 平台的 Nova Canvas 模型,为 MCP 客户端(如 Claude Desktop 桌面应用)提供强大的图像生成和编辑能力。用户可以通过 Claude Desktop 调用此 MCP 服务器提供的工具,实现文本生成图像、图像局部修复、图像扩展、图像变体生成、风格迁移、颜色引导生成和背景移除等功能。

主要功能点

  • 文生图 (Text to Image): 根据文本描述生成全新的图像。
  • 图像修复 (Image Inpainting): 根据文本提示,修复图像的指定区域。
  • 图像外扩 (Image Outpainting): 根据文本提示,扩展图像的边界,创造更大的图像场景。
  • 图像变体 (Image Variation): 基于上传的参考图像,生成风格相似但内容略有不同的新图像。
  • 图像条件控制 (Image Conditioning): 以参考图像的构图和布局为基础,根据文本提示生成新的图像,实现风格迁移或内容替换等效果。
  • 颜色引导生成 (Color Guided Generation): 根据指定的颜色列表和文本提示生成图像,可以控制图像的整体色调。
  • 背景移除 (Background Removal): 自动移除图像的背景,突出前景主体。
  • 图像缩略图显示 (Show Image Thumbnails): 生成并显示图像的缩略图,方便预览和管理。

安装步骤

  1. 克隆仓库: 打开终端,执行以下命令克隆代码仓库到本地:

    git clone https://github.com/yunwoong7/aws-nova-canvas-mcp.git
  2. 配置 Claude Desktop 开发者设置:

    • 打开 Claude Desktop 桌面应用。
    • 点击菜单栏的 Claude > Settings (Claude > 设置)。
    • 在弹出的设置窗口中,选择左侧菜单的 Developer (开发者) 选项卡,并点击 Edit Settings (编辑设置) 按钮。
    • 这将打开一个包含 'claude_desktop_config.json' 文件的文件夹。
  3. 修改 'claude_desktop_config.json' 文件: 将以下 JSON 配置代码添加到 'claude_desktop_config.json' 文件中。 请务必将 '"Path to clone folder"' 替换为你实际克隆仓库的本地路径。

    "nova-canvas": {
      "serverName": "Nova Canvas MCP Server",
      "command": "uv",
      "args": [
        "--directory",
        "Path to clone folder",  // 替换为你的仓库克隆路径,例如 "/Users/yourname/aws-nova-canvas-mcp" (macOS/Linux) 或 "C:\\Users\\YourName\\aws-nova-canvas-mcp" (Windows)
        "run",
        "src/server.py"
      ],
      "env": {
        "AWS_ACCESS_KEY_ID": "YOUR_AWS_ACCESS_KEY_ID",  // 你的AWS访问密钥 ID
        "AWS_SECRET_ACCESS_KEY": "YOUR_AWS_SECRET_ACCESS_KEY", // 你的AWS秘密访问密钥
        "AWS_REGION": "us-east-1", // AWS 区域,默认为 us-east-1
        "PORT": "8000" // 服务器端口号,默认为 8000
      }
    }
  4. 配置环境变量 (可选): 你也可以选择将 'AWS_ACCESS_KEY_ID', 'AWS_SECRET_ACCESS_KEY', 'AWS_REGION', 'PORT' 等配置为系统环境变量,或者在项目根目录下创建 '.env' 文件进行配置。 如果你在 'claude_desktop_config.json' 中配置了 'env',则会覆盖环境变量或 '.env' 文件中的配置。

  5. 验证配置: 完成配置后,在 Claude Desktop 的 Settings > Developer (设置 > 开发者) 选项卡中,你应该能看到名为 "nova-canvas" 的自定义服务器项。

    重要提示: MCP 服务器设置仅在 Claude Desktop 桌面应用 中有效,Claude 网页版不支持 MCP 服务器

服务器配置

上述 'claude_desktop_config.json' 文件中的 '"nova-canvas"' 部分是 Claude Desktop 连接到 MCP 服务器的关键配置。

  • '"serverName"': 服务器名称,显示在 Claude Desktop 客户端中,可以自定义。
  • '"command"': 启动 MCP 服务器的命令,这里使用 'uv' 命令,假设你已经安装了 'uv' (一个快速的 Python 包安装和运行工具,类似于 'pip' 和 'venv' 的组合)。 如果你没有安装 'uv',可能需要替换为 'python3' 或 'python',并确保你的 Python 环境中安装了项目依赖。
  • '"args"': 传递给 'command' 的参数列表。
    • '"--directory"': 指定工作目录为克隆仓库的路径。
    • '"run"': 使用 'uv run' 运行 Python 脚本。
    • '"src/server.py"': 指定要运行的服务器脚本路径。
  • '"env"': 环境变量配置,传递给服务器脚本。
    • '"AWS_ACCESS_KEY_ID"': 必需,你的 AWS 访问密钥 ID,用于访问 Amazon Bedrock 服务。
    • '"AWS_SECRET_ACCESS_KEY"': 必需,你的 AWS 秘密访问密钥,用于访问 Amazon Bedrock 服务。
    • '"AWS_REGION"': 可选,AWS 区域,默认为 'us-east-1'。 确保与你的 Bedrock 服务所在区域一致。
    • '"PORT"': 可选,MCP 服务器监听的端口号,默认为 '8000'。 如果端口被占用,可以修改为其他未被占用的端口。

基本使用方法

  1. 确保 Claude Desktop 桌面应用已正确安装并配置了 "nova-canvas" MCP 服务器。

  2. 启动 Claude Desktop 应用。

  3. 在 Claude Desktop 的对话界面中,你可以通过自然语言指令调用 MCP 服务器提供的工具。 例如:

    • "使用 nova-canvas 生成一张猫的图片" (调用文生图工具)
    • "使用 nova-canvas 修复这张图片中的瑕疵" (调用图像修复工具,可能需要先上传图片)
    • "使用 nova-canvas 移除这张图片的背景" (调用背景移除工具,需要先上传图片)

    具体的工具调用方式和参数需要参考 Claude Desktop 或其他 MCP 客户端的文档和界面提示。 本项目主要负责提供 MCP 服务器端的图像处理能力,客户端如何调用取决于客户端的实现。

注意: 由于本项目是基于 Amazon Bedrock 和 Nova Canvas 模型,你需要确保你的 AWS 账户已开通 Amazon Bedrock 服务,并且有权访问 Nova Canvas 模型。 相关的 AWS 密钥需要正确配置。

信息

分类

AI与计算