Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

io.github.Distribea/distribea-mcp

REMOTE · DISTRIBEA.COM · 2 COMPONENTS · SCANNED SEP 27

Generate images, video, music and voice from your CLI or AI agent. On-brand AI media toolkit.

0 this week 38 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →

Endpoint Security94
Transport & Reachability0
Schema Quality & AI Usability0
  • Schema blocked by authentication: the endpoint requires auth we don't have to read it. See how to fix → Unverified
Stability & Change Management0
  • Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
Tool Coverage0
  • Tool coverage blocked by authentication: the endpoint requires auth we don't have to read its tools.Unverified
Tool Safety0
  • Tool safety blocked by authentication: the endpoint requires auth we don't have to read its tools.Unverified
Capabilities0
  • Capabilities blocked by authentication: the endpoint requires auth we don't have to read them. See how to fix → Unverified

Unverified: 6 categories

Categories scored 0 because we could not verify them: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm. Claim this server and supply a read-only token to verify it and lift the score.

Install

How do I install the io.github.Distribea/distribea-mcp server?

io.github.Distribea/distribea-mcp is a hosted endpoint at https://distribea.com/api/mcp/remote, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

remote · distribea.com

# add to Claude Code
claude mcp add --transport http distribea-distribea-mcp 'https://distribea.com/api/mcp/remote'
// .cursor/mcp.json
{
  "mcpServers": {
    "distribea-distribea-mcp": {
      "url": "https://distribea.com/api/mcp/remote"
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "distribea-distribea-mcp": {
      "type": "http",
      "url": "https://distribea.com/api/mcp/remote"
    }
  }
}
# ~/.codex/config.toml
[mcp_servers.distribea-distribea-mcp]
url = "https://distribea.com/api/mcp/remote"
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "distribea-distribea-mcp": {
      "type": "remote",
      "url": "https://distribea.com/api/mcp/remote",
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add distribea-distribea-mcp --url 'https://distribea.com/api/mcp/remote' --transport streamable-http
# ~/.hermes/config.yaml
mcp_servers:
  distribea-distribea-mcp:
    url: "https://distribea.com/api/mcp/remote"
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "distribea-distribea-mcp": {
      "Transport": "http",
      "Url": "https://distribea.com/api/mcp/remote"
    }
  }
}
# add to Vellum
assistant mcp add distribea-distribea-mcp -t streamable-http -u 'https://distribea.com/api/mcp/remote'
// mcp.json
{
  "mcpServers": {
    "distribea-distribea-mcp": {
      "type": "http",
      "url": "https://distribea.com/api/mcp/remote"
    }
  }
}

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 25 Sept 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 2 Sept 26 −40
    • Endpoint reachability: reachable → behind authorisation ▼ security
    • Transport: pass → unverified ▼ security
    • Stability: pass → unverified ▼ security
    • Tool safety: pass → unverified ▼ security
    • Authorization: unverified → pass ▲ security
    • First check of Authorization: partial security
    • Capabilities: pass → unverified ▼ functional
    • Tool coverage: 100 → unverified ▼ functional
    • Schema quality: Schema blocked by authentication: the endpoint requires auth we don't have to read it. functional
  • 28 Aug 26 0
    • Stability: unverified → pass ▲ security
    • HTTPS: unverified → pass ▲ security
    • Injection markers: unverified → pass ▲ security
    • HSTS header: fail → pass ▲ security
    • Transport: fail → pass ▲ security
    • First check of Judged manipulation: pass security
    • Authorization: Authorisation not fully verified: no authorisation is required to call this server, and 12 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe. security
    • Endpoint reachability: not serving MCP → reachable ▲ functional
    • Tool coverage: unverified → 100 ▲ functional
    • MCP protocol: unverified → pass ▲ functional
    • First check of Destructive annotations: 0 functional
    • Schema quality: fair → excellent functional
  • 26 Aug 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 25 Aug 26 0
    • HTTPS: pass → unverified ▼ security
    • HSTS header: pass → fail ▼ security
  • 11 Aug 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 9 Aug 26 0
    • Endpoint reachability: reachable → not serving MCP ▼ security
    • Stability: 0.43 → unverified ▼ security
    • Transport: pass → fail ▼ security
    • Authorization: Authorisation not fully verified: no authorisation is required to connect, but we couldn't read the whole tool list to see what that exposes. security
    • Capabilities: pass → unverified ▼ functional
    • Tool coverage: 100 → unverified ▼ functional
    • First check of Schema quality: unverified functional
  • 31 Jul 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 27 Sept 2026 · Probed https://distribea.com/api/mcp/remote

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=distribea.com CN=YE2,O=Let's Encrypt,C=US 8 Aug 2026 6 Nov 2026 ECDSA 256 ECDSA-SHA384 5434195d1fa561748f9abe1ddcabc81e2c7
SANs: *.distribea.com, distribea.com
CN=YE2,O=Let's Encrypt,C=US (CA) CN=Root YE,O=ISRG,C=US 3 Sept 2025 2 Sept 2028 ECDSA 384 ECDSA-SHA384 4df3b15dd6c0784c507cd37b58e6f115
CN=Root YE,O=ISRG,C=US (CA) CN=ISRG Root X2,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 ECDSA 384 ECDSA-SHA384 872165fc34b6e5fba8add5b3705fb53a
CN=ISRG Root X2,O=Internet Security Research Group,C=US (CA) CN=ISRG Root X1,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 ECDSA 384 SHA256-RSA 6c8f1dc727c7117f7baf853ac980f9cd

