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.

Corent

NPM · CORENT-MCP · SCANNED SEP 20

Generate images, videos, voice, and text via the Corent API. Auto model routing with fallback.

Available components

+26 this week 84 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security98
  • No malware found by supply-chain analysis.Pass
  • No known CVEs affecting this package version or its production dependencies.Pass
  • No install/post-install scripts declared.Pass
  • 31 of 96 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency45
Schema Quality & AI Usability79
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 5377 tokens (~192/item across 28 items; 27 tools + 1 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management93
  • Stability observed for 28 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 99% of tool parameters carry a description.Partial
  • Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • All 1 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
  • An AI judge read all 28 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
  • Supports UI / widget rendering.Pass
Install

How do I install the Corent MCP server?

Corent runs locally as an npm package, launched with npx -y corent-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

npm · corent-mcp

# add to Claude Code
claude mcp add gg13121-corent-mcp -- npx -y corent-mcp
// .cursor/mcp.json
{
  "mcpServers": {
    "gg13121-corent-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "corent-mcp"
      ]
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "gg13121-corent-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "corent-mcp"
      ]
    }
  }
}
# add to Codex CLI
codex mcp add gg13121-corent-mcp -- npx -y corent-mcp
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "gg13121-corent-mcp": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "corent-mcp"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add gg13121-corent-mcp --command npx --arg -y --arg corent-mcp
# ~/.hermes/config.yaml
mcp_servers:
  gg13121-corent-mcp:
    command: "npx"
    args: ["-y", "corent-mcp"]
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "gg13121-corent-mcp": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "corent-mcp"
      ]
    }
  }
}
# add to Vellum
assistant mcp add gg13121-corent-mcp -t stdio -c npx -a -y corent-mcp
// mcp.json
{
  "mcpServers": {
    "gg13121-corent-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "corent-mcp"
      ]
    }
  }
}
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.

  • 20 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.

  • 18 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.

  • 16 Sept 26 −3
    • Stability: pass → 0.80 functional
  • 15 Sept 26 +16
    • Malware scan: unverified → pass security
    • Stability: 0.97 → pass security
  • 14 Sept 26 +11
    • Known CVEs: unverified → pass security
    • Dependency health: unverified → 0.84 functional
  • 13 Sept 26 −10
    • Known CVEs: pass → unverified security
    • Schema quality: 4632 → 5377 functional
    • Dependency health: 0.84 → unverified functional
    • Package version: 0.9.0 → 0.10.0 functional
  • 12 Sept 26 −15
    • Stability: 0.87 → unverified security
    • Malware scan: pass → unverified security
    • Tool safety: pass → unverified security
    • Capabilities: pass → unverified functional
    • Tool coverage: 100 → unverified functional
    • Schema quality: 100 → unverified functional
    • Schema quality: pass → fail functional
    • Tool coverage: 81% → 99% functional
    • Schema quality: good → excellent functional
    • Destructive annotations: pass → 100 functional
    • Package version: 0.4.2 → 0.9.0 functional
    • Package version: 0.4.2 → 0.8.0 functional
  • 10 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 80 to 83. That category is still filling its 30-day observation window: 24 days of observed history at the previous scan, 25 at this one. The score rises as the window fills, whether or not the server changes.

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 20 Sept 2026 · Analysed npm/corent-mcp@0.10.0

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem npm

Background: How many MCP packages publish verified provenance →

Dependencies 96 packages
Packages resolved 96
Stale 31
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 27 exposed · ~5,359 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
cancel_film ~67

Stop a film that has not finished. A cancelled film is not billed. Use it as soon as the user says they did not mean to start it or want to change the story. A film that already finished stays completed.

