Skip to main content
Glama
ysbzc2022

RunningHub Image Gen MCP Plugin

by ysbzc2022
README.md
# RunningHub Image Gen MCP Plugin

A Codex MCP plugin for generating images via RunningHub's seedream-v5-lite model.

## Prerequisites

- Python >= 3.11
- [uv](https://docs.astral.sh/uv/) package manager
- A RunningHub API key (set as `RUNNINGHUB_API_KEY`)

## Install

```bash
cd work/runninghub-image-gen
uv sync
```

## Usage

### Environment variable

```bash
export RUNNINGHUB_API_KEY=your-api-key-here
```

### Tools

| Tool | Description |
|------|-------------|
| `text_to_image` | Submit a text-to-image task, returns taskId |
| `query_task` | Poll task status/results by taskId |
| `run_text_to_image` | Submit + poll until complete |

### Available parameters

- `prompt` (required) — Text description of the image
- `width` / `height` — Image dimensions in pixels
- `max_images` — Number of images to generate
- `sequential_image_generation` — "enabled" or "disabled"
- `tools_type` — e.g. "web_search"

### Running standalone

```bash
RUNNINGHUB_API_KEY=your-key uv run runninghub-image-gen
```

## API

- Submit: `POST /openapi/v2/seedream-v5-lite/text-to-image`
- Query:  `POST /openapi/v2/query`

TDQS

A3.9/5.0

Scored across 3 tools

Disambiguation3/5

The tools have clear descriptions but overlap: text_to_image and run_text_to_image both submit tasks, with run_text_to_image combining submission and polling. An agent might be uncertain which to use, though the descriptions help distinguish asynchronous vs synchronous workflows.

Naming Consistency2/5

Naming is mixed: 'query_task' and 'run_text_to_image' follow a verb_noun pattern, but 'text_to_image' lacks a verb and reads as a noun phrase. The patterns are inconsistent, reducing predictability.

Tool Count4/5

Three tools is minimal but reasonable for a focused plugin covering async submission, polling, and a combined sync call. It is slightly under the typical range but not problematic.

Completeness3/5

Covers the core workflow of submitting and retrieving image generation tasks, but lacks obvious operations like canceling tasks or listing all tasks. This leaves notable gaps for a full lifecycle.

Maintenance

ActivityStale
ResponsivenessNo issues