Background: What to check on a remote MCP endpoint →

DNSSEC insecure

Validation of distribea.com. — Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
com. present 19718 13 Verified
distribea.com. absent Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication Enforced and verified

The endpoint asked for a token and published valid RFC 9728 metadata describing how to get one.

Result Enforced and verified
Enforced On connection
HTTP status 401

WWW-Authenticate challenge Bearer resource_metadata="https://distribea.com/.well-known/oauth-protected-resource/api/mcp/remote"

Bearer resource_metadata="https://distribea.com/.well-known/oauth-protected-resource/api/mcp/remote"
Header Value
strict-transport-security max-age=63072000; includeSubDomains; preload
content-security-policy default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' 'wasm-unsafe-eval' https://www.clarity.ms https://scripts.clarity.ms https://www.googletagmanager.com https://www.googleadservices.com https://js.stripe.com https://vercel.live https://unpkg.com https://fpnpmcdn.net https://fpjscdn.net https://connect.facebook.net https://www.redditstatic.com https://cdn.promotekit.com; style-src 'self' 'unsafe-inline' https://fonts.googleapis.com; img-src 'self' data: blob: https://cdn.sanity.io https://distribea-categories-images.fra1.cdn.digitaloceanspaces.com https://distribea-categories-images.fra1.digitaloceanspaces.com https://distribea-music-uploads.fra1.cdn.digitaloceanspaces.com https://distribea-music-uploads.fra1.digitaloceanspaces.com https://images.unsplash.com https://images.pexels.com https://assets.mixkit.co https://i.pravatar.cc https://lh3.googleusercontent.com https://ui-avatars.com https://v3.fal.media https://v3b.fal.media https://v2.fal.media https://fal.media https://storage.googleapis
x-content-type-options nosniff
x-frame-options SAMEORIGIN
referrer-policy strict-origin-when-cross-origin
permissions-policy accelerometer=(), autoplay=(self), camera=(self), clipboard-read=(), clipboard-write=(self), display-capture=(), encrypted-media=(self), fullscreen=(self), geolocation=(self), gyroscope=(), hid=(), identity-credentials-get=(), idle-detection=(), local-fonts=(), magnetometer=(), microphone=(self), midi=(), otp-credentials=(), payment=(self "https://js.stripe.com" "https://checkout.stripe.com"), picture-in-picture=(self), publickey-credentials-create=(self), publickey-credentials-get=(self), screen-wake-lock=(), serial=(), storage-access=(self), usb=(), web-share=(self), window-management=(), xr-spatial-tracking=(), interest-cohort=(), browsing-topics=(), join-ad-interest-group=(), run-ad-auction=(), attribution-reporting=()
www-authenticate Bearer resource_metadata="https://distribea.com/.well-known/oauth-protected-resource/api/mcp/remote"

Protected resource metadata

Document https://distribea.com/.well-known/oauth-protected-resource/api/mcp/remote
Retrieved Yes
Resource https://distribea.com/api/mcp/remote
Authorisation server https://tcvpvraivvwxfrlymqgn.supabase.co/auth/v1

Background: How OAuth 2.1 works in the 2026 MCP spec →

Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://distribea.com/api/mcp/remote Auth required 401
http (plaintext) http://distribea.com/api/mcp/remote HTTPS enforced 308 https://distribea.com/api/mcp/remote
MCP tools · 12 exposed · ~2,382 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
blog_cover ~226

Generates the 16:9 cover of an editorial article from ITS specific topic (never a generic photo), consistent with the site's style. Returns the CDN URL + an <img> tag. Provide the article via article_text (pasted text) or article_url (public link). illustrations:N adds N images inside the article.

NameTypeReqDescription
article_textstring–The article text (title + body), pasted directly
article_urlstring–Public URL of the article — its text is read for you
characterstring–Optional: name/role of a locked character to deliberately feature on the cover
illustrationsnumber–Extra images inside the article (default 0, max 5)
orientationstring–Cover shape — default "wide" (16:9)
productstring–Optional: name of a locked product to deliberately feature on the cover
projectstring–Optional: site identifier. Default: "lovable".
titlestring–Optional title (overrides the one read from the source)