NameTypeReqDescription
film_idstringyesThe film_id to cancel
NameTypeReqDescription
billedboolean|null
characters
completed_atstring|null
cost_centsnumber|null
created_atstring|null
customer_idstring|null
duration_snumber|null
errorstring|null
error_messagestring|null
estimated_cost_centsnumber|null
film_idstring
progress_percentnumber|null
quality_notes
scenes
stage_detailstring|null
statusstring
titlestring|null
video_urlstring|null

No examples provided.

cancel_job ~73

Stop a job that has not finished and release the money held for it. Charges nothing. Use it as soon as the user says they did not mean to start something, especially a video. A job that already finished stays completed and billed for what was delivered.

NameTypeReqDescription
job_idstringyesThe job id to cancel
NameTypeReqDescription
cancelledboolean
detailstring
errorstring
idstring
statusstring

No examples provided.

create ~128

Describe one image or one clip in plain language; Corent picks type, tier, shape and duration and generates it. max_cost_cents is a required ceiling: above it nothing is generated. Videos return a job id for get_job. Failed generations are never billed. A story with several characters or anything over about 30 seconds is a film: use plan_film, then make_film.

NameTypeReqDescription
intentstringyesWhat you want, in natural language
max_cost_centsintegeryesSpend ceiling in cents for this one generation. Corent refuses if the estimate is higher.
NameTypeReqDescription
actual_cost_centsnumber|null
estimated_cost_centsnumber|null
executedboolean
messagestring|null
next_stepstring|null
result

No examples provided.

edit_video ~363

Edit an existing clip with a prompt: add, remove, replace or change something in @Video 1. Keeps the source clip's length and shape. Asynchronous: returns a job id; poll get_job until completed. Runs on corent-seedance-2.5. Photos of real people are rejected as references; Corent-made characters are fine.

NameTypeReqDescription
audiobooleanAsk for native sound in the result.
modelstringModel to run, default "corent-seedance-2.5", the model that can edit or extend a clip today.
negative_promptstringWhat must NOT appear in the result.
output_formatstringDelivered file type (default mp4).
promptstringyesThe change, naming the source as @Video 1 and using an edit verb: "Replace the red car in @Video 1 with a blue bicycle".
reference_audio_urlsarrayOptional audio (@Audio 1 in the prompt) for the result to follow.
reference_image_urlsarrayOptional images the result should match (@Image 1, @Image 2 in the prompt), e.g. a character or product to bring in. The supplier rejects photos of REAL people as references; characters generated ins…
resolutionstringPixel resolution (default 720p); higher costs more.
return_last_framebooleantrue returns last_frame_url on the finished job, a PNG of the final frame to start the next clip from.
seedintegerReproducibility, same contract as generate_video.
video_urlstringyesPublic https URL of the clip to edit (becomes @Video 1).
NameTypeReqDescription
audioarray
duration_snumber|null
errorstring
idstring
imagesarray
last_frame_urlstring|null
metaobject
progress_percentnumber|null
statusstring
taskstring|null
videosarray

No examples provided.

extend_video ~380

Continue an existing clip (@Video 1) forward or backward, with a prompt for what happens next or before. Keeps the source shape; duration_s is the added length. Asynchronous: returns a job id; poll get_job until completed. Runs on corent-seedance-2.5. Pair with return_last_frame to chain shots.

NameTypeReqDescription
audiobooleanAsk for native sound in the result.
directionstringforward (default) adds footage after the clip; backward adds what happened before it.
duration_sintegerSeconds of NEW footage to add.
modelstringModel to run, default "corent-seedance-2.5", the model that can edit or extend a clip today.
negative_promptstringWhat must NOT appear in the result.
output_formatstringDelivered file type (default mp4).
promptstringyesWhat happens in the new footage. The direction line is added for you.
reference_audio_urlsarrayOptional audio (@Audio 1 in the prompt) for the result to follow.
reference_image_urlsarrayOptional images the result should match (@Image 1, @Image 2 in the prompt), e.g. a character or product to bring in. The supplier rejects photos of REAL people as references; characters generated ins…
resolutionstringPixel resolution (default 720p); higher costs more.
return_last_framebooleantrue returns last_frame_url on the finished job, a PNG of the final frame to start the next clip from.
seedintegerReproducibility, same contract as generate_video.
video_urlstringyesPublic https URL of the clip to continue (becomes @Video 1).
NameTypeReqDescription
audioarray
duration_snumber|null
errorstring
idstring
imagesarray
last_frame_urlstring|null
metaobject
progress_percentnumber|null
statusstring
taskstring|null
videosarray

