jpskill.com
🛠️ 開発・MCP コミュニティ

noui-generate-mcp

NoUI MCPサーバーの起動、停止、状態確認、一覧表示、Claude Codeへの接続など、サーバーに関する操作を、ユーザーがClaudeから簡単に行えるようにするSkill。

📜 元の英語説明(参考)

Use this skill when the user wants to start, stop, check, or list generated NoUI MCP servers, or connect a server to Claude Code. Triggers on "start the MCP server", "run noui mcp", "connect to Claude Code", "add to mcpServers", "noui mcp start", "noui mcp list", "noui mcp status", "how do I use the generated server", or "I want to call this tool from Claude".

🇯🇵 日本人クリエイター向け解説

一言でいうと

NoUI MCPサーバーの起動、停止、状態確認、一覧表示、Claude Codeへの接続など、サーバーに関する操作を、ユーザーがClaudeから簡単に行えるようにするSkill。

※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o noui-generate-mcp.zip https://jpskill.com/download/9726.zip && unzip -o noui-generate-mcp.zip && rm noui-generate-mcp.zip
🪟 Windows (PowerShell)
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/9726.zip -OutFile "$d\noui-generate-mcp.zip"; Expand-Archive "$d\noui-generate-mcp.zip" -DestinationPath $d -Force; ri "$d\noui-generate-mcp.zip"

完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。

💾 手動でダウンロードしたい(コマンドが難しい人向け)
  1. 1. 下の青いボタンを押して noui-generate-mcp.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → noui-generate-mcp フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。

詳しい使い方ガイドを見る →
最終更新
2026-05-18
取得日時
2026-05-18
同梱ファイル
1

📖 Skill本文(日本語訳)

※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。

NoUI MCP サーバーのライフサイクル

生成された FastMCP サーバーを管理し、それらを Claude Code に接続します。サーバーは /noui-record-workflow によって生成され、workbench/mcp_servers/<app_slug>/<server_id>/ の下に存在します。

すべてのコマンドは、noui/ ディレクトリから .venv/bin/python cli/main.py を使用して実行します。

前提条件: 少なくとも 1 つのサーバーが workbench/mcp_servers/ の下に存在する必要があります。存在しない場合は、最初に /noui-record-workflow を実行してください。

リクエストの実行方法: デフォルトでは、各ツールは Tabby の CDP エンドポイントへの WebSocket を開き、認証されたブラウザ内で fetch(..., {credentials: 'include'}) を実行します。呼び出し時には、ターゲットサイトが開いているライブの Tabby セッションが必要です。完全な説明と --execution-mode http のエスケープハッチについては、/noui-record-workflowHow Execution Works を参照してください。


重要なルール (絶対に違反しないこと)

  • 他のコマンドを実行する前に、必ず mcp list を最初に実行して、正確な server_id を取得してください。
  • server.py または manifest.json を直接編集しないでくださいworkflow export --as mcp を再実行して再生成してください。
  • ~/.claude.json に追加するときは、システムの python または python3 ではなく、.venv/bin/python への絶対パスを必ず使用してください。
  • ~/.claude.json を編集した後は、必ず Claude Code を再起動してください — 設定は起動時に読み込まれます。
  • ~/.claude.jsonstdio 設定を使用している場合は、mcp start を個別に実行する必要はありません — Claude Code が自動的にプロセスを起動します。

生成されたすべてのサーバーフォルダーには、API.md ファイルが含まれています — これは、すべてのツールに対する人間が読める API リファレンスです。tools.json や操作ファイルを調べなくても、それを読んでサーバーのツールを理解してください。tools.json を編集した後は、mcp docs <server_id> で更新してください。


ステップ 1 — 利用可能なサーバーのリスト

.venv/bin/python cli/main.py mcp list

出力:

