MCP HubMCP Hub
manascb1344

together-mcp-server

by: manascb1344

MCP server enabling high-quality image generation via Together AI's Flux.1 Schnell model.

8created 26/02/2025
Visit
AI
image-generation

📌Overview

Purpose: To provide a streamlined server for generating high-quality images using the Flux.1 Schnell model via Together AI, with a standardized interface for image generation parameters.

Overview: The Image Generation MCP Server facilitates the creation of images through a Model Context Protocol (MCP) server setup, allowing developers to easily integrate and customize image generation in their applications. It leverages the advanced capabilities of the Flux.1 Schnell model to ensure high-quality outputs.

Key Features:

  • High-Quality Image Generation: Utilizes the Flux.1 Schnell model to produce detailed and visually appealing images based on text prompts.

  • Customizable Dimensions: Allows users to specify the width and height of images, accommodating various requirements and ensuring flexibility in output sizes.

  • Clear Error Handling: Implements robust error management for prompt validation and API calling issues, making it easier for developers to troubleshoot.

  • Easy Integration: Designed for compatibility with MCP clients, facilitating straightforward integration into existing systems.

  • Optional Image Saving: Offers functionality to save generated images in PNG format to disk, enhancing usability for end-users.


Image Generation MCP Server

A Model Context Protocol (MCP) server enabling seamless generation of high-quality images using the Flux.1 Schnell model via Together AI. This server provides a standardized interface to specify image generation parameters.

Features

  • High-quality image generation powered by the Flux.1 Schnell model
  • Support for customizable dimensions (width and height)
  • Clear error handling for prompt validation and API issues
  • Easy integration with MCP-compatible clients
  • Optional image saving to disk in PNG format

Installation

npm install together-mcp

Or run directly:

npx together-mcp@latest

Configuration

Add to your MCP server configuration:

{
  "mcpServers": {
    "together-image-gen": {
      "command": "npx",
      "args": ["together-mcp@latest -y"],
      "env": {
        "TOGETHER_API_KEY": "<API KEY>"
      }
    }
  }
}

Usage

The server provides one tool: generate_image

Using generate_image

This tool requires only one required parameter — the prompt. All other parameters are optional with sensible defaults.

Parameters

{
  // Required
  prompt: string;          // Text description of the image to generate

  // Optional with defaults
  model?: string;          // Default: "black-forest-labs/FLUX.1-schnell-Free"
  width?: number;          // Default: 1024 (min: 128, max: 2048)
  height?: number;         // Default: 768 (min: 128, max: 2048)
  steps?: number;          // Default: 1 (min: 1, max: 100)
  n?: number;              // Default: 1 (max: 4)
  response_format?: string;// Default: "b64_json" (options: ["b64_json", "url"])
  image_path?: string;     // Optional: Path to save the generated image as PNG
}

Minimal Request Example

Only the prompt is required:

{
  "name": "generate_image",
  "arguments": {
    "prompt": "A serene mountain landscape at sunset"
  }
}

Full Request Example with Image Saving

Override any defaults and specify a path to save the image:

{
  "name": "generate_image",
  "arguments": {
    "prompt": "A serene mountain landscape at sunset",
    "width": 1024,
    "height": 768,
    "steps": 20,
    "n": 1,
    "response_format": "b64_json",
    "model": "black-forest-labs/FLUX.1-schnell-Free",
    "image_path": "/path/to/save/image.png"
  }
}

Response Format

The response will be a JSON object containing:

{
  "id": string,
  "model": string,
  "object": "list",
  "data": [
    {
      "timings": {
        "inference": number
      },
      "index": number,
      "b64_json": string, // Present if response_format is "b64_json"
      "url": string       // Present if response_format is "url"
    }
  ]
}

If image_path was provided and save was successful, the response will confirm the save location.

Default Values

ParameterDefault
model"black-forest-labs/FLUX.1-schnell-Free"
width1024
height768
steps1
n1
response_format"b64_json"

Important Notes

  1. Only the prompt parameter is required.
  2. Optional parameters use defaults if not provided.
  3. Provided parameters must meet constraints (e.g., width/height range).
  4. Base64 responses can be large; use URL format for larger images.
  5. Ensure directory exists and is writable when saving images.

Prerequisites

  • Node.js >= 16
  • Together AI API key:
    1. Sign in at api.together.xyz
    2. Navigate to API Keys settings.
    3. Create and copy a new API key for MCP configuration.

Dependencies

{
  "@modelcontextprotocol/sdk": "0.6.0",
  "axios": "^1.6.7"
}

Development

Clone and build the project:

git clone https://github.com/manascb1344/together-mcp-server
cd together-mcp-server
npm install
npm run build

Available Scripts

  • npm run build - Build the TypeScript project
  • npm run watch - Watch for changes and rebuild
  • npm run inspector - Run MCP inspector

Contributing

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch
  3. Commit your changes
  4. Push the branch to your fork
  5. Open a Pull Request

Submit feature requests and bug reports via GitHub Issues. For significant changes, open an issue first to discuss.

License

This project is licensed under the MIT License. See the LICENSE file for details.