# トラブルシューティング

> Nodaro MCP でよくある問題の解決方法です。サーバー URL の誤り、ログインの失敗、表示されないツールから、ジョブやアップロードの失敗、client_not_allowed などのエラーコードまで扱います。

Source: https://nodaro.ai/ja/docs/mcp/troubleshooting

このページでは、**Nodaro MCP サーバー**でよくある問題と、その解決方法を紹介します。接続とログインのエラー、表示されないツール、失敗したジョブや止まっているように見えるジョブ、アップロード、ツールが返すエラーコードを扱います。いま起きている症状に合うセクションから確認してください。

## 接続とログイン
### コネクタを追加すると、クライアントに OAuth エラーが表示される
1. URL が `https://mcp.nodaro.ai/mcp` と完全に一致し、末尾にスラッシュがないことを確認します。
2. お使いのネットワークで、`mcp.nodaro.ai` の名前解決ができることを確認します。
3. ディスカバリードキュメントを確認します。次のコマンドは、ステータス `200` で JSON を返すはずです。

```bash
curl https://mcp.nodaro.ai/.well-known/oauth-protected-resource
```

同じホストは `/.well-known/oauth-authorization-server` も提供しています。こちらも、ステータス `200` で JSON を返すはずです。

### ログインが完了しない、または URL が間違っている
サーバーが応答するのは `https://mcp.nodaro.ai/mcp` だけです。よくある次の 2 つの間違いでは、ログインが Nodaro に届く前に失敗します。

- **`https://api.nodaro.ai/mcp`**：このドメインは存在しないため、名前解決の段階で接続が失敗します。
- **`https://app.nodaro.ai/mcp`**：MCP について説明する Web ページで、サーバーではありません。ここに `POST` すると、エラーコード `wrong_mcp_host` とともに `405` が返ります。このエラーには、正しい URL が示されています。

Claude では、コネクタの URL を編集できません。問題のあるコネクタを削除し、`https://mcp.nodaro.ai/mcp` で追加し直してください。

### 同意画面に、クライアント名についてのオレンジ色の警告が表示される
これは想定どおりの動作です。自身を登録するクライアントは、「Claude」のような名前を自分で決めており、Nodaro はその名前を検証しません。この警告は、**許可**をクリックする前に、アクセスを求めているアプリが、いま設定しているアプリと同じものかを確認するよう促しています。

### 登録が「Client not allowed」で失敗する
クライアントが、受け付け対象のクライアントの一覧にない名前で登録されました。次のいずれかの方法で解決できます。

- Claude、ChatGPT、Cursor、Cline、Continue、Goose など、サポートされているクライアントを使います。
- [app.nodaro.ai/settings/developer-apps](https://app.nodaro.ai/settings/developer-apps) で開発者アプリを登録し、そのクライアント ID とシークレットを使います。[独自のクライアント](https://nodaro.ai/docs/mcp/connect/custom-client)を参照してください。
- 自分のインスタンスでは、クライアント名を `MCP_DCR_ALLOWLIST` に追加するか、`MCP_DYNAMIC_REGISTRATION=open` を設定するよう、管理者に依頼します。[セルフホスティング環境での MCP](https://nodaro.ai/docs/self-hosting/mcp) を参照してください。

### しばらくすると、アシスタントが動かなくなった
アクセスの有効期間は 90 日で、リフレッシュトークンはありません。有効期限が切れると、呼び出しは `401` を返します。クライアントからもう一度ログインするか、コネクタを削除して追加し直してください。

### 開始していない実行に「MCP 経由」と表示される
接続済みの MCP クライアントが、あなたの代わりに開始した実行です。**設定 › 接続済みアプリ**（[app.nodaro.ai/settings/connected-apps](https://app.nodaro.ai/settings/connected-apps)）を開きます。ここには、アカウントにアクセスできるすべてのアプリと AI アシスタントが、それぞれを接続した日、最後に使われた日とともに一覧表示されます。

- 自身を登録したアシスタントは、「AI アシスタント（MCP）— 名前はアシスタントが設定したものです」と表示されます。Nodaro はその名前を検証していません。
- 心当たりのないアプリを削除するには、**アクセスを取り消す**をクリックし、確認します。そのアプリのアクセスはすぐに無効になり、トークンも使えなくなります。

## ツールが表示されない
### クライアントは接続済みだが、ツールが表示されない、または一部しか表示されない
許可していない権限が必要なツールは、ツールの一覧にまったく含まれません。コネクタを削除してから追加し直し、同意画面ですべての権限を許可してください。また、一部のツールには複数の権限が必要です。

- **スタジオの生成ツール**には、`workflows:write` と `workflows:execute` の両方が必要です。どちらか一方だけでは、これらのツールは 1 つも表示されません。
- **ワークスペースのツール**には、`workspaces:read` と `workspaces:write` が必要です。ワークスペース機能ができる前に承認した接続には、これらの権限がありません。権限を得るには、接続し直してください。

どのツールにどの権限が必要かは、[権限](https://nodaro.ai/docs/mcp/tools#permissions)に記載しています。

### ドキュメントにあるツールが、一覧にまったくない
一部のツールは、Nodaro Cloud にしかありません。たとえば、パイプライン、スタジオプロダクション、Recast、ワークスペースのツール、`start_film_director`、`create_explainer`、`plan_edit`、`voice_changer_pro`、`pro_3d_render`、クレジットのツールです。ワークスペースのツールには組織機能が有効になっていることも必要で、`pro_3d_render` はそのレンダリングエンジンを利用できる間だけ表示されます。[Nodaro Cloud にしかないツール](https://nodaro.ai/docs/mcp/tools#tools-only-on-nodaro-cloud)を参照してください。

## ジョブと結果
### 生成が失敗した
アシスタントに、ジョブ ID を指定して `get_job` または `diagnose_run` を呼び出すよう頼みます。確認するのは `retryable` と `guidance` です。`retryable` が `false` の場合、同じリクエストをそのまま送っても再び失敗するため、設定か入力を変更してください。`suggestedProvider` がある場合は、同じプロンプトとリファレンスを、そのモデルで実行します。詳しくは、[ジョブが失敗した場合](https://nodaro.ai/docs/mcp/tools/jobs#when-a-job-fails)を参照してください。失敗したジョブのために確保されたクレジットは返還されます。ただし、後処理での失敗は例外です。

### ジョブが `pending_review` と表示される
このデプロイ環境では、人が確認するために結果を保留しています。ジョブは失敗したのではなく、まだ処理中です。状態の確認を続け、再実行はしないでください。重複したジョブも、同じように保留されます。

### `wait_for_job` が `timeout` を返す
これはエラーではありません。待機は最長 120 秒で終わり、その時点でジョブがまだ実行中だったということです。もう一度 `wait_for_job` を呼び出すか、5〜10 秒ごとに `get_job` でポーリングしてください。動画は通常 2〜10 分かかります。

### 結果のカードが表示されない
カードを表示するには、Web 版の Claude など、MCP Apps を表示できるクライアントが必要です。その他のクライアントでは、`get_job` でジョブを確認するようアシスタントに頼んでください。結果は必ずライブラリに保存されます。

### タイムアウトの後、実行が 2 回課金された
`run_workflow`、`run_app`、`run_component` とプロダクション用のツールに `client_request_id` を渡し、再試行するときは同じ値を使ってください。すると Nodaro は、2 つ目の実行を開始して課金する代わりに、1 つ目の実行を返します。

## アップロード
### Web 版の Claude で `prepare_image_upload` が失敗する
署名付き URL によるアップロードには、Cursor、Cline、Claude Desktop、Claude Code など、シェルからストレージのホストにアクセスできるクライアントが必要です。Web 版と Android 版の Claude では、`upload_image_widget` を使うか、ブラウザーで開くリンクを返す `request_image_upload` を使ってください。[アップロードツール](https://nodaro.ai/docs/mcp/tools/uploads)を参照してください。

## ワークフロー
### `update_workflow_json` で、ワークフローが変更されたと表示される
ワークフローを読み込んだ後に、誰かがそのワークフローを変更しました。`get_workflow_json` でもう一度読み込み、新しいバージョンを指定して、変更をもう一度送ってください。

### 送った設定と、保存された設定が違う
モデルは、すべてのアスペクト比、解像度、品質に対応しているわけではありません。Nodaro は、対応していない値を対応している値に変更するか削除し、変更の一つひとつを `adjustments` に記載します。元の値をもう一度送るのではなく、`list_models` を使って、その値に対応したモデルを選んでください。

### Film Director のキャンバスが空のまま
Film Director のスキルは、あなたがステージを承認した後に、そのステージのノードを一度に追加します。ノードを追加したと Claude が伝えるまで待ってから、画面を更新してください。そのほかの解決方法は、[Film Director](https://nodaro.ai/docs/mcp/film-director#if-something-goes-wrong) にあります。

## エラーコード
| コード | ツール | 意味 | 対処 |
| --- | --- | --- | --- |
| `wrong_mcp_host` | サーバー | クライアントが `app.nodaro.ai/mcp` の Web ページを呼び出した | `https://mcp.nodaro.ai/mcp` を使う |
| `client_not_allowed` | 登録 | クライアント名が受け付けられない | サポートされているクライアントか、開発者アプリを使う |
| `too_many_open_registrations` | 登録 | open モードで、1 つのクライアントの未使用の登録が多すぎる | 既存の登録を使うか、しばらく待つ |
| `dcr_disabled` | 登録 | インスタンスで自己登録がオフになっている | 管理者から受け取ったクライアント ID とシークレットを使う |
| `voice_not_found` | 音声ツール | ボイス ID が存在しない | 標準ボイスの名前か、自分でクローンしたボイスを使う |
| `advanced_mode_unsupported` | プロンプトとテキストのツール | Gemini 以外のモデルで `advanced_mode` が使われた | Gemini のモデルを選ぶか、詳細モードをオフにする |
| `locked_field` | `run_app` | `inputOverrides` で、出力の送り先を変更しようとした | 送り先は、アプリの定義のままにする |
| `portrait_required` | `generate_character` | キャラクターに承認済みのポートレートがない | 先に `approve_portrait` でポートレートを承認する |
| `main_image_required` | ロケーション、オブジェクト、クリーチャーのツール | 承認済みのメイン画像がない | 先にメイン画像を承認する |
| `candidate_object_mismatch`、`candidate_creature_mismatch` | 承認ツール | 候補が、このオブジェクトやクリーチャー用に生成されたものではない | そのオブジェクトやクリーチャー用に作られた候補を承認する |
| `scene_overlap` | `resolve_shot_sequence` | 2 つのシーンのリビールが、同じ時間帯に重なっている | 各シーンのキューを、次のシーンのキューより前に置く |
| `not_available` | スタジオプロダクションのツール | デプロイ環境が、スタジオプロダクションを提供していない | 再試行しない。その環境では、この機能を使えない |
| `studio_preview_unavailable` | `edit_studio_production` | デプロイ環境で、バッチをプレビューできない | 何も送信されていない。プレビューなしでバッチを適用するかを、ユーザーと決める |
| `not_finished` | `import_studio_production` | プランのジョブがまだ実行中 | ジョブの完了を待ってからインポートする |
| `cloud_only_feature` | `combine_videos` | セルフホスティング環境で `smart_cut` が使われた | `smart_cut` を使わずにクリップをつなぐ |
| `payer_balance_jwt_only` | `check_balance`、`credit_transactions` | デプロイ環境の共有請求アカウントは、接続したクライアントからは読み取れない | アプリで残高を確認する |

## Frequently asked questions

### クライアントでは Nodaro が接続済みと表示されるのに、ツールが 1 つも表示されないのはなぜですか？

同意画面で許可した権限が、ツールに必要な権限を満たしていません。コネクタを削除してから追加し直し、すべての権限を許可してください。

### Nodaro MCP サーバーには、どの URL を使えばよいですか？

https://mcp.nodaro.ai/mcp をそのまま使い、末尾にスラッシュを付けないでください。api.nodaro.ai は存在しません。また、app.nodaro.ai/mcp は Web ページで、サーバーではありません。

### client_not_allowed はどういう意味ですか？

クライアントが、受け付け対象のクライアントの一覧にない名前で登録されたことを示します。サポートされているクライアントを使うか、Nodaro の設定で開発者アプリを登録し、そのクライアント ID とシークレットを使ってください。

### 数か月たつと、アシスタントが動かなくなりました。なぜですか？

MCP クライアントからのアクセスの有効期間は 90 日で、リフレッシュトークンはありません。クライアントからもう一度ログインするか、コネクタを削除して追加し直してください。

### 自分で開始していない実行に「MCP 経由」と表示されています。どうすればよいですか？

接続済みのクライアントが、あなたの代わりに開始した実行です。app.nodaro.ai/settings/connected-apps の「設定 › 接続済みアプリ」を開いて、アカウントにアクセスできるすべてのアプリとアシスタントを確認し、心当たりのないもののアクセスを取り消してください。取り消すと、そのアクセスはすぐに無効になります。
