2slides MCP Server について
2slides MCP サーバーは、2slides.com のツールを MCP クライアントに公開し、PowerPoint プレゼンテーションやカスタムデザインのスライドの生成、AI 音声ナレーションの追加を行います。結果はダウンロードリンクとして返され、テキストや参考画像からプレゼン資料を作成したいユーザー向けです。
主な機能
- 01テーマを使った PowerPoint の生成
- 02参考画像のスタイルに基づくスライドの生成
- 031人または2人の AI 音声ナレーション
- 04スライドのページと音声の ZIP エクスポート
- 05Streamable HTTP と stdio の接続方式
活用シーン
- 01テキストからのプレゼンテーションの作成
- 02参考画像のスタイルに合わせたスライドの作成
- 03完成したスライドへのナレーション追加と書き出し
MCP 対応
本プロジェクトは、プレゼン生成、テーマ検索、ジョブ確認、ナレーションのツールを MCP クライアントに公開する MCP サーバーです。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
7掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| userInput | string | はい | |
| themeId | string | はい | |
| responseLanguage | string | いいえ | |
| mode | enum | いいえ | sync | async |
詳細
2slides MCP サーバー

MCP クライアントで 2slides.com のツールを利用できるようにします。PowerPoint デッキやカスタムデザインのスライドを生成し、AI 音声ナレーションを追加して、完成したファイルをダウンロードリンクで取得できます。
API キーを取得する
接続する前に、2slides.com/api から API キーを取得してください。
接続
2slides はホスト型の Streamable HTTP MCP エンドポイントを提供しており、この stdio パッケージも用意されています。どちらも同じアカウントとクレジットを使って、同じ 7 つのツールを利用できます。
| Streamable HTTP | stdio(このパッケージ) | |
|---|---|---|
| セットアップ | 1 つのコマンドで完了。インストール不要 | Node.js 18 以降が必要。npx がパッケージを取得 |
| 更新 | サーバー側で行われ、常に最新 | お使いのマシンに再ダウンロード |
| 実行環境 | リモート接続に対応した任意の MCP クライアント | ローカルプロセスを起動できる任意のクライアント |
オプション 1 — Streamable HTTP(推奨)
Anthropic の MCP ドキュメントでは、HTTP は「リモート MCP サーバーへの接続に推奨されるオプション」とされています。2slides はローカルファイルやプロセスにアクセスする必要のないホスト型サービスなので、まずはこちらをお試しください。
Claude Code
claude mcp add --transport http 2slides "https://2slides.com/api/mcp?apikey=YOUR_2SLIDES_API_KEY"
claude mcp list で確認してください。サーバーに ✔ Connected と表示されるはずです。
プロジェクト設定(.mcp.json、チームで共有)
{
"mcpServers": {
"2slides": {
"type": "http",
"url": "https://2slides.com/api/mcp?apikey=YOUR_2SLIDES_API_KEY"
}
}
}
Claude Desktop / claude.ai:同じ URL を使って、claude.ai/customize/connectors でカスタムコネクターとして追加してください。
オプション 2 — stdio(ローカルプロセス)
クライアントがローカルプロセスの起動にしか対応していない場合、マシンから 2slides.com に直接接続できない場合、またはサーバーをご自身でバージョン固定してパッチを適用したい場合に使用してください。
Claude Code
claude mcp add 2slides -e API_KEY=YOUR_2SLIDES_API_KEY -- npx -y 2slides-mcp@latest
Claude Desktop — ~/Library/Application Support/Claude/claude_desktop_config.json(Windows の場合は %APPDATA%\Claude\claude_desktop_config.json)を編集します。
{
"mcpServers": {
"2slides": {
"command": "npx",
"args": ["-y", "2slides-mcp@latest"],
"env": {
"API_KEY": "YOUR_2SLIDES_API_KEY"
}
}
}
}
-y フラグを指定すると、npx は確認を求めずにパッケージをインストールします。その後、Claude Desktop を完全に再起動してください。チャットでツールパネルを開くと、以下のツールが表示されます。
利用可能なツール
slides_generate (POST /api/v1/slides/generate)
あらかじめ用意されたテーマ(Fast PPT)を使って PowerPoint プレゼンテーションを生成します。まず themes_search を使って themeId を探してください。
- 引数:
userInput(string, 必須) — プレゼンテーションの内容themeId(string, 必須) —themes_searchで取得したテーマ IDresponseLanguage(string, 任意、デフォルト:Auto) — 出力言語。対応する値:Auto、English、Spanish、Arabic、Portuguese、Indonesian、Japanese、Russian、Hindi、French、German、Greek、Vietnamese、Turkish、Thai、Polish、Italian、Korean、Simplified Chinese、Traditional Chinesemode(任意、デフォルト:sync) —syncはdownloadUrlをすぐに返します。asyncはjobs_getでポーリングするjobIdを返します
- クレジット: 1 ページあたり 1
- 例:
{ "themeId": "st-1756528793701-fcg5fblt2", "userInput": "Generate a 5-slide intro to machine learning", "responseLanguage": "English", "mode": "sync" }
themes_search (GET /api/v1/themes/search)
slides_generate で使う、あらかじめ用意されたテーマを検索します。
- 引数:
query(string, 必須) — 検索キーワード(例:business、minimal、dark)limit(number, 任意、デフォルト:10、範囲:1–100)
- 戻り値:
id、name、description、previewUrl、tagsを含むテーマの配列 - クレジット: 無料
- 例:
{ "query": "business", "limit": 5 }
jobs_get (GET /api/v1/jobs/{jobId})
ジョブの状態をポーリングし、準備ができたら結果を取得します。
- 引数:
jobId(string, 必須)
- 戻り値:
jobId、status(pending/processing/success/failed)、message、downloadUrl(成功時)、slidePageCount、createdAt、updatedAt、duration(ms)、jobUrl(Nano Banana のジョブのみ) - クレジット: 無料
- 注:
statusがsuccessまたはfailedになるまで、20 秒ごとにポーリングしてください。 - 例:
{ "jobId": "D8h9VYDGdTlZ6wWSEoctF" }
slides_create_like_this (POST /api/v1/slides/create-like-this)
参照画像のスタイルに合わせたスライドを生成します(Nano Banana)。
- 引数:
userInput(string、必須)— プレゼンテーションの内容referenceImageUrl(string、必須)— スタイルの参照画像の URLresponseLanguage(string、任意、デフォルト:Auto)aspectRatio(string、任意、デフォルト:16:9)— 有効な値:1:1、2:3、3:2、3:4、4:3、4:5、5:4、9:16、16:9、21:9resolution(string、任意、デフォルト:2K)—1K、2K、4Kpage(number、任意、デフォルト:0)—0= 自動検出、1–100= 正確なページ数contentDetail(string、任意、デフォルト:standard)—conciseまたはstandardmode(string、任意、デフォルト:async)—asyncはjobIdを返し、syncは直ちにdownloadUrlを返します
- クレジット: 1 ページあたり 100(1K/2K)または 200(4K)
- 例:
{ "userInput": "Create a presentation about AI trends", "referenceImageUrl": "https://example.com/style-reference.jpg", "aspectRatio": "16:9", "resolution": "2K", "page": 5, "contentDetail": "standard", "mode": "async" }
slides_create_pdf_slides (POST /api/v1/slides/create-pdf-slides)
参照画像を使わず、テキストの内容からカスタムデザインのスライドを生成します(Nano Banana)。
- 引数:
userInput(string、必須)— プレゼンテーションの内容designStyle(string、任意)— ビジュアルスタイルの自由記述。デフォルトのスタイルを使用する場合は空欄にしますresponseLanguage(string、任意、デフォルト:Auto)aspectRatio(string、任意、デフォルト:16:9)— 有効な値:1:1、2:3、3:2、3:4、4:3、4:5、5:4、9:16、16:9、21:9resolution(string、任意、デフォルト:2K)—1K、2K、4Kpage(number、任意、デフォルト:0)—0= 自動検出、1–100= 正確なページ数contentDetail(string、任意、デフォルト:standard)—conciseまたはstandardmode(string、任意、デフォルト:async)—asyncはjobIdを返し、syncは直ちにdownloadUrlを返します
- クレジット: 1 ページあたり 100(1K/2K)または 200(4K)
- 例:
{ "userInput": "Quarterly business review for Q3 2025", "designStyle": "modern, dark background, bold typography", "aspectRatio": "16:9", "resolution": "2K", "page": 8, "mode": "async" }
slides_generate_narration (POST /api/v1/slides/generate-narration)
完成した Nano Banana ジョブに AI 音声ナレーションを追加します(対象は slides_create_like_this または slides_create_pdf_slides のみ。Fast PPT は非対応)。常に非同期で実行されます。jobs_get で結果をポーリングしてください。
-
引数(単一の話者、デフォルトは
mode: "single"):jobId(string、必須)— 完了済みの Nano Banana ジョブの UUIDmode(string、任意、デフォルト:single)—singleまたはmultispeakerName(string、任意)— ナレーター名voice(string、任意)— 30 種類の音声から 1 つ(下記の一覧を参照)contentMode(string、任意、デフォルト:standard)—conciseまたはstandardincludeIntro(boolean、任意、デフォルト:true)
-
引数(2 人の話者、
mode: "multi"):jobId(string、必須)mode(string、必須)—multispeaker1Name(string、必須)speaker2Name(string、必須)speaker1Voice(string、任意)— 話者 1 の音声speaker2Voice(string、任意)— 話者 2 の音声contentMode(string、任意、デフォルト:standard)—conciseまたはstandard
-
対応音声(30 種類):
Puck、Aoede、Charon、Kore、Fenrir、Zephyr、Leda、Orus、Callirrhoe、Autonoe、Enceladus、Iapetus、Umbriel、Algieba、Despina、Erinome、Algenib、Rasalgethi、Laomedeia、Achernar、Alnilam、Schedar、Gacrux、Pulcherrima、Achird、Zubenelgenubi、Vindemiatrix、Sadachbia、Sadaltager、Sulafat -
クレジット: 1 ページあたり 210(テキスト 10 + 音声 200)
-
例:
{ "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "mode": "multi", "speaker1Name": "Alice", "speaker2Name": "Bob", "speaker1Voice": "Aoede", "speaker2Voice": "Puck", "contentMode": "standard" }
slides_download_slides_pages_voices (POST /api/v1/slides/download-slides-pages-voices)
スライドページと音声ナレーションを ZIP ファイルとしてエクスポートします。ジョブが完了し、ナレーションが生成済みである必要があります。
- 引数:
jobId(string、必須)— ナレーション生成済みのジョブの UUID
- 戻り値:
downloadUrl(1 時間で有効期限切れ)、fileName、expiresIn(3600 秒) - ZIP の内容:
pages/ page_01.png, page_02.png, … voices/ page_01.wav, page_02.wav, … transcript.txt - クレジット: 無料
- 例:
{ "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890" }
典型的なワークフロー
高速 PPT(テーマベースの PowerPoint):
themes_search→themeIdを取得しますslides_generate(同期)→downloadUrlを直接取得します
Nano Banana(カスタムデザインのスライド):
slides_create_like_thisまたはslides_create_pdf_slides(非同期)→jobIdを取得しますjobs_get(20 秒ごとにポーリング)→status: "success"になったらdownloadUrlを取得します
ナレーション付きの Nano Banana:
slides_create_like_thisまたはslides_create_pdf_slides→jobIdを取得しますjobs_get→ スライドの処理が完了するまで待ちますslides_generate_narration→ ナレーションのjobIdを取得しますjobs_get→ ナレーションの処理が完了するまで待ちますslides_download_slides_pages_voices→ ZIP のダウンロードリンクを取得します
トラブルシューティング(Claude Desktop)
- Claude にツールが表示されない場合は、設定ファイルのパスが絶対パスであることを確認し、アプリを再起動してください。
- Claude の MCP ログを確認します:
tail -n 50 -f ~/Library/Logs/Claude/mcp*.log
- stdio MCP サーバーでは、stdout へのログ出力を避けてください。このサーバーはエラーのみを stderr に出力します。
参考資料
- MCP サーバーの構築(公式ドキュメント):https://modelcontextprotocol.io/docs/develop/build-server
- 2slides API ドキュメント:https://2slides.com/api
- 2slides:https://2slides.com
- 2slides テンプレート:https://2slides.com/templates
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。