AI Video Generator MCP Server
AI Video Generator MCP Server
このMCP(Model Context Protocol)サーバーは、AI画像生成モデルを使用してテキストプロンプトや画像から動画を生成するツールを提供します。
対応モデル
Luma Ray2 Flash - Lumaの最先端画像→動画変換モデル
Kling v1.6 Pro - Klingの高品質画像→動画変換モデル
Related MCP server: Video Edit MCP Server
機能
テキストプロンプトからの動画生成
開始および/または終了画像を使用した動画生成
動画パラメータのコントロール(アスペクト比、解像度、長さ、ループ)
生成ステータスの確認
使用するAIモデルの選択
インストール
このリポジトリをクローンします
依存関係をインストールします:
npm install.envファイルを作成し、FAL.AI APIキーを設定します:FAL_KEY=your_fal_key_hereAPIキーはFAL.AIから取得できます
サーバーのビルド
npm run buildサーバーの実行
サーバーを直接実行できます:
npm startClaude Desktopとの統合
このサーバーをClaude Desktopで使用するには、claude_desktop_config.jsonファイルに次のように追加します:
{
"mcpServers": {
"video-generator": {
"command": "node",
"args": ["your_install_path/fal-mcp-server/build/index.js"],
"env": {
"FAL_KEY": "your_fal_key_here"
}
}
}
}利用可能なツール
generate-video
AIモデルを使用してテキストプロンプトおよび/または画像から動画を生成します。
パラメータ:
prompt(必須): 生成したい動画の内容のテキスト説明image_url(オプション): 動画の開始画像URL(URLまたはbase64データURI)end_image_url(オプション): 動画の終了画像URL(URLまたはbase64データURI)aspect_ratio(デフォルト "16:9"): 動画のアスペクト比 ("16:9", "9:16", "4:3", "3:4", "21:9", "9:21")resolution(デフォルト "540p"): 動画の解像度 ("540p", "720p", "1080p")duration(デフォルト "5s"): 動画の長さ ("5s", "9s")loop(デフォルト false): 動画をループさせるかどうかmodel(デフォルト "luma"): 使用するAIモデル ("luma"=Ray2, "kling"=Kling v1.6 Pro)
check-video-status
動画生成リクエストの状態を確認します。
パラメータ:
request_id(必須): チェックするリクエストIDmodel(デフォルト "luma"): リクエストに使用したAIモデル ("luma"=Ray2, "kling"=Kling v1.6 Pro)
Claudeでの使用例
猫が毛糸玉で遊んでいる動画を生成してください。縦向きモードでお願いします。Klingモデルを使用してください。Claudeは適切なパラメータでgenerate-videoツールを呼び出し、結果の動画URLを提供します。
モデル比較
Luma Ray2 Flash: 滑らかな動きとリアルな物理挙動に優れており、自然な結果が得られます。
Kling v1.6 Pro: 詳細な質感と特殊な効果に優れており、スタイル化された結果が得られます。
プロンプトと希望する結果によって、最適なモデルが異なる場合があります。
制限事項
動画生成には時間がかかる場合があります(特に高解像度の場合)
有効なFAL.AI APIキーと十分なクレジットが必要です
高解像度や長い動画はより多くのクレジットを消費します
両モデルともFAL.AIのクレジットを消費します(料金はモデルごとに異なる場合があります)
トラブルシューティング
APIキーエラー
FAL_KEY環境変数が正しく設定されていることを確認してください。Claude Desktop設定ファイル内で直接設定することも可能です。
動画生成エラー
動画生成中にエラーが発生した場合、詳細なエラーメッセージがログに記録されます。一般的な問題は:
APIキーの無効または期限切れ
アカウントのクレジット不足
不適切なプロンプトまたは画像
サーバー側の一時的な問題
エラーが続く場合は、しばらく待ってから再試行するか、プロンプトを変更してみてください。
ライセンス
MIT
Available Tools
2 toolscheck-video-statusC
Check the status of a video generation request
| Name | Required | Description | Default |
|---|---|---|---|
| model | No | AI model used for the request (luma=Ray2, kling=Kling) | luma |
| request_id | Yes | The request ID to check |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It states what the tool does but reveals nothing about response format, error conditions, rate limits, authentication requirements, or whether this is a read-only operation (though implied by 'check'). For a status-checking tool with zero annotation coverage, this leaves significant behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that states the core purpose without any wasted words. It's appropriately sized and front-loaded with the essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a status-checking tool with no annotations and no output schema, the description is incomplete. It doesn't explain what status information will be returned, possible states (pending, completed, failed), or how to interpret results. The agent would need to guess about the tool's behavior and output format.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already fully documents both parameters. The description doesn't add any parameter semantics beyond what's in the schema (like explaining the relationship between request_id and previous video generation). Baseline 3 is appropriate when the schema does all the parameter documentation work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('check') and resource ('video generation request'), making the purpose immediately understandable. However, it doesn't differentiate this status-checking tool from its sibling 'generate-video' tool, which would be helpful for an agent choosing between them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. There's no mention of prerequisites (like needing a request_id from a previous generation), nor does it explain the relationship with the sibling 'generate-video' tool, leaving the agent to infer usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate-videoB
Generate a video from text prompt and/or images using AI models (Luma or Kling)
| Name | Required | Description | Default |
|---|---|---|---|
| aspect_ratio | No | Aspect ratio of the video | 16:9 |
| duration | No | Duration of the video (9s costs 2x more) | 5s |
| end_image_url | No | Final image to end the video with (URL or base64 data URI) | |
| image_url | No | Initial image to start the video from (URL or base64 data URI) | |
| loop | No | Whether the video should loop (blend end with beginning) | |
| model | No | AI model to use (luma=Ray2, kling=Kling) | luma |
| prompt | Yes | Text description of the desired video content | |
| resolution | No | Resolution of the video (higher resolutions use more credits) | 540p |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions AI models but doesn't disclose important behavioral traits like: whether this is a synchronous or asynchronous operation, what permissions or authentication are needed, rate limits, credit costs (beyond the hint in the duration parameter schema), or what the output looks like. The description is minimal and lacks crucial operational context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that states the core purpose without unnecessary words. It's appropriately sized and front-loaded with the essential information. Every word earns its place in this concise formulation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex video generation tool with 8 parameters and no annotations or output schema, the description is insufficient. It doesn't explain the operation's nature (async/sync), authentication requirements, cost implications beyond the duration hint, error conditions, or what happens after invocation. The combination of complexity and lack of structured metadata demands more comprehensive description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 8 parameters thoroughly. The description adds no parameter-specific information beyond what's in the schema. The baseline score of 3 reflects adequate coverage through the schema alone, but the description doesn't enhance understanding of parameter usage or relationships.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Generate a video from text prompt and/or images using AI models (Luma or Kling)'. It specifies the verb ('generate'), resource ('video'), and input sources ('text prompt and/or images'), but doesn't differentiate from its sibling tool 'check-video-status' beyond the obvious generation vs. status check distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by mentioning AI models (Luma or Kling), suggesting this is for AI-generated video creation. However, it doesn't provide explicit guidance on when to use this tool versus alternatives, nor does it mention prerequisites or exclusions. The sibling tool 'check-video-status' is clearly complementary rather than an alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
v1.0.0- First observed
check-video-status - First observed
generate-video
TDQS
Scored across 2 tools
The two tools have completely distinct purposes with no overlap: one checks status of existing requests, the other creates new videos. An agent would never confuse these functions as they operate on different stages of the video generation workflow.
Both tools follow a consistent verb-object naming pattern with hyphen separation: 'check-video-status' and 'generate-video'. The naming is predictable and follows the same convention throughout the set.
With only 2 tools for a video generation server, the surface feels severely limited. While the basic create+status pair covers minimal functionality, a video generation domain typically requires more operations like listing videos, canceling generations, or managing templates. The count is too low for the apparent scope.
The toolset provides only generation initiation and status checking, creating significant gaps. Missing are operations like listing existing videos, canceling pending generations, retrieving generated content, managing templates/presets, or configuring generation parameters. Agents will hit dead ends when trying to manage the video lifecycle beyond initial creation.
Maintenance
Related MCP Connectors
MCP server for Kling AI video generation
MCP server for Google Veo AI video generation
MCP server for Hailuo (MiniMax) AI video generation
MCP server for Wan AI video generation
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceA server that provides Luma AI's video generation API as the Model Context Protocol (MCP)3-
- AlicenseNot gradedqualityFmaintenanceA Model Context Protocol server that enables AI assistants to perform comprehensive video and audio editing operations including trimming, effects, overlays, audio processing, and YouTube downloads.28MIT
- AlicenseAqualityBmaintenanceFastMCP server for Google's gemini-omni-flash-preview video model, enabling text-to-video, image-to-video, and video editing with stateful interactions and batch generation.264 PyPIMIT
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server for AI image and video generation using Midjourney through the AceDataCloud API.MIT