No output schema declared.

No examples provided.

brand_pack ~289

The brand finishing pack. action 'all' (default) chains: logo (clean lettering, correct spelling) + favicon pack (favicon.ico, apple-touch-icon, 192/512 PNG incl. maskable, site.webmanifest) + social image (og:image, needs a title). Or one piece: 'logo' | 'favicons' | 'social_image'. Returns the logo as an <img> to place in the header, the favicon FILES (base64) to write into /public + the <head> tags, and the og:image <meta> tags. Optionally derive the favicon from a given logo via image_base64/image_url.

NameTypeReqDescription
actionstring–Default 'all'
backgroundstring–favicons: solid background colour behind the icon (default white)
image_base64string–favicons: optional existing logo/icon (base64) to derive the pack from
image_urlstring–favicons: optional logo/icon URL to derive the pack from
projectstring–Optional: site identifier. Default: "lovable".
subtitlestring–social_image: optional smaller subtitle
taglinestring–logo: optional small tagline under the brand name
titlestring–social_image: title written on the image (required for social_image; also enables it in 'all')

No output schema declared.

No examples provided.

bring_alive ~242

Make an EXISTING page feel alive with on-brand imagery. It PROPOSES (free, generates nothing): (1) where to ADD images in sections that have none (hero, testimonials, team/about, a key benefit, gallery…), and (2) it returns the page's EXISTING <img> tags so you can REPLACE them too. DEFAULT BEHAVIOR — replace every existing image with an on-brand one UNLESS the user explicitly asks to keep a specific image; if the user only wants to add images, leave the existing ones untouched. WORKFLOW: show both lists, ask which to KEEP; then for approved NEW spots insert the given <img> placeholder at its anchor and call generate_image to fill it, AND for each existing image to replace, call generate_image with a matching subject and swap that image's src. Use this BEFORE generate_image whenever a page's imagery is missing or off-brand. Pass the page's current code as page_text.

NameTypeReqDescription
page_textstringyesThe current code (or visible text) of the page to bring alive
projectstring–Optional: site identifier. Default: "lovable".

No output schema declared.

No examples provided.

create_reference ~316

Register a REAL photo so Distribea reuses it IDENTICALLY in generated images — the user's own person, product or place. kind 'character' = a recurring face (founder, baker…), 'product' = the exact same object, 'place' = the real shop/location. Give the photo as image_base64 (the uploaded file's bytes — MOST RELIABLE) or image_url (a PUBLIC image URL). Free (0 credits) when a photo is given. AFTER this, call generate_image with character:"<name>" (or product:"<name>") to feature that exact reference in a scene. For a whole product range at once, pass items:[{name,image_base64|image_url}].

NameTypeReqDescription
descriptionstring–Optional physical description (product/place)
image_base64string–The photo bytes as base64 (raw or data-uri). Preferred — works even when the image isn't on a public URL.
image_urlstring–Public URL of the photo (fallback if no base64)
itemsarray–Register several products/places at once: each {name, image_base64 or image_url, description?}.
kindstring–Default 'character' (a recurring face)
namestring–What to call it: a role ("le boulanger"), a product name ("Tarte pralinée"), or a place ("la boulangerie")
projectstring–Optional: site identifier. Default: "lovable".

No output schema declared.

No examples provided.

edit_image ~269

