使用说明

项目简介

Amazon Nova Canvas Expert MCP服务器是一个基于Model Context Protocol (MCP) 构建的应用后端,旨在为LLM(大型语言模型)客户端提供通过Amazon Nova Canvas生成图像的能力。该服务器集成了Amazon Bedrock服务,允许LLM客户端调用工具来生成高质量的图像,并可根据文本描述或颜色调色板进行定制化生成。

主要功能点

  • 文本到图像生成: 通过 'generate_image' 工具,根据文本提示生成图像。支持详细的参数配置,如图像尺寸、质量、风格强度、种子值和生成数量。
  • 颜色引导的图像生成: 通过 'generate_image_with_colors' 工具,除了文本提示外,还可以指定颜色调色板来引导图像生成,从而实现更精细的风格控制。
  • 工作空间集成: 工具设计考虑了与IDE工作空间的集成,允许LLM客户端指定工作空间目录,确保生成的图像可以保存到用户当前的项目中。
  • 灵活的部署方式: 支持通过标准stdio或SSE (Server-Sent Events) 传输协议运行,可以根据客户端的需求选择合适的传输方式。

安装步骤

由于仓库中只提供了部分代码片段,以下安装步骤基于对Python项目的通用理解进行推测。实际安装步骤可能需要参考完整的仓库文档或进行调整。

  1. 克隆仓库 (假设仓库完整且可克隆):

    git clone https://github.com/awslabs/mcp
    cd mcp/src/mcp-nova-canvas-expert
  2. 安装依赖 (假设项目使用 'pip' 管理依赖,并且有 'requirements.txt' 文件或 'pyproject.toml' 中声明依赖):

    pip install -r requirements.txt  # 如果有 requirements.txt 文件
    # 或者
    pip install .                # 如果项目使用 pyproject.toml 进行打包

    根据 'server.py' 文件头的注释 'dependencies = ['pydantic', 'boto3']',如果上述步骤不可行,可以尝试手动安装:

    pip install pydantic boto3 loguru mcp-server

    注意: 'mcp-server' 依赖可能需要根据实际情况进行调整,这里假设项目使用了 'mcp-server' 库。

服务器配置

MCP客户端需要配置服务器的启动命令和参数才能连接到 Amazon Nova Canvas Expert MCP服务器。以下是一个可能的配置示例 (JSON 格式):

{
  "serverName": "nova-canvas-expert-server",
  "command": "python",
  "args": [
    "-m",
    "awslabs.mcp_nova_canvas_expert.server"
  ],
  "transport": "stdio",
  "description": "Amazon Nova Canvas Expert MCP Server for image generation"
}

参数注释:

  • 'serverName': 服务器的名称,客户端用于标识和管理连接。可以自定义。
  • 'command': 启动服务器的可执行命令。这里假设使用 'python' 解释器。
  • 'args': 传递给 'command' 的参数列表。
    • '"-m"': Python 的 '-m' 参数用于将模块作为脚本运行。
    • '"awslabs.mcp_nova_canvas_expert.server"': 指定要运行的 Python 模块。这需要根据 'server.py' 文件的模块路径进行调整。
  • 'transport': 指定 MCP 服务器使用的传输协议。 '"stdio"' 表示使用标准输入/输出进行通信。 如果需要使用 SSE 协议,可以将 '"transport"' 设置为 '"sse"',并添加 '--sse' 参数到 'args' 中,例如:
    {
      "serverName": "nova-canvas-expert-server-sse",
      "command": "python",
      "args": [
        "-m",
        "awslabs.mcp_nova_canvas_expert.server",
        "--sse",
        "--port",
        "8888"  // 可选,指定SSE服务器端口,默认为 8888
      ],
      "transport": "sse",
      "description": "Amazon Nova Canvas Expert MCP Server with SSE transport"
    }
  • 'description': 服务器的描述信息,用于客户端界面展示。可以自定义。

重要: 请根据实际仓库代码和部署环境,调整上述配置信息。特别是 'command' 和 'args' 部分,需要确保能够正确启动 'server.py' 文件中定义的 MCP 服务器。 并且需要配置 AWS 凭证和区域,通常通过环境变量 'AWS_PROFILE' 或 'AWS_REGION' 来配置,具体参考 AWS Bedrock 的文档。

基本使用方法

  1. 启动 MCP 服务器: 根据上述配置,在终端或通过 MCP 客户端启动 Amazon Nova Canvas Expert MCP 服务器。

  2. 配置 MCP 客户端: 在支持 MCP 协议的 LLM 客户端中,添加上述服务器配置信息。客户端将使用这些配置连接到 MCP 服务器。

  3. 调用工具: 在 LLM 客户端中,通过自然语言指令或代码调用服务器提供的工具,例如:

    • 使用 'generate_image' 工具生成图像,例如 "生成一张猫在海滩上玩耍的图像"。
    • 使用 'generate_image_with_colors' 工具生成指定颜色风格的图像,例如 "生成一张日落风景的图像,使用 #FFD700 和 #B87333 颜色"。
  4. 获取结果: MCP 服务器将处理客户端的请求,调用 Amazon Nova Canvas API 生成图像,并将生成的图像路径返回给客户端。客户端可以根据返回的路径访问和展示生成的图像。

信息

分类

AI与计算