trans4 / docs /ja-JP /reference /mcp-tools.md
Mayo
docs: update to match current implementation
725264a unverified
|
Raw
History Blame Contribute Delete
5.72 kB
---
title: MCP ツールリファレンス
---
# MCP ツールリファレンス
Koharu は次の場所で MCP ツールを公開しています。
```text
http://127.0.0.1:<PORT>/mcp
```
MCP サーバーは `rmcp 1.5` の streamable HTTP transport を使い、GUI および HTTP API と同じプロジェクト、シーン、パイプライン状態に対して動作します。
## 現在の MCP サーバーが公開しているもの
現在の実装は意図的に、プロジェクトのライフサイクル、履歴レイヤー、パイプラインジョブを中心とした小さく低レベルなサーフェスだけを公開しています。フィールド単位の細かな編集は、専用ツールではなく `koharu.apply``Op` ペイロードを渡して行います。
ページサムネイル、画像レイヤー、フォント一覧、シーンスナップショットなど、より詳細な検査が必要な場合は [HTTP API](http-api.md) を直接使ってください。両者は同じポートで並走し、同一プロセス内の状態を共有します。
## ツール
| ツール | 役割 | パラメータ |
| ----------------------- | ---------------------------------------------------------- | -------------------------------------------------------------------------------- |
| `koharu.apply` | 有効なシーンに `Op` を適用する | `op` — JSON タグ付きの `Op` 値 |
| `koharu.undo` | 直近の op を取り消す | なし |
| `koharu.redo` | 直近に取り消された op を再適用する | なし |
| `koharu.open_project` | Koharu プロジェクトディレクトリを開く、または作成する | `path`、任意で `createName` |
| `koharu.close_project` | 現在のプロジェクトを閉じる | なし |
| `koharu.start_pipeline` | パイプライン実行を開始し `jobId` を返す | `steps[]`、任意で `pages[]``targetLanguage``systemPrompt``defaultFont` |
### `koharu.apply`
履歴レイヤー経由でシーンに 1 つの変更を適用します。`op` には HTTP API の `POST /history/apply` が受け付けるのと同じ JSON タグ付き `Op` enum を渡します。代表的な variant には `AddPage``RemovePage``AddNode``UpdateNode``RemoveNode``Batch` があります。
レスポンスは `{ epoch }` で、op 適用後の新しいシーン epoch を返します。
### `koharu.undo` / `koharu.redo`
履歴スタックを 1 ステップずつ進めたり戻したりします。両方とも `{ epoch }` を返し、スタック端 (取り消すまたは再適用するものがない場合) では `epoch``null` になります。
### `koharu.open_project`
既存のプロジェクトディレクトリを開くか、指定パスに新しく作成します。`createName` を渡すとそのパス配下に新規プロジェクトを作成し、省略するとそこにある既存のものを開きます。
レスポンスはアクティブになったセッションの `{ name, path }` を返します。
### `koharu.close_project`
現在のセッションを閉じます。これ以降、プロジェクトを必要とする呼び出しは、別のプロジェクトを開くまで `invalid request` エラーを返します。
### `koharu.start_pipeline`
バックグラウンドでパイプライン実行をスポーンします。`steps` はパイプラインの `Registry` に登録された engine id の順序付きリストです (`GET /api/v1/engines` で検証されます)。`pages` を省略するとプロジェクト内全ページが対象になり、`PageId` のリストを渡すと対象を絞り込めます。
レスポンスは即座に `{ jobId }` を返します。進捗と完了は HTTP の `/events` ストリームに `JobStarted`、`JobProgress`、`JobWarning`、`JobFinished` として配信されます。MCP transport 自体はジョブ進捗をストリームしないので、SSE を購読してください。
## 推奨されるエージェントフロー
ほとんどのエージェントセッションは次のような流れになります。
1. `koharu.open_project` — 管理対象のプロジェクトディレクトリを指定する
2. HTTP 経由で `GET /api/v1/scene.json` を読み、シーンを確認する
3. 次のいずれか:
- 明示的な `Op` ペイロードで `koharu.apply` を呼び、絞り込んだ編集を行う
- `koharu.start_pipeline` でエンドツーエンドのパイプラインを実行し、`GET /api/v1/events` を監視する
4. HTTP 経由で `POST /api/v1/projects/current/export` から書き出す
5. `koharu.close_project`
`koharu.undo``koharu.redo` は、間違った op を適用してしまい、逆 op を手で計算するより取り消した方が早いときに便利です。
## 関連ページ
- [MCP クライアントを設定する](../how-to/configure-mcp-clients.md)
- [GUI / Headless / MCP モードを使う](../how-to/run-gui-headless-and-mcp.md)
- [HTTP API リファレンス](http-api.md)