Retouch an image the user already has (pass it as image_base64 or image_url). action 'edit' (default): a plain-language change (remove an object, change the background, relight; apply_style=true to also match the site's locked look); 'redo': a feedback tweak; 'remove_background': transparent PNG cutout; 'upscale': ×4; 'extend': widen to a new aspect_ratio, the scene continues seamlessly. Returns the NEW image's CDN URL + an <img> tag — swap the original's src with it. Billed; use only on the user's explicit request.

NameTypeReqDescription
actionstring–Default 'edit'
apply_styleboolean–edit only: also match the site's locked style
aspect_ratiostring–extend only: target frame (default 21:9)
image_base64string–The image to retouch, as base64 (preferred)
image_urlstring–Public URL of the image to retouch (fallback)
instructionstring–edit/redo: what to change, plain language
out_formatstring–Output format (default webp; cutouts stay png)
projectstring–Optional: site identifier. Default: "lovable".

No output schema declared.

No examples provided.

forget_project ~65

Wipe a project's saved memory (locked style, characters, products) so it starts fresh. Nothing on the page is touched. Free. Use when a reused project carries over unwanted style or products.

NameTypeReqDescription
projectstring–Site identifier to wipe. Default: "lovable".

No output schema declared.

No examples provided.

generate_image ~234

Generates ONE image consistent with the site's style and returns its CDN URL + a ready-to-paste <img> tag. A subject mentioning a review/testimonial/avatar automatically switches to a realistic customer selfie (UGC). Ideal for heroes, about, sections, cards…

NameTypeReqDescription
brand_textboolean–If true, the brand name appears as a clean physical sign in the image
characterstring–Optional: name/role of a locked character to feature (same face). Pass "none" to FORCE no face (stops a locked founder/team face being auto-attached here).
cross_site_uniqueboolean–Review/avatar subjects only. Default false. true = reviewer faces never repeat across ALL the user's sites.
orientationstring–Default: landscape
productstring–Optional: name of a locked product to show (identical object)
projectstring–Optional: site identifier (to keep a consistent style across its images). Default: "lovable".
subjectstringyesWhat the image shows, e.g. "hero photo: modern villa at sunrise"

No output schema declared.

No examples provided.

generate_with_model ~263

Advanced/manual mode: generate an image with a SPECIFIC model and settings the user picked, billed at the regular site price. Use this when the user names a model or wants control over quality/format/number of images; otherwise use generate_image (auto robot). Get valid ids + options from list_models. Returns CDN URL(s) + ready-to-paste <img> tag(s).

NameTypeReqDescription
countinteger–Optional number of images (1..max for the model, see list_models). Default 1. Free/trial accounts are limited to 1.
formatstring–Optional aspect ratio, e.g. "16:9", "1:1", "9:16" (see list_models for what the model supports).
modelstringyesModel id from list_models, e.g. "flux-2.0-pro" or "nano-banana-pro".
projectstring–Optional: site identifier. Default: "lovable".
qualitystring–Optional quality tier, e.g. "1K"/"2K"/"4K" (see list_models). Ignored when the model has a fixed native size.
subjectstringyesWhat the image shows (the prompt).

No output schema declared.

No examples provided.

list_models ~70

Returns the catalog of image models to choose from: id, name, what it's best at, quality tiers, formats, max images per call, and an indicative price in credits. Call this BEFORE generate_with_model when the user wants to pick a specific model or compare options/prices. Image only for now.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

list_projects ~63

List the projects saved on the account (name, brand, image count, products). To keep working on one, reuse its name in the project: parameter of your calls. Free.

NameTypeReqDescription
projectstring–Optional: current site identifier. Default: "lovable".

No output schema declared.

No examples provided.

pack_status ~51

Shows the Distribea credit balance, the locked style, the known characters/products/avatars, and the latest generated images. Free.

NameTypeReqDescription
projectstring–Optional: site identifier. Default: "lovable".

No output schema declared.

No examples provided.

site_style ~294

The site's art direction. action "setup": locks the style from a brief and/or the URL of an existing site (run this FIRST for consistent images). action "refine": plain-language feedback ("warmer") OR a correction of a misrepresented subject — the rule is recorded and honored by every subsequent image.

NameTypeReqDescription
actionstring–"setup" (default) to set the style, "refine" to adjust/correct it, "lock_image" to anchor the style on an approved image (pass image_base64/image_url)
briefstring–setup: plain-language brand brief (business, mood…)
feedbackstring–refine: what to change or correct, in plain language
forceboolean–setup: true to let the engine guess if the brief is short
image_base64string–lock_image: the approved image's bytes as base64 — its look becomes the permanent style anchor
image_urlstring–lock_image: public URL of the approved image (fallback)
moodboardboolean–setup, ONLY on request: also generate a 2×2 moodboard image of the locked style (billed as 1 image)
projectstring–Optional: site identifier. Default: "lovable".
site_urlstring–setup: URL of an existing site to draw inspiration from (optional)

No output schema declared.

No examples provided.

Common questions

What is the io.github.Distribea/distribea-mcp server?

io.github.Distribea/distribea-mcp is listed in the public MCP registry as io.github.Distribea/distribea-mcp. Generate images, video, music and voice from your CLI or AI agent. On-brand AI media toolkit. This page covers its hosted endpoint (https://distribea.com/api/mcp/remote).

Is the io.github.Distribea/distribea-mcp server safe to use?

io.github.Distribea/distribea-mcp scores 38 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the io.github.Distribea/distribea-mcp server expose?

io.github.Distribea/distribea-mcp exposes 12 tools: generate_image, list_models, generate_with_model, create_reference, blog_cover, and 7 more. Their descriptions and schemas cost roughly 2,382 tokens of context every time the server is loaded.

Does the io.github.Distribea/distribea-mcp server require authentication?

Yes. io.github.Distribea/distribea-mcp asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.

Is the io.github.Distribea/distribea-mcp server still maintained?

io.github.Distribea/distribea-mcp is still listed as active in the MCP registry. We last reached this channel on 27 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.