No examples provided.

generate_image ~642

Generate an image from a text prompt. Returns a permanent public URL. Synchronous, usually 2-20 seconds. Costs a few cents (premium ~7c); failed generations are never billed. Takes reference_image_urls to keep a face, character or product consistent (tier pro or up).

NameTypeReqDescription
aspect_ratiostring
enhance_promptbooleanCorent rewrites the prompt before dispatch to get a better render. Pass false when the user has carefully worded their own prompt and wants it sent verbatim.
heightintegerExplicit pixel height; pass with width.
modelstringDirect model access: pin an exact model by name, e.g. "corent-flux-schnell" (list_models shows the menu; every name there is spelled corent-*). Bypasses Corent's routing -- never substituted, flat co…
nintegerHow many versions to render, 1 to 10. Each is a REAL render at the normal price, so n=4 costs four images; confirm with the user before spending on more than a couple. They come back together and met…
negative_promptstringWhat must NOT appear, e.g. "text, watermark".
output_formatstringDelivered file type.
promptstringyesWhat to generate, in plain language
reference_image_urlsarray1 to 4 public https image URLs that keep a CHARACTER, FACE, or PRODUCT consistent across generations. The prompt is applied as an EDIT of these references, so use it whenever the user wants the same…
seedintegerReproducibility. The same seed with the same prompt and model gives the same image, so use it to re-render a picture the user liked and change one thing. The seed that was used comes back in meta.see…
source_image_urlstringImage-to-image: start from this picture rather than from scratch. Pair with `strength`. Different from reference_image_urls, which pins an identity across scenes.
strengthnumberHow far to travel from source_image_url. 0 keeps it, 1 ignores it.
stylestringOptional content style hint
tierstringQuality tier: air=cheapest (best value, not the quickest), lite=everyday, premium=production, pro=advanced, max_pro=maximum fidelity (flagship models). Omit for a sensible default.
transparentbooleanTransparent background, for logos and product cutouts. Forces png.
widthintegerExplicit pixel width; pass with height.
NameTypeReqDescription
idstring
imagesarray
metaobject
statusstring

No examples provided.

generate_image_batch ~91

Submit up to 50 image generations in one call. Asynchronous: returns a batch_id and a job id per item; poll get_batch, then get_job per image. Every item bills at the normal rate, so check get_balance first. Items are tier-routed; pin a model with generate_image instead. No reference images here.

NameTypeReqDescription
itemsarrayyes1 to 50 image requests
NameTypeReqDescription
batch_idstring
countsobject
errorstring
jobsarray
statusstring

No examples provided.

generate_speech ~294

Text to speech. Synchronous: returns the finished audio URL and the exact charge. Billed in started blocks of 1,000 characters (roughly 25-30c for the first block), so a short line costs the same as a paragraph. Call list_voices first to pick a voice_id. Failed generations are never billed.

NameTypeReqDescription
languagestringISO code for the multilingual models, e.g. "en" or "pt-BR".
modelstringDirect model access: pin an exact speech model by name, e.g. "corent-eleven-multilingual-v2" (list_models shows the menu with kind="speech"; every name there is spelled corent-*).
output_formatstringAudio format, e.g. "mp3" or "wav".
similaritynumber0 to 1. How closely to hold the voice's character.
speednumberPlayback speed; 1.0 is natural pace.
stabilitynumber0 to 1. Low is more expressive and varies more take to take; high is steadier.
stylenumber0 to 1. Extra expressiveness.
textstringyesThe text to speak, max 5000 characters
voice_idstringOptional provider voice id; omit for the default narration voice
NameTypeReqDescription
audio_urlstring
errorstring
idstring
metaobject
statusstring

