Kling AI MCP Server by useapi.net
Kling AI:4.0、v3及Omni影片、圖片、虛擬人像、唇形同步、動作控制、元素、語音。第三方,付費(每月15美元),使用您自己的Kling帳號運行。
託管 MCP 伺服器
npx add-mcp 'https://api.useapi.net/v1/kling/mcp'可安裝到 Claude Code、Codex、Cursor 等客戶端
文件
Kling MCP Server
October 16, 2026 (October 25, 2026)
Table of contents
- Endpoint and authorization
- Setup
- Use it in the Claude app or ChatGPT
- Tools
- Long-running work
- Example prompts
- Limits and notes
The useapi.net Kling MCP server lets an AI assistant such as the Claude app, ChatGPT, Claude Code, Cursor or VS Code Copilot use Kling AI on your own Kling accounts. It is a hosted Model Context Protocol server with 45 tools: generate video from text, images, keyframes or references with Kling 4.0, v3 and Omni, make talking avatars and motion-control videos, lip-sync, add sound and extend clips, generate and enhance images, and manage elements, voices, avatars and uploads. Each tool calls the Kling API, so the same rules and limits apply. Nothing needs to be installed or hosted.
Is there a Kling MCP server? Yes. useapi.net, a third-party service not affiliated with Kuaishou, hosts one at https://api.useapi.net/v1/kling/mcp with 45 tools for Kling 4.0, v3 and Omni video, avatars and lip-sync, on your own Kling account, nothing to install.
Prefer REST? Tutorial: How to Generate AI Video with Kling v3 via the Kling API · Code: github.com/useapi/kling-api
See all useapi.net MCP servers on Model Matrix & MCP.
Endpoint and authorization
https://api.useapi.net/v1/kling/mcp
- Transport: Streamable HTTP.
- Listed in the official MCP Registry as
net.useapi/kling, so MCP clients and directories that read the registry can find it by that name. - Authorization: your useapi.net API token in the
Authorization: Bearer …header, see Setup useapi.net. The Claude app and ChatGPT sign in with OAuth instead, see Use it in the Claude app or ChatGPT. - You need at least one Kling account added with Setup Kling. Adding and removing accounts is not available over MCP: use POST /accounts or the setup page.
Setup
Replace YOUR_API_TOKEN with your useapi.net API token.
Claude Code
claude mcp add --transport http useapi-kling https://api.useapi.net/v1/kling/mcp --header "Authorization: Bearer YOUR_API_TOKEN"
Cursor
In ~/.cursor/mcp.json:
{
"mcpServers": {
"useapi-kling": {
"url": "https://api.useapi.net/v1/kling/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}
VS Code
In .vscode/mcp.json:
{
"servers": {
"useapi-kling": {
"type": "http",
"url": "https://api.useapi.net/v1/kling/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}
Windsurf and other clients
Any client that supports remote MCP servers over HTTP with custom headers works. The usual JSON shape:
{
"mcpServers": {
"useapi-kling": {
"serverUrl": "https://api.useapi.net/v1/kling/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}
Some clients name the address field url instead of serverUrl.
Test it with curl
curl -s https://api.useapi.net/v1/kling/mcp \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl","version":"1"}}}'
curl -s https://api.useapi.net/v1/kling/mcp \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'
The first call answers with the server’s name useapi-kling and its instructions for the assistant, the second with the 45 tools.
Use it in the Claude app or ChatGPT
The Claude app (claude.ai and Claude Desktop) and ChatGPT can add this server as a custom connector. They sign in with OAuth: you give the app the URL, it opens a useapi.net page, and you paste your useapi.net API token there once. Both work on their Free plans. The API-token setups above for Claude Code, Cursor, VS Code and other clients keep working as before.
https://api.useapi.net/v1/kling/mcp
Claude app
- Open Settings → Connectors and click Add custom connector.
- Enter a name, for example
useapi Kling, and the URL above, then click Add. - Click Connect. Claude opens the useapi.net sign-in page.
- Paste your useapi.net API token and click Allow.
Claude asks before each tool call unless you choose Always allow. The Free plan allows one custom connector.
ChatGPT
- Open Plugins, click Add and choose Add custom MCP server.
- Enter a name and the URL above, and set Authentication to OAuth.
- Tick ChatGPT’s “I understand and want to continue” box, then click Create as a plugin.
- Click Connect. ChatGPT opens the useapi.net sign-in page.
- Paste your useapi.net API token and click Allow.
ChatGPT asks you to confirm each tool call that creates or changes something. The Free plan works without developer mode (as of October 25, 2026).
How the sign-in works
- Your API token is in your welcome email, see Setup useapi.net. The useapi.net page links there too.
- Each connection is for one MCP server. Connect each server you want to use on its own.
- The app gets an access token that lasts 1 hour and renews it on its own. A connection you don’t use for 90 days lapses, and you connect again.
- Resetting your API token disconnects every app connected with it.
- Results come back as public links, so they open right in the app.
Tools
Generations run as tasks on one Kling account. When you don’t name the account with email, the tool picks the one with the most free job slots and every answer says which account it used. Uploaded files, elements, voices, avatars and task ids belong to one account, so pass the same email when you use them.
Videos
| Tool | What it does | Main parameters |
|---|---|---|
kling_text_to_video | Generates a video from a prompt, or from custom multi-shot prompts on kling-v3-0 and kling-v4-0. | prompt, model_name, mode, duration, aspect_ratio, enable_audio, shot_N_prompt |
kling_image_to_video | Animates a start image, optionally to an end image, with Kling 4.0 keyframes in between or kling-v3-0 elements. | image, image_tail, keyframe_1..9, element_1..3, prompt, model_name, mode, duration |
kling_omni_video | Kling Omni (o1, v3 or v4): a video from a prompt with images, elements, reference videos and voices named in it as @image_1, @element_1, @video_1, @voice_1. | prompt, omni_version, image_N, element_N, video_N, voice_N, duration, mode |
kling_motion_control | Makes the person in an image perform the movement of a motion video. | imageUrl, motionUrl, model_name, mode |
kling_avatar_video | A talking-head video from an avatar or a portrait, speaking an audio file or text. | avatarId or imageUrl, audioUrl or text + speakerId, mode |
kling_lipsync | Makes the face in a video speak an audio track. | video, audio |
kling_add_sound | Generates sound effects and ambience for a video. | video |
kling_extend_video | Continues a finished video by about 5 seconds. It works on kling-v1-6 videos. | task_id, prompt |
kling_effect_video | Turns an image into a video with one of Kling’s effects. | effect, image, mode |
kling_elements_video | A video combining images and elements. | prompt, image_0..3, element_1..3, model_name |
The parameters match POST /videos/text2video, POST /videos/image2video-frames, POST /videos/omni and the other video endpoints.
Images
| Tool | What it does | Main parameters |
|---|---|---|
kling_omni_image | Omni images with up to 10 reference images and elements. | prompt, omni_version, resolution, image_N, element_N, imageCount, unlimited |
kling_kolors_image | Kolors images, with reference images on v3 or subject, face and restyle references on older versions. | prompt, version, imageCount, aspect_ratio, image_N |
kling_kolors_elements_image | Combines up to 4 subjects with a scene and a style image. | prompt, subjectImage1..4, sceneImage, styleImage |
kling_virtual_try_on | Dresses a person in clothes from images. | humanImage, dressInput or upperInput / lowerInput |
kling_upscale_image | Upscales an image from a finished Kling image task. | task_id, workId |
kling_enhance_image | Improves and restores the detail of any image, to 2k or 4k. | image, resolution |
kling_recognize_faces | Finds the faces in an image. | imageReference |
Tasks and files
| Tool | What it does | Main parameters |
|---|---|---|
kling_get_task | Reads a task and its results, and with wait: true waits for it to finish. | task_id, email, wait |
kling_list_tasks | Lists an account’s recent tasks with their results. | email, contentType, pageSize |
kling_list_works | Lists an account’s finished results only (videos, images, audio), with paging. | email, contentType, pageNum, sort |
kling_list_running | Lists the tasks still running and each account’s free job slots. | |
kling_stop_tracking | Stops tracking a stuck task and frees its slot. The task keeps running at Kling. | task_id |
kling_delete_task | Deletes every result of a finished task. | task_id, email |
kling_upload_asset | Uploads an image, video or audio file from a public https URL or as contentBase64, and returns the Kling URL to use as an input. | url or contentBase64, mimeType, email |
kling_list_uploads, kling_delete_uploads | List and delete your uploaded files. | email, contentType, ids |
kling_get_download_url | Returns a result’s file without the Kling watermark (paid Kling plans): MP4 or MOV for a video, PNG for an image. | workId, fileType |
Elements, voices, avatars and accounts
| Tool | What it does | Main parameters |
|---|---|---|
kling_list_elements, kling_get_element, kling_create_element, kling_delete_element | Manage reusable elements: characters, props and scenes made from an image or a video. | name, coverImage or video, tag, voice |
kling_list_element_tags, kling_list_element_voices | List the tags and the voices an element can have. | email |
kling_list_voices, kling_save_voice, kling_delete_voice | List, save and delete Kling 4.0 voices for kling_omni_video v4. | audioUrl, name, voiceId |
kling_list_tts_voices, kling_text_to_speech | List the text-to-speech voices and read text aloud. | speakerId, text, speed, emotion |
kling_list_avatars, kling_create_avatar, kling_delete_avatar | List, create and delete avatars for kling_avatar_video. | imageUrl, nickname, ttsSpeaker |
kling_list_effects, kling_list_motions | List the video effects and the ready-made motion videos. | email, mine |
kling_list_accounts, kling_get_account | List your Kling accounts and read one account’s credit balance. | email |
The full input schema of every tool comes from tools/list.
Long-running work
MCP clients usually give up on a tool call after about a minute, so a tool waits up to about 50 seconds:
- An image usually finishes in that time, and the tool returns it as an image the assistant can see.
- A video takes a few minutes. The tool returns the
task_idandemail, andkling_get_taskwith both andwait: truepicks it up. Ask the assistant to keep checking until it is done. The tool reads the task when Kling’s own estimate says it may be ready.
Clients that ask for progress notifications get one about every 10 seconds while a tool waits.
Results come back as Kling CDN links, which may carry a watermark. A finished video also comes back with its cover as an image.
Example prompts
- “Make a 5-second video of a golden retriever running on a beach at sunset, the cheapest way.”
- “Upload this photo and animate it: she smiles and turns her head slowly.”
- “Make a 10-second Kling 4.0 video from these three images as keyframes.”
- “Create an element of this character, then use it in an Omni video walking through a market.”
- “Make a talking avatar from this portrait that says: ‘Welcome to our store.’”
- “How many Kling credits are left on my accounts?”
Limits and notes
- The tools use your Kling accounts and the same rules as the REST API, such as
maxJobs. Everything uses the account’s Kling credits, and prices differ a lot by model and mode, see the cost calculator on the Kling API page. - Custom connectors on claude.ai need OAuth sign-in, which this server does not support yet. Use Claude Code or another client that can send an
Authorizationheader. - A client may send up to 20 JSON-RPC requests in one batch.
- If the client sends an
MCP-Protocol-Versionheader, it must be one of the supported versions:2025-06-18,2025-03-26or2024-11-05. - Every tool call shows in your usage stats (
bot=kling) as modelmcp, with the tool name as its status, orfailed.
Tutorials for the Kling API:
- How to Generate Kling 4.0 Video via the Kling API
- How to Generate AI Video with Kling v3 via the Kling API
- Sora 2 API Alternatives Compared, With Code: Seedance 2.5, Omni Flash, MiniMax H3, Kling v3
- How to Generate Multi-Reference & Multi-Shot Video with Kling Omni via the Kling API
- Kling Lip-Sync Avatars, Motion Control & Image Generation via the Kling API
{ "@context": "https://schema.org", "@type": "APIReference", "name": "Kling MCP Server: Kling 4.0 Video, Avatars and Lip-Sync, Hosted", "url": "https://useapi.net/docs/api-kling-v1/mcp", "inLanguage": "en", "isAccessibleForFree": true, "description": "Connect the Claude app, ChatGPT, Claude Code or any MCP client to the hosted useapi.net Kling MCP server: 45 tools for Kling 4.0, v3 and Omni video and lip-sync.", "about": "Kling API", "isPartOf": { "@type": "APIReference", "name": "Kling API" }, "publisher": { "@type": "Organization", "name": "useapi.net", "url": "https://useapi.net", "logo": { "@type": "ImageObject", "url": "https://useapi.net/assets/brand/useapi-logo-512.png" }, "alternateName": ["useapi", "UseAPI"], "sameAs": ["https://discord.gg/w28uK3cnmF", "https://t.me/use_api", "https://github.com/useapi", "https://bsky.app/profile/useapi.net", "https://www.youtube.com/@useapi-net"], "foundingDate": "2023-08" }, "documentationOf": { "@type": "WebAPI", "name": "useapi.net REST API", "documentation": "https://useapi.net/llms.txt", "termsOfService": "https://useapi.net/docs/legal" } }
{ "@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [ { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://useapi.net/" }, { "@type": "ListItem", "position": 2, "name": "Kling API", "item": "https://useapi.net/docs/api-kling-v1" }, { "@type": "ListItem", "position": 3, "name": "MCP Server", "item": "https://useapi.net/docs/api-kling-v1/mcp" } ] }