Catalogue IAn MCP server for image generation

YOUR PROVIDERS in ONE WORKSHOP

Cenini puts OpenRouter, fal.ai, Replicate and Google Gemini behind a single MCP tool, using your own API keys. It paints nothing and keeps nothing.

Providers:
4
Images kept:
0
The message
The lilies
The answer
Plate I, three panelsSimone Martini and Lippo MemmiThe Annunciation with Saint Margaret and Saint Ansanus, 1333Tempera and gold on panel. Uffizi Gallery, Florence

A workshop, not a painter.

Each request runs on the provider you choose and is billed to your account with them. Cenini prepares the request in that provider's terms and tells you plainly when an option could not be honored.

Bring your own keys
Plate IIThomas ColeView from Mount Holyoke after a Thunderstorm (The Oxbow), 1836Oil on canvas. The Metropolitan Museum of Art, New York
Room IIHow it works

THREE small PANELS

Under every altarpiece runs a predella: small scenes that tell the story in order. These are yours.

  1. i

    Hang your keys

    Add an API key for each provider you already pay for. Keys are encrypted at rest and read only while a request runs.

  2. ii

    Cross over once

    Add Cenini to Claude or any MCP client and sign in. From then on every call runs under your account.

  3. iii

    Keep what you make

    Leave results on the provider's links, or have each image copied to your own S3 or R2 bucket.

Room IIIAnatomy of a request

ONE CALL, any PROVIDER

Plate IIIAlbrecht DürerYoung Hare, 1502Watercolour and gouache on paper. Albertina, Vienna
// generate_image
{
  "prompt": "a young hare in the grass, watercolour study",
  "provider": "replicate", 1
  "aspect_ratio": "4:5", 2
  "upload": true, 3
  "wait_for_completion": false 4
}
  1. 1providerOptional. Falls back to the default in your settings.
  2. 2aspect_ratioOne vocabulary, translated to each provider's own parameters.
  3. 3uploadCopies the result to your bucket, if you configured one.
  4. 4wait_for_completionSet to false for slow models: you get a job id to poll with check_state.

If a provider cannot do something you asked for, the image still comes back, with the gap listed under downgrades.

Room IVThe namesake

CENNINO CENNINI, c. 1400

Around 1400, the Florentine painter Cennino Cennini wrote Il Libro dell'Arte, a workshop handbook on grinding pigments, preparing panels and laying gold leaf.

The workshop never chose the subject. It made sure every painter had the right materials, prepared the right way. This server does the same for image models, and the picture stays yours.

Plate IVGentile da FabrianoAdoration of the Magi, 1423Tempera and gold on panel. Uffizi Gallery, Florence
Room VWhat it connects

THE COLLECTION

Providers

  • OpenRouterModel router across image vendors
  • fal.aiHosted inference
  • ReplicateHosted open models
  • Google GeminiGemini image models

Storage

  • Provider linksDefault. Cenini keeps nothing; links can expire
  • Amazon S3Your bucket, your credentials
  • Cloudflare R2Your bucket, your credentials
  • Google DrivePlanned

MCP tools

  • generate_imageOne request shape for every provider
  • check_statePoll long generations by job id
  • list_providersThe providers your keys unlock

Bring your keys.