No examples provided.

generate_text ~456

Run a prompt or conversation through a frontier language model on the user's Corent account. Synchronous: returns the text, token usage and exact charge (fractions of a cent). Use it when the user wants a specific model's answer or work billed to Corent, not for your own reasoning. Supports tool calling and JSON mode.

NameTypeReqDescription
max_tokensintegerCap on the reply length in tokens (default 1024). The balance gate reserves against this, so keep it realistic.
messagesarrayFull OpenAI-shaped conversation, for multi-turn work: prior assistant turns, and the tool results you are feeding back after a tool call. Takes precedence over prompt/system. Without this the model s…
modelstringDirect model access: pin an exact text model by name, e.g. "corent-claude-opus-5" (list_models shows the menu with kind="text"; every name there is spelled corent-*). Bypasses routing -- never substi…
promptstringWhat to ask, in plain language. Use this for a single question; use `messages` instead to continue a conversation.
response_formatobjectStructured output, e.g. {"type":"json_object"} for JSON mode, or a json_schema block.
systemstringOptional system instruction that frames the request
temperaturenumberSampling temperature; omit for the model's default
tierstringQuality tier: air=cheapest, lite=everyday, premium=production, pro=advanced, max_pro=frontier flagships. Omit for a sensible default.
tool_choiceHow the model may use tools: "auto", "none", "required", or {type:"function",function:{name}}.
toolsarrayOpenAI-shaped function definitions the model may call. When the model answers with tool calls, they come back in `tool_calls` and the reply text is empty: run them, then call again with `messages` ca…
NameTypeReqDescription
cost_centsnumber|null
errorstring
finish_reasonstring
modelstring
textstring
tool_calls
usageobject

No examples provided.

generate_video ~985

Start a video from text, a source image, or references (@Image 1, @Video 1, @Audio 1 in the prompt). Asynchronous: returns a job id; poll get_job until completed. Premium ~52c, pro ~84c per clip; failed generations are never billed. References need corent-seedance-2.5; photos of real people are rejected as references.

NameTypeReqDescription
aspect_ratiostringShape of the clip. OMIT IT (or pass adaptive) when animating a source image, editing or extending a clip: those keep the source's own shape, so naming another is refused rather than silently ignored.…
audiobooleanAsk for native SOUND. Some models render audio and some are silent. true routes only to models that actually deliver sound, so a silent model can never quietly serve the request; false prefers a sile…
camerastringCamera move.
duration_sintegerRequested duration in seconds
end_image_urlstringThe frame the clip should END on. Together with image_url this is the go-from-A-to-B / morph effect; alone it is a target to move toward.
enhance_promptbooleanfalse sends the prompt exactly as written.
fpsintegerFrames per second, where the model offers a choice.
image_urlstringIf set, animates this image as the FIRST frame instead of pure text-to-video. Use a previous clip's last_frame_url to continue from it.
modelstringDirect model access: pin an exact model by name, e.g. "corent-seedance-2.5" (list_models shows the menu; every name there is spelled corent-*). Bypasses routing -- never substituted; duration and res…
negative_promptstringWhat must NOT appear in the clip.
output_formatstringDelivered file type (default mp4).
promptstringyesWhat to generate, in plain language
reference_audio_urlsarray1 to 10 public https audio files, @Audio 1 in the prompt, e.g. a track the clip should cut to.
reference_image_urlsarray1 to 30 public https images the clip should keep to (a character, a product, a setting). Refer to them in the prompt as @Image 1, @Image 2 in this order. Needs model (corent-seedance-2.5); cannot be…
reference_video_urlsarray1 to 10 public https clips, @Video 1, @Video 2 in the prompt: the source for an edit or extend task, or motion/style to follow. Cannot be combined with image_url/end_image_url.
resolutionstringPixel resolution (default 720p). Tier-capped: pro allows up to 1080p, max_pro up to 4k; above the tier's cap it is clamped down, never rejected. Higher resolutions cost more (1080p ~2.5x, 4k ~5.5x).…
return_last_framebooleantrue also stores a PNG of the final frame and returns it as last_frame_url on the finished job, so the next clip can start exactly there (pass it as image_url). Use it to chain shots.
seedintegerReproducibility, same contract as generate_image.
stylestringOptional content style hint, same vocabulary as generate_image
taskstringWhat to do with the references (default auto). edit changes something in @Video 1 and keeps its length: omit duration_s. extend continues @Video 1. Both need reference_video_urls and aspect_ratio omi…
tierstringQuality tier: air=cheapest (best value, not the quickest), lite=everyday, premium=production, pro=advanced, max_pro=maximum fidelity (flagship models). Omit for a sensible default.
NameTypeReqDescription
audioarray
duration_snumber|null
errorstring
idstring
imagesarray
last_frame_urlstring|null
metaobject
progress_percentnumber|null
statusstring
taskstring|null
videosarray