MCP servers:

  SERVER ID                        APP                  TOOLS  STATUS
  -----------------------------------------------------------------------
  hubspot-create-contact-abc12345  HubSpot                  3  stopped
  jsonplaceholder-test-3ab1cc83    Jsonplaceholder Test      2  running (PID 46929)

管理するサーバーの server_id をメモしてください。


ステップ 2 — サーバーの起動

.venv/bin/python cli/main.py mcp start <server_id>

バックグラウンドでサーバープロセスを生成します。ログは以下に記録されます。

workbench/mcp_servers/<app_slug>/<server_id>/.mcp-<server_id>.log

MCP stdio サーバーは、接続されたクライアントがない場合、すぐに終了します — これは想定された動作です。サーバーは継続的にスタンドアロンで実行されることを意図していません。クライアントによってオンデマンドで起動されます。


ステップ 3 — サーバーのステータスの確認

.venv/bin/python cli/main.py mcp status <server_id>

CDP を使用するサーバー (Expedia のような Akamai で保護されたサイト) の場合、ステータスにはブラウザセッションのヘルス状態も表示されます。

  CDP       : ✓ reachable (localhost:9222)   ← worker is running
  CDP       : ✗ not reachable (localhost:9222) ← run: noui tabby session ensure

ステップ 4 — サーバーの停止

.venv/bin/python cli/main.py mcp stop <server_id>

SIGTERM を送信し、PID ファイルをクリアします。


ステップ 5 — Claude Code への接続

~/.claude.jsonmcpServers にサーバーを追加します。Claude Code は、command + args を介してサーバープロセスを自動的に起動します。

{
  "mcpServers": {
    "<server_id>": {
      "type": "stdio",
      "command": "/absolute/path/to/noui/.venv/bin/python",
      "args": [
        "/absolute/path/to/noui/workbench/mcp_servers/<app_slug>/<server_id>/server.py"
      ]
    }
  }
}

具体的な例 (パスを実際の noui ディレクトリに置き換えてください):

{
  "mcpServers": {
    "jsonplaceholder-test-3ab1cc83": {
      "type": "stdio",
      "command": "/home/gabriel/Documents/adopt/noui/.venv/bin/python",
      "args": [
        "/home/gabriel/Documents/adopt/noui/workbench/mcp_servers/jsonplaceholder-test/jsonplaceholder-test-3ab1cc83/server.py"
      ]
    }
  }
}

保存後、Claude Code を再起動してください。サーバーで定義されたツールが Claude Code のツールリストで利用可能になります。Claude Code で /noui-generate-mcp を実行して確認できます。


意思決定フロー

開始
  │
  ├─ どのようなサーバーが存在するかを確認する必要がある場合
  │     └─ ステップ 1: mcp list
  │
  ├─ 認証が機能しない / サーバーの準備ができているかどうかわからない場合
  │     ├─ mcp verify <server_id>      → PASS / NEEDS_SECRET / REPAIR_APPLIED
  │     └─ mcp diagnose-auth <server_id> → 修復の提案を含む完全な内訳
  │
  ├─ サーバーをスタンドアロンで実行する必要がある場合 (テスト/デバッグ)
  │     ├─ ステップ 2: mcp start <server_id>
  │     ├─ ステップ 3: mcp status <server_id>
  │     └─ ステップ 4: mcp stop <server_id>
  │
  └─ Claude Code からツールを使用する必要がある場合
        └─ ステップ 5: ~/.claude.json に追加 → Claude Code を再起動
               └─ 確認: Claude Code の /mcp にサーバーが表示される

CLI コマンドリファレンス

コマンド 目的
.venv/bin/python cli/main.py mcp list 実行ステータスを持つすべての生成されたサーバーをリストします
.venv/bin/python cli/main.py mcp start <server_id> バックグラウンドでサーバープロセスを開始します
.venv/bin/python cli/main.py mcp stop <server_id> 実行中のサーバープロセスを停止します
.venv/bin/python cli/main.py mcp status <server_id> 実行状態、ツール数、マニフェストパス、および CDP の到達可能性 (ブラウザベースのサーバーの場合) を表示します
.venv/bin/python cli/main.py mcp docs <server_id> 現在の tools.json から API.md を再生成します
.venv/bin/python cli/main.py mcp docs <server_id> --check API.md が古い場合は、ゼロ以外の終了コードで終了します (CI / エージェントの検証用)
.venv/bin/python cli/main.py mcp verify <server_id> AuthVerifier を実行します — PASS / REPAIR_APPLIED / NEEDS_SECRET / UNSUPPORTED を報告します
.venv/bin/python cli/main.py mcp diagnose-auth <server_id> 完全な認証診断: 戦略、環境変数のステータス、ステップごとの検証、修復の提案

トラブルシューティング

現象 解決策
mcp list にサーバーが表示されない ワークフローがまだエクスポートされていません — 最初に /noui-record-workflow を実行してください
MCP server '<id>' not found mcp list を実行します

(原文がここで切り詰められています)

📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開

NoUI MCP Server Lifecycle

Manage generated FastMCP servers and connect them to Claude Code. Servers are generated by /noui-record-workflow and live under workbench/mcp_servers/<app_slug>/<server_id>/.

All commands run from the noui/ directory using .venv/bin/python cli/main.py.

Prerequisite: At least one server must exist under workbench/mcp_servers/. Run /noui-record-workflow first if none exist.

How requests are executed: by default, each tool opens a WebSocket to Tabby's CDP endpoint and runs fetch(..., {credentials: 'include'}) inside the authenticated browser. A live Tabby session with the target site open is required at invocation time. See /noui-record-workflowHow Execution Works for the full explanation and the --execution-mode http escape hatch.


Critical Rules (Never Violate)

  • ALWAYS run mcp list first to get the exact server_id before any other command
  • NEVER edit server.py or manifest.json directly — regenerate by re-running workflow export --as mcp
  • When adding to ~/.claude.json, ALWAYS use the absolute path to .venv/bin/python — not the system python or python3
  • ALWAYS restart Claude Code after editing ~/.claude.json — the config is read at startup
  • You do not need to run mcp start separately when using the ~/.claude.json stdio config — Claude Code launches the process automatically

Every generated server folder includes an API.md file — a human-readable API reference for all tools. Read it to understand a server's tools without inspecting tools.json or operation files. Refresh it with mcp docs <server_id> after any edit to tools.json.


Step 1 — List Available Servers

.venv/bin/python cli/main.py mcp list

Output:

MCP servers:

  SERVER ID                        APP                  TOOLS  STATUS
  -----------------------------------------------------------------------
  hubspot-create-contact-abc12345  HubSpot                  3  stopped
  jsonplaceholder-test-3ab1cc83    Jsonplaceholder Test      2  running (PID 46929)

Note the server_id of the server you want to manage.


Step 2 — Start a Server

.venv/bin/python cli/main.py mcp start <server_id>

Spawns the server process in the background. Logs go to:

workbench/mcp_servers/<app_slug>/<server_id>/.mcp-<server_id>.log

MCP stdio servers exit immediately when there is no connected client — this is expected. The server is not meant to run continuously standalone; it is launched on-demand by the client.


Step 3 — Check Server Status

.venv/bin/python cli/main.py mcp status <server_id>

For servers that use CDP (Akamai-protected sites like Expedia), status also shows browser session health:

  CDP       : ✓ reachable (localhost:9222)   ← worker is running
  CDP       : ✗ not reachable (localhost:9222) ← run: noui tabby session ensure

Step 4 — Stop a Server

.venv/bin/python cli/main.py mcp stop <server_id>

Sends SIGTERM and clears the PID file.


Step 5 — Connect to Claude Code

Add the server to ~/.claude.json under mcpServers. Claude Code launches the server process automatically via command + args.

{
  "mcpServers": {
    "<server_id>": {
      "type": "stdio",
      "command": "/absolute/path/to/noui/.venv/bin/python",
      "args": [
        "/absolute/path/to/noui/workbench/mcp_servers/<app_slug>/<server_id>/server.py"
      ]
    }
  }
}

Concrete example (replace paths with your actual noui directory):

{
  "mcpServers": {
    "jsonplaceholder-test-3ab1cc83": {
      "type": "stdio",
      "command": "/home/gabriel/Documents/adopt/noui/.venv/bin/python",
      "args": [
        "/home/gabriel/Documents/adopt/noui/workbench/mcp_servers/jsonplaceholder-test/jsonplaceholder-test-3ab1cc83/server.py"
      ]
    }
  }
}

After saving, restart Claude Code. The tools defined in the server will be available in Claude Code's tool list. You can verify by running /noui-generate-mcp in Claude Code.


Decision Flow

Start
  │
  ├─ Need to see what servers exist?
  │     └─ Step 1: mcp list
  │
  ├─ Auth not working / not sure if server is ready?
  │     ├─ mcp verify <server_id>      → PASS / NEEDS_SECRET / REPAIR_APPLIED
  │     └─ mcp diagnose-auth <server_id> → full breakdown with repair suggestions
  │
  ├─ Need to run a server standalone (test/debug)?
  │     ├─ Step 2: mcp start <server_id>
  │     ├─ Step 3: mcp status <server_id>
  │     └─ Step 4: mcp stop <server_id>
  │
  └─ Need to use tools from Claude Code?
        └─ Step 5: add to ~/.claude.json → restart Claude Code
               └─ Verify: /mcp in Claude Code shows the server

CLI Command Reference

Command Purpose
.venv/bin/python cli/main.py mcp list List all generated servers with running status
.venv/bin/python cli/main.py mcp start <server_id> Start a server process in the background
.venv/bin/python cli/main.py mcp stop <server_id> Stop a running server process
.venv/bin/python cli/main.py mcp status <server_id> Show running state, tool count, manifest path, and CDP reachability (for browser-based servers)
.venv/bin/python cli/main.py mcp docs <server_id> Regenerate API.md from current tools.json
.venv/bin/python cli/main.py mcp docs <server_id> --check Exit non-zero if API.md is stale (for CI / agent validation)
.venv/bin/python cli/main.py mcp verify <server_id> Run AuthVerifier — reports PASS / REPAIR_APPLIED / NEEDS_SECRET / UNSUPPORTED
.venv/bin/python cli/main.py mcp diagnose-auth <server_id> Full auth diagnosis: strategy, env var status, per-step verification, repair suggestions

Troubleshooting

Symptom Fix
mcp list shows no servers No workflows exported yet — run /noui-record-workflow first
MCP server '<id>' not found Run mcp list to get the exact server_id string
Server crashes immediately Check .mcp-<server_id>.log in the server dir for Python errors
Stale PID (shows running but is not) mcp stop <server_id> clears stale PID; then mcp start again
Claude Code does not see tools after adding to config Confirm absolute paths are correct; restart Claude Code; run /noui-generate-mcp to verify connection
server.py not found error Re-run workflow export --as mcp for that session to regenerate the server
Auth errors at runtime (authenticated server) Run mcp diagnose-auth <server_id> — shows missing env vars and repair steps
NEEDS_SECRET <VAR> from verify Set <VAR>=<value> in noui/.env and re-run mcp verify <server_id>
Server is v1 (no auth_plan.json) Re-export with workflow export --as mcp ... --profile-slug <slug> --verify to upgrade to v2
Tool fails with "All connection attempts failed" CDP-based server needs browser session — run mcp status <server_id> to check CDP, then noui tabby session ensure
Tabby session shows HEALTHY but tools still fail Worker crashed but DB state is stale — run noui tabby session ensure (auto-detects and restarts dead workers)
Exported server has profile_slug: null No --profile-slug was passed at export time — re-export: workflow export --as mcp <session_id> --profile-slug <slug>