2dai-mcp-server
MCP server for 2DAI — lets Claude, Cursor, Cline, Windsurf and any other MCP host generate images and video, upload references, browse the public feed, and organise your cloud drive on your own 2DAI account.
- Runs locally over stdio via
npx— nothing to install permanently. - Authenticates with a 2DAI API key (create one at 2dai.io → Dashboard → Integrations → API keys).
- Finished images come back as inline previews so the model can see what it made and iterate.
New — Gen8 Preview images
generate_image with imageModel: "next" runs Gen8 Preview images, the preview of 2DAI's next image engine: up to 6
refCreationIds kept natively (3 on the default model), legible text in the picture, long literal prompts honoured,
the same quality ids at a slightly higher price — every reference adds a surcharge on both image models. The channel
opens at Holder: get_account says whether the account may use it (canUseImageNext, qualities.imageNext), so read
it instead of probing.
Gen8 Preview video
generate_video with videoModel: "next" runs Gen8 Preview video, the preview of 2DAI's next video engine: clips
come out with sound, from a first frame plus up to 6 refCreationIds (characters, props and places kept
consistent), with an optional aspectRatio. Every account with video gets fast quality and 1, 5, 8 or 10 s;
Founder adds every preset and 12, 15, 17 or 20 s — get_account always lists what the account
may submit, so read it instead of guessing. Since 1.6.0 the clip can follow an audio reference too: upload_audio
an MP3, then pass its id as audioCreationId (audioUse: "music" for a soundtrack, "voice" for a voice sample) —
and TIXI writes the full scenario around it.
New in 2.0 — reference tools on the Gen8 image engine
generate_with_refs and generate_in_artistic_style now render on the Gen8 image engine, which reads every
reference natively: character-ref takes 1–6 shots of one character (face photos lock the exact same face, the
prompt drives outfit, pose and scene), style-transfer 1–6 style sources, smart-edit the image to edit plus up to
5 support refs, the artistic style up to 6 subject images. The former face-ref tool was merged into
character-ref and is refused with INVALID_TOOL. Same preset ids and tier gates; prices follow the Gen8 image
ladder plus a surcharge per reference (the ticket's costUsd is the truth).
Quick start
Claude Code
claude mcp add 2dai --env TWODAI_API_KEY=2dai_sk_... -- npx -y 2dai-mcp-server
Claude Desktop / Cursor / Cline / Windsurf (JSON config)
{
"mcpServers": {
"2dai": {
"command": "npx",
"args": ["-y", "2dai-mcp-server"],
"env": { "TWODAI_API_KEY": "2dai_sk_..." }
}
}
}
The key is read from the environment only — never pass it as a tool argument.
Hosted alternative — mcp.2dai.io:800
Every host that speaks remote MCP (Streamable HTTP) can point at our hosted
server instead of running npx locally. No install, no Node runtime, no
process lifecycle — just a URL and a Bearer key.
Endpoint — https://mcp.2dai.io:800/mcp
Auth — Authorization: Bearer 2dai_sk_... on every request (same key you'd
put in TWODAI_API_KEY for the stdio flow).
Claude Desktop / Cursor / Cline / Windsurf (remote-MCP JSON shape — check
your host's docs, some hosts still spell the type "remote"):
{
"mcpServers": {
"2dai": {
"type": "streamable-http",
"url": "https://mcp.2dai.io:800/mcp",
"headers": { "Authorization": "Bearer 2dai_sk_..." }
}
}
}
Claude Code
claude mcp add --transport http 2dai https://mcp.2dai.io:800/mcp \
--header "Authorization: Bearer 2dai_sk_..."
Both transports (stdio via npx and hosted via HTTP) expose the exact same
tools. Pick whichever fits: npx when you want zero third-party dependency and
full control of the process, hosted when you want zero install and a single URL.
No filesystem on the hosted server. The process runs in our container, so a
savePath would write to our disk and an upload path would read from it —
both are refused with a clear message (TWODAI_FILE_ACCESS=none is the hosted
default). Instead, download_creation returns an inline preview (images) plus
downloadUrl, the full-resolution file on the API: GET it with the same
Authorization: Bearer header you send to the server (public creations need
none). upload_image / upload_audio take base64. GET /health reports
fileAccess: "none".
Tools
All wallet tools are read-only — no tool on this server can move money. The finance
scope is opt-in and never part of a key's defaults; enable it in the dashboard's key settings
when you want an agent to see wallet data.
Least privilege
Scopes are set per key in the dashboard. A coding agent that only generates needs
read + generate; add manage for drive organisation, publish only if you want it
posting to the public feed, and finance only for wallet reads. You can also set a
per-key spend cap — the server reports actionable errors when a cap or scope blocks a call.
Configuration (env)
Notes for agents
- Presets. Image:
maxis the recommended everyday pick (best balance of detail and price);ultimateis the highest resolution for final masters;fast/normalare for drafts. Video:ultraat 5 seconds is the recommended shot (best coherence for the price);ultimateis 1080p with the longest wait.ultraandultimateare tier-gated —get_accountlists what the connected account may submit, so never probe presets. - Shots, not long takes. Clips run 5, 6 or 7 s at 18 fps native (
frameInterpolation: truedoubles the frame rate to 36 fps for twice the price). Subject identity holds for roughly the first 2.5–3.5 s: write the cut at ~3 s, one action per shot, several 5-second shots rather than one long take. - Gen8 Preview images (
generate_imagewithimageModel: "next", the new image engine) keep up to 6refCreationIdsnatively (3 on the default model), renders legible text and honours long literal prompts — describe the scene plainly rather than in keyword lists. Same quality ids, priced on render time at roughly 4–7× the Gen 7.2 preset, and every reference adds a surcharge on both models. Holder and up:get_accountreportscanUseImageNextandqualities.imageNext; a submit below the gate is refused with the tier that opens it, uncharged. The other image tools stay on Gen 7.2. - Gen8 Preview video (
videoModel: "next", the new video engine) renders clips with sound from a first frame plus up to 6refCreationIds(each adds a surcharge), with an optionalaspectRatio(autokeeps the first frame's ratio) and an optional audio reference — an MP3 fromupload_audioasaudioCreationId,audioUse: "music"(soundtrack / sound design) or"voice"(a voice sample the speaking character follows); it counts as one more reference. Lengths and presets depend on the account —fastquality and 1, 5, 8 or 10 s from Holder, every preset and up to 20 s at Founder:get_accountlists what the account may submit. Long clips render for several minutes: expect aqueueIdand collect it withcheck_generation. - Video styles and TIXI. Every video style except
raw(andauto) runs TIXI on the prompt: the style's guidance only exists through that rewrite, so it cannot be switched off. sends the prompt verbatim — pass to have TIXI write the motion scenario (Video) or the full Gen8 Preview video brief (shots, pictures, sound) from a short idea; a prompt starting with adds a thinking pass (the word is dropped from what TIXI reads). No extra credit either way.
The 2DAI stack
We currently use our Gen 7.2 model, and unlike others, we don't resell model access. All our models originate from the open-source community or our own R&D — we then disassemble, modify, fine-tune and optimize them to align with our legacy and 2DAI❤️ART lines. They also run on our own private cloud network.
The Gen8 generation is rolling out as two previews behind the next channels: Gen8 Preview video
(videoModel: "next", clips with sound) and Gen8 Preview images (imageModel: "next", 6 references). Same rule, same
cloud; get_account.modelChannels names the engine behind each channel.
Every tool response carries the model version and stack summary (via
get_account.platform), so an agent can hand these facts back to a user who
asks "what powers you?" without extra plumbing.
License
MIT
Community & links
- Website — www.2dai.io
- X — @2DAICommunity
- Telegram — t.me/Token2dAI
- $2DAI on Base — chart on Dexscreener · stake for tiers & daily credit airdrops
- SDK — 2dai-cloud-sdk for scripts, servers and apps
- GitHub — 2DAICommunity