No examples provided.

generate_video_batch ~102

Submit up to 50 video generations in one call. Asynchronous: returns a batch_id and a job id per item; poll get_batch, then get_job per clip. Video is the expensive lane: a 10-item batch can cost several dollars, so confirm with the user and check get_balance first. Items are tier-routed.

NameTypeReqDescription
itemsarrayyes1 to 50 video requests; each item takes the same reference fields as generate_video
NameTypeReqDescription
batch_idstring
countsobject
errorstring
jobsarray
statusstring

No examples provided.

get_balance ~55

The account balance in cents. balance_cents is the total, held_cents is reserved by running generations, available_cents is what a new request can actually spend; check that one before an expensive video. Read-only and free.

Input schema present but exposes no named parameters.

NameTypeReqDescription
available_centsnumber
balance_centsnumber
held_centsnumber

No examples provided.

get_batch ~63

Progress of a batch from generate_image_batch or generate_video_batch: completed, failed and pending counts plus each item's job id. Read-only and free. Fetch a finished item's media with get_job.

NameTypeReqDescription
batch_idstringyesThe batch_id returned by a batch tool
NameTypeReqDescription
batch_idstring
completednumber
errorstring
failednumber
jobsarray
pendingnumber
totalnumber

No examples provided.

get_film ~95

Progress of a film from make_film: the stage (queued, writing, casting, shooting, checking, editing, completed, failed, cancelled), progress_percent, and each scene. When completed it carries video_url, the finished film with sound, and cost_cents. Read-only and free. Tell the user the stage in one plain sentence.

NameTypeReqDescription
film_idstringyesThe film_id returned by make_film
NameTypeReqDescription
billedboolean|null
characters
completed_atstring|null
cost_centsnumber|null
created_atstring|null
customer_idstring|null
duration_snumber|null
errorstring|null
error_messagestring|null
estimated_cost_centsnumber|null
film_idstring
progress_percentnumber|null
quality_notes
scenes
stage_detailstring|null
statusstring
titlestring|null
video_urlstring|null

No examples provided.

get_job ~54

Check a generation job (mainly video). When completed, the response carries the permanent media URL and the cost. Read-only and free.

NameTypeReqDescription
job_idstringyesThe job id returned by generate_video or generate_image
NameTypeReqDescription
audioarray
duration_snumber|null
errorstring
idstring
imagesarray
last_frame_urlstring|null
metaobject
progress_percentnumber|null
statusstring
taskstring|null
videosarray

No examples provided.

get_status ~35

Live operational status of Corent's generation tiers (operational or degraded). Read-only and free; useful to pick a healthy tier.

Input schema present but exposes no named parameters.

