AWS Nova Canvas MCP Server

AWS Nova Canvas MCP Server

An MCP server that allows you to generate and edit images using Amazon Bedrock's Nova Canvas model, supporting features like text-to-image generation, inpainting, outpainting, image variation, and background removal.

Category
Visit Server

Tools

text_to_image

Generate an image from a text prompt. After generation, you can use the show_image tool to view the thumbnail. Args: prompt: Text prompt for generating an image (maximum 1024 characters) negative_prompt: Text prompt for excluding attributes from generation (maximum 1024 characters) height: Image height (pixels) width: Image width (pixels) num_images: Number of images to generate (maximum 4) cfg_scale: Image matching degree for the prompt (1-20) seed: Seed value for image generation open_browser: Whether to open the image in the browser after generation Returns: Dict: Dictionary containing the file path of the generated image and the thumbnail image

inpainting

Inpaint a specific part of an image using a text mask prompt. Args: image_path: File path of the original image prompt: Text prompt for the area to be inpainted mask_prompt: Text prompt for specifying the area to be masked (e.g., "window", "car") negative_prompt: Text prompt for excluding attributes from generation height: Output image height (pixels) width: Output image width (pixels) cfg_scale: Image matching degree for the prompt (1-20) open_browser: Whether to open the image in the browser after generation Returns: Dict: Dictionary containing the file path of the inpainted image

outpainting

Expand the image to create an outpainting. Args: image_path: File path of the original image mask_image_path: File path of the mask image prompt: Text describing the content to be generated in the outpainting area negative_prompt: Text specifying attributes to exclude from generation outpainting_mode: Outpainting mode (DEFAULT or PRECISE) height: Output image height (pixels) width: Output image width (pixels) cfg_scale: Prompt matching degree (1-20) Returns: Dict: Dictionary containing the file path of the outpainted image

image_variation

Generate a new variation of the input image while maintaining its content. Args: image_paths: List of file paths of the original images (1-5) prompt: Text for generating a variation image (optional) negative_prompt: Text specifying attributes to exclude from generation similarity_strength: Similarity between the original image and the generated image (0.2-1.0) height: Output image height (pixels) width: Output image width (pixels) cfg_scale: Prompt matching degree (1-20) Returns: Dict: Dictionary containing the file path of the variation image

image_conditioning

Generate an image that follows the layout and composition of a reference image. Args: image_path: File path of the reference image prompt: Text describing the image to be generated negative_prompt: Text specifying attributes to exclude from generation control_mode: Control mode (CANNY_EDGE, etc.) height: Output image height (pixels) width: Output image width (pixels) cfg_scale: Prompt matching degree (1-20) Returns: Dict: Dictionary containing the file path of the generated image

color_guided_generation

Generate an image using a specified color palette. Args: prompt: Text describing the image to be generated colors: List of color codes (1-10 hex color codes, e.g., "#ff8080") reference_image_path: File path of the reference image (optional) negative_prompt: Text specifying attributes to exclude from generation height: Output image height (pixels) width: Output image width (pixels) cfg_scale: Prompt matching degree (1-20) ctx: MCP context Returns: Dict: Dictionary containing the file path of the generated image

background_removal

Remove the background of an image automatically. Args: image_path: File path of the original image ctx: MCP context Returns: Dict: Dictionary containing the file path of the image with the background removed

show_image

Create a thumbnail of the image and return it. The maximum size is 1048578. Supports URLs or local file paths. Args: image_path: Image URL or local file path width: Output image width (pixels) height: Output image height (pixels) Returns: Image: Thumbnail image

README

<h2 align="center"> AWS Nova Canvas MCP Server </h2>

<div align="center"> <img src="https://img.shields.io/badge/Python-3.12-3776AB?logo=python"/> <img src="https://img.shields.io/badge/Amazon-Bedrock-FF9900?logo=amazon&logoColor=white"/> </div>

An MCP server that allows you to generate and edit images using the Nova Canvas model of Amazon Bedrock.

Features

  • Text to Image
  • Image Inpainting
  • Image Outpainting
  • Image Variation
  • Image Conditioning
  • Color Guided Generation
  • Background Removal
  • Show Image Thumbnails

Installation

Claude Desktop Setup

  1. Clone the repository
git clone https://github.com/yunwoong/aws-nova-canvas-mcp.git
  1. Configure Claude Desktop
    • Click on Claude > Settings from the Claude Desktop menu.
    • When the popup appears, select Developer from the left menu, and click the Edit Settings button.
    • This will open a folder containing the settings file. The name of this settings file is:
    • claude_desktop_config.json

<div align="center"> <img src="https://blog.kakaocdn.net/dn/bIl5q9/btsM3U5Vjw5/aGruWqP3wNmWZ1sKrnhbPk/img.png" width="70%"> </div>

  1. Add the following content to the settings file (Python version):

    • python version

      "nova-canvas": {
        "command": "uv",
        "args": [
          "--directory",
          "Path to clone folder",
          "run",
          "server.py"
        ],
        "env": {
          "AWS_PROFILE": "YOUR_AWS_PROFILE"
        }
      }
      

      ✅ Only AWS_PROFILE is required. Other variables like AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_REGION, and PORT are optional and not necessary if your AWS profile is set correctly.

      ​ ⚙️ If the setup is completed successfully, you can see that the "nova-canvas" item has been added in Claude > Settings > Developer tab. ⚠️ Important: MCP settings only work on the Claude desktop app, not the Claude web browser version

Image Save Location

By default, all generated or edited images will be saved in the following directory:

  • macOS / Linux: ~/Desktop/aws-nova-canvas
  • Windows: C:\Users\YourUsername\Desktop\aws-nova-canvas

📁 If no image save path is specified, the application will automatically create and use the folder above.

<div align="center"> <img src="https://blog.kakaocdn.net/dn/bpUWLj/btsM4kJZC6v/HHQfQctKsevWnK6LCKEkv0/img.png" width="70%"> </div>

Usage Example

<div align="center"> <img src="https://blog.kakaocdn.net/dn/uNi8L/btsM4pEjswV/hSfxo1gHzPvpXPsEEyuijk/img.gif" width="70%"> </div>

Limitations

  • Prompt text supports up to 1024 characters
  • Image generation allows up to 3 images at a time
  • Image variation requires 1-5 reference images
  • Color guide supports 1-10 color codes

License

MIT License

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured