Whiteboard Animation
Turn any picture into a hand-drawn whiteboard animation video, from your AI assistant.
사용해야 할까요
품질 및 안전성
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"whiteboard-animation": {
"url": "https://mcp.whiteboardanimation.ai/mcp"
}
}
}원격 엔드포인트
https://mcp.whiteboardanimation.ai/mcpstreamable-http할 수 있는 일
도구 목록
도구 (9)
🟢quote
What drawing one picture costs, in credits, and the quote_version to pass when creating it.
입력 스키마
{
"type": "object",
"properties": {},
"required": []
}🟢status
Call first. The signed-in workspace: its plan, credits left, drawings queued and running, and how many may queue.
입력 스키마
{
"type": "object",
"properties": {},
"required": []
}🟡create_upload(file_name, content_type, size)
Start uploading a picture: answers an upload_url to PUT the bytes to, with the given headers. Then call create_drawing with the upload_id. Not needed when the host attaches the picture to create_drawing itself.
입력 스키마
{
"type": "object",
"properties": {
"file_name": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"content_type": {
"enum": [
"image/png",
"image/jpeg",
"image/webp"
],
"type": "string"
},
"size": {
"type": "integer",
"minimum": 1,
"maximum": 10485760
}
},
"required": [
"file_name",
"content_type",
"size"
]
}🟡create_drawing(upload_id, image, quote_version, max_credits, title, ...)
Draw a picture as a whiteboard animation. Spends credits (see quote). Answers at once with the drawing_id; the drawing takes a few minutes, follow it with get_drawing.
입력 스키마
{
"type": "object",
"properties": {
"upload_id": {
"type": "string",
"minLength": 1
},
"image": {
"type": "object",
"properties": {
"download_url": {
"type": "string",
"format": "uri"
},
"file_id": {
"type": "string"
},
"file_name": {
"type": "string"
}
},
"required": [
"download_url"
]
},
"quote_version": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"max_credits": {
"type": "number",
"minimum": 0
},
"title": {
"type": "string",
"maxLength": 120
},
"settings": {
"type": "object",
"properties": {
"line_duration": {
"type": "number",
"minimum": 1,
"maximum": 600
},
"color_duration": {
"type": "number",
"minimum": 1,
"maximum": 600
},
"hold": {
"anyOf": [
{
"const": 0
},
{
"const": 0.08
},
{
"const": 0.16
},
{
"const": 0.32
}
]
},
"color_order": {
"enum": [
"subject",
"natural",
"regions"
],
"type": "string"
},
"strategy": {
"enum": [
"baseline",
"regions",
"attention",
"cohesion"
],
"type": "string"
},
"brush": {
"type": "object",
"properties": {
"seed": {
"type": "integer"
},
"size": {
"type": "number",
"minimum": 0.1,
"maximum": 8
},
"swing": {
"type": "number",
"minimum": 0,
"maximum": 8
}
},
"required": [
"seed",
"size",
"swing"
]
}
},
"required": []
}
},
"required": []
}🟢get_drawing(drawing_id)
A drawing by id: its status and progress, its preview page, and once done the export options render_link accepts for it.
입력 스키마
{
"type": "object",
"properties": {
"drawing_id": {
"type": "string"
}
},
"required": [
"drawing_id"
]
}🟢list_drawings(limit)
The latest drawings in the library, newest first.
입력 스키마
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50
}
},
"required": []
}🟢render_link(drawings)
One link that renders up to 20 of your drawings as files, each with its own choices (format, resolution, aspect, background, hand…; see get_drawing export_options). Opening it in a browser renders them one after another and saves each file to that browser’s downloads; drawings still being drawn are rendered once they finish. Follow it with wait_render.
입력 스키마
{
"type": "object",
"properties": {
"drawings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"drawing_id": {
"type": "string",
"minLength": 1
},
"format": {
"enum": [
"mp4",
"webm",
"png"
],
"type": "string"
},
"resolution": {
"enum": [
"original",
"720p",
"1080p"
],
"type": "string"
},
"aspect": {
"enum": [
"original",
"16:9",
"9:16",
"1:1"
],
"type": "string"
},
"background": {
"enum": [
"paper",
"colour",
"transparent",
"layers"
],
"type": "string"
},
"colour": {
"type": "string",
"pattern": "^#[0-9a-f]{6}$"
},
"skip": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
}
},
"timing": {
"enum": [
"keep",
"trim"
],
"type": "string"
},
"hand": {
"type": "string",
"pattern": "^[\\w-]{1,40}$"
},
"hand_size": {
"type": "number",
"minimum": 0.65,
"maximum": 1.5
},
"hand_direction": {
"enum": [
"auto",
"right",
"bottom"
],
"type": "string"
},
"hand_tilt": {
"type": "integer",
"minimum": -15,
"maximum": 15
},
"trace": {
"type": "boolean"
}
},
"required": [
"drawing_id"
]
},
"minItems": 1,
"maxItems": 20
}
},
"required": [
"drawings"
]
}🟢wait_render(render_id, states)
A render link’s files: each drawing’s state (pending, rendering, saved, failed) and, once saved, its file name and size in the browser’s downloads. Pass back the states of the last answer: it answers as soon as any of them moves on, or after about 50 seconds.
입력 스키마
{
"type": "object",
"properties": {
"render_id": {
"type": "string"
},
"states": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"render_id"
]
}🟢wait_drawing(drawing_id, status, progress)
For the drawing card: answers get_drawing as soon as the drawing moves on from the status and progress the card last showed, or after about 50 seconds.
입력 스키마
{
"type": "object",
"properties": {
"drawing_id": {
"type": "string"
},
"status": {
"type": "string"
},
"progress": {}
},
"required": [
"drawing_id"
]
}커뮤니티
증거