NameTypeReqDescription
statusstring
tiersarray

No examples provided.

inpaint_image ~162

Regenerate ONLY the white region of a mask and leave every pixel outside it byte-for-byte unchanged, so a product or logo stays exactly your file. Takes image_url, a same-size black-and-white mask_url (white = redo, black = keep) and a prompt for the masked area. Synchronous; failed runs are never billed.

NameTypeReqDescription
image_urlstringyesPublic https URL of the image to edit
mask_urlstringyesPublic https URL of a black-and-white mask the same size as the image: WHITE is regenerated, BLACK is preserved byte for byte
promptstringyesWhat to generate inside the white (masked) region
tierstringQuality tier for the regenerated region; omit for the default
NameTypeReqDescription
idstring
imagesarray
metaobject
statusstring

No examples provided.

list_media ~131

Find media the account already made, so a result can be reused instead of paid for again. Reads the last 100 jobs, filtered by type and a prompt keyword (e.g. 'beach'), newest first. Returns id, type, status, date, tier, cost and URL per job. Read-only and free.

NameTypeReqDescription
limitintegerHow many rows to return, 1-100 (default 20)
querystringCase-insensitive substring to match against each job's prompt
typestringOnly this lane: image, video, speech or text
NameTypeReqDescription
countnumber
errorstring
itemsarray
scannednumber

No examples provided.

list_models ~75

The direct-access menu: every model that can be pinned by name (spelled corent-*) on the generate tools, with kind, quality score and live status. Carries no price; billing is flat cost-plus and each generation returns its exact charge. Read-only and free. Only needed when the user names a specific model.

Input schema present but exposes no named parameters.

NameTypeReqDescription
countnumber
errorstring
modelsarray

No examples provided.

list_tiers ~70

The live tier menu for image and video: each tier's price estimate, shapes, video durations, per-resolution pricing, and whether it accepts reference images (image) or a source image (video). Read-only and free. Check it before quoting a price. Tier-level only; never names a model.

Input schema present but exposes no named parameters.

NameTypeReqDescription
errorstring
pricing_notestring
tiersarray

No examples provided.

list_voices ~63

The voices generate_speech accepts as voice_id, with display name, preview clip and descriptors (gender, age, accent, use case). Read-only and free. Call it before generate_speech whenever the user wants a particular narrator; a voice_id cannot be guessed.

Input schema present but exposes no named parameters.

NameTypeReqDescription
countnumber
default_voice_idstring|null
errorstring
voicesarray

No examples provided.

make_film ~324

Start the film the user approved: pass plan_id from plan_film (or a brief), and max_cost_cents a little above the estimate. The charge never goes above max_cost_cents, and a failed or cancelled film is not billed. Returns film_id right away; a film takes about 15 to 30 minutes, so check get_film every 60 seconds.

NameTypeReqDescription
aspect_ratiostring16:9 (default), 9:16 for vertical, or 1:1.
briefstringOnly when there is no plan_id: the film idea, planned and made in one go.
customer_idstringYour own id for the end customer this film is for.
duration_sintegerLength of the finished film in seconds, 10 to 120 (default 30).
languagestringLanguage the characters speak, e.g. "en" or "es". Omit to follow the brief.
max_cost_centsintegeryesSpend ceiling in cents. Refused up front if the estimate is higher; the charge never goes above it.
plan_idstringThe plan_id from plan_film. Preferred: it is the plan and price the user saw.
resolutionstring720p (default) or 1080p; 1080p costs more.
webhook_secretstringOptional secret that signs the webhook delivery.
webhook_urlstringOptional https URL that receives the finished film.
NameTypeReqDescription
billedboolean|null
characters
completed_atstring|null
cost_centsnumber|null
created_atstring|null
customer_idstring|null
duration_snumber|null
errorstring|null
error_messagestring|null
estimated_cost_centsnumber|null
film_idstring
progress_percentnumber|null
quality_notes
scenes
stage_detailstring|null
statusstring
titlestring|null
video_urlstring|null

No examples provided.

plan ~109

Preview how Corent would handle a plain-language request, without generating: image vs video, tier, shape, duration and an estimated cost. Image and video only; speech is generate_speech. A story with several characters or anything over about 30 seconds is a film: use plan_film. Impossible asks come back with can_fulfill false.

NameTypeReqDescription
intentstringyesWhat you want, in natural language, e.g. 'a 10s vertical clip of a sunrise for TikTok'
NameTypeReqDescription
estimated_cost_centsnumber|null
next_stepstring|null
planobject

No examples provided.

plan_film ~239

Turn a one-sentence film idea into a plan without spending anything: title, characters, every scene with its dialogue, total length and the price range. The plan lasts 24 hours. Show the user the plan and the price and get a clear yes before make_film. Use it for any story with several characters or anything over about 30 seconds.

NameTypeReqDescription
aspect_ratiostring16:9 (default), 9:16 for vertical, or 1:1.
briefstringyesThe film in the user's own words, e.g. 'a 50 second parody where 5 founders start a startup and know nothing'.
customer_idstringYour own id for the end customer this film is for.
duration_sintegerLength of the finished film in seconds, 10 to 120 (default 30).
languagestringLanguage the characters speak, e.g. "en" or "es". Omit to follow the brief.
resolutionstring720p (default) or 1080p; 1080p costs more.
NameTypeReqDescription
characters
estimated_cost_centsnumber|null
estimated_cost_range
expires_atstring|null
loglinestring|null
plan_idstring
scenes
stylestring|null
titlestring|null
total_duration_snumber|null

No examples provided.

remove_background ~81

Cut the subject out of an image and return a PNG with a real transparent background, for logos, product shots and compositing. Synchronous, flat price, no tier; failed runs are never billed. Takes a public https URL; upload a local file with upload_image first.

NameTypeReqDescription
image_urlstringyesPublic https URL of the image to cut out
NameTypeReqDescription
idstring
imagesarray
metaobject
statusstring

No examples provided.

upload_image ~122

Upload a local image (base64) to Corent and get back a public https URL. Use that URL as image_url, mask_url, source_image_url or a reference in the other tools. Max 25 MB. Free; the file is stored on the account.

NameTypeReqDescription
content_typestringyesMIME type, e.g. "image/png" or "image/jpeg"
data_base64stringyesThe file bytes, base64 encoded (no data: prefix)
filenamestringOptional file name, e.g. product.png
NameTypeReqDescription
bytesnumber
content_typestring
errorstring
idstring
urlstring

No examples provided.

upscale_image ~100

Make an existing image bigger and sharper from its public https URL. Synchronous, returns a new permanent URL. Flat price, no tier; failed runs are never billed. Optional prompt guides the added detail; omit it to enlarge faithfully. Upload a local file with upload_image first.

NameTypeReqDescription
image_urlstringyesPublic https URL of the image to enlarge and sharpen
promptstringOptional guidance for the added detail; omit to enlarge faithfully
NameTypeReqDescription
idstring
imagesarray
metaobject
statusstring

No examples provided.

Common questions

What is the Corent MCP server?

Corent is an MCP server listed in the public MCP registry as io.github.gg13121/corent-mcp. Generate images, videos, voice, and text via the Corent API. Auto model routing with fallback. This page covers its npm package (corent-mcp).

Is the Corent MCP server safe to use?

Corent scores 84 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 20 September 2026. It declares no install or post-install scripts. 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 Corent MCP server expose?

Corent exposes 27 tools: generate_image, generate_video, edit_video, extend_video, generate_speech, and 22 more. Their descriptions and schemas cost roughly 5,359 tokens of context every time the server is loaded.

Is the Corent MCP server still maintained?

Corent is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the Corent MCP server under?

Corent declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.