/ ディレクトリ / プレイグラウンド / Spec Workflow
● コミュニティ Pimzino ⚡ 即起動

Spec Workflow

作者 Pimzino · Pimzino/spec-workflow-mcp

ライブダッシュボードと人間による承認ゲートを備えた構造化された要件→設計→タスクのワークフロー — クロードの YOLO コーディング機能を停止します。

仕様ワークフローは、機能開発を 3 段階のパイプライン (要件ドキュメント、設計ドキュメント、タスク リスト) に変換します。各段階では、次に進む前に承認 (Web ダッシュボードまたは VSCode サイドバー経由) が必要です。クロードは先へスキップすることはできず、実装ログを書き込み、すべてのタスクの進行状況バーの状態を追跡します。ジラ・フォー・クロードって感じ。

なぜ使うのか

主な機能

ライブデモ

実際の動作

spec-workflow-mcp.replay ▶ 準備完了
0/0

インストール

クライアントを選択

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "spec-workflow-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@pimzino/spec-workflow-mcp@latest",
        "/path/to/project"
      ]
    }
  }
}

Claude Desktop → Settings → Developer → Edit Config を開く。保存後、アプリを再起動。

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "spec-workflow-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@pimzino/spec-workflow-mcp@latest",
        "/path/to/project"
      ]
    }
  }
}

Cursor は Claude Desktop と同じ mcpServers スキーマを使用。プロジェクト設定はグローバルより優先。

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "spec-workflow-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@pimzino/spec-workflow-mcp@latest",
        "/path/to/project"
      ]
    }
  }
}

Cline サイドバーの MCP Servers アイコンをクリックし、"Edit Configuration" を選択。

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "spec-workflow-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@pimzino/spec-workflow-mcp@latest",
        "/path/to/project"
      ]
    }
  }
}

Claude Desktop と同じ形式。Windsurf を再起動して反映。

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "spec-workflow-mcp",
      "command": "npx",
      "args": [
        "-y",
        "@pimzino/spec-workflow-mcp@latest",
        "/path/to/project"
      ]
    }
  ]
}

Continue はマップではなくサーバーオブジェクトの配列を使用。

~/.config/zed/settings.json
{
  "context_servers": {
    "spec-workflow-mcp": {
      "command": {
        "path": "npx",
        "args": [
          "-y",
          "@pimzino/spec-workflow-mcp@latest",
          "/path/to/project"
        ]
      }
    }
  }
}

context_servers に追加。保存時に Zed がホットリロード。

claude mcp add spec-workflow-mcp -- npx -y @pimzino/spec-workflow-mcp@latest /path/to/project

ワンライナー。claude mcp list で確認、claude mcp remove で削除。

ユースケース

実用的な使い方: Spec Workflow

バイブプロンプトではなく仕様を使用して機能を構築する

👤 中程度の複雑さの機能を出荷する開発者 ⏱ ~90 min intermediate

使うタイミング: あなたはクロードに「OAuth の追加」を依頼しようとしていますが、一度に実行される 500 行の差分を恐れています。

前提条件
  • プロジェクトのパスがわかっている — MCP は /path/to/project を引数として起動されます
フロー
  1. 要件
    Use spec-workflow. Create a spec named oauth-login. Start with requirements — what are we adding, who is it for, what are the non-goals?✓ コピーしました
    → Requirements doc drafted, link to dashboard for approval
  2. 承認+設計
    I approved in the dashboard. Now write the design: components, data model, sequence diagram, error cases.✓ コピーしました
    → Design doc with concrete architecture
  3. タスク + 実行
    I approved. Break into tasks. Then execute task 1.1 — just that one, stop after.✓ コピーしました
    → Task list created; only task 1.1 implemented with log entry

結果: レビュー可能な中間成果物とともに出荷される機能であり、謎の差分ではありません。

注意点
  • Claude tries to skip straight to code — The MCP blocks it — but be explicit in prompts anyway: "do not implement yet"

コードを作成する前に、エンジニア以外の関係者に仕様を承認してもらいます

👤 PM/デザインのサインオフ ループを備えたチーム ⏱ ~60 min intermediate

使うタイミング: 実装前に PM の承認が必要ですが、PM は GitHub PR を読みません。

前提条件
  • ダッシュボードURL共有可能 — リモート PM 用に ngrok 経由で localhost:5000 をポート転送または公開する
フロー
  1. Spec
    Draft the requirements doc for checkout-v2 and share the dashboard URL.✓ コピーしました
    → Doc + shareable link
  2. フィードバックによる反復
    PM left 3 revision comments in the dashboard. Fetch them and revise the doc.✓ コピーしました
    → Doc updated with revision history visible
  3. 事後承認を実行する
    Approval just went through — proceed to design.✓ コピーしました
    → Next stage starts; approval timestamp logged

結果: エンジニア以外の関係者からの追跡可能な承認チェーン。

注意点
  • Dashboard not reachable for remote users — Use Tailscale or ngrok with auth
組み合わせ: ギットハブ

組み合わせ

他のMCPと組み合わせて10倍の力を

spec-workflow-mcp + github

Open a PR per approved task

タスク 2.1 を実行した後、差分を含む「feat(oauth): task 2.1」というタイトルの GitHub PR を開きます。✓ コピーしました
spec-workflow-mcp + filesystem

Store specs in-repo alongside code

承認された仕様を /docs/specs/oauth-login.md に保存してコミットします。✓ コピーしました

ツール

このMCPが提供する機能

ツール入力呼び出すタイミングコスト
create_spec name: str 新しい機能を開始する free
write_requirements spec_id, content: markdown あらゆる仕様の最初の段階 free
write_design spec_id, content: markdown 要件が承認された後 free
create_tasks spec_id, tasks: [] デザイン承認後 free
execute_task spec_id, task_id 一度に 1 つのタスクを実装する free
get_approval_status spec_id, stage ゲートネクストステージ free

コストと制限

運用コスト

APIクォータ
地元
呼び出しあたりのトークン
ドキュメント/タスクのサイズに比例
金額
Free
ヒント
要件を簡潔に保つ - 承認コストはトークンではなく人間の時間です

セキュリティ

権限、シークレット、影響範囲

最小スコープ: filesystem-write (for spec docs)
認証情報の保管: None
データ送信先: なし - ローカルホストダッシュボード

トラブルシューティング

よくあるエラーと対処法

ダッシュボードが読み込まれない

明示的に開始します: npx -y @pimzino/spec-workflow-mcp@latest --dashboard

確認: Visit localhost:5000
ポート 5000 はすでに使用されています (macOS AirPlay)

「--port 5050」を渡すか、システム設定で AirPlay レシーバーを無効にします

確認: Check with `lsof -i :5000`
タスクは承認後も保留中のままになります

MCP クライアントが古いツールの結果をキャッシュしている可能性があります - クライアントを再起動してください

代替案

Spec Workflow 他との比較

代替案代わりに使う場面トレードオフ
Plain Markdown in /docs承認ループが不要なソロ開発構造の強制やダッシュボードはありません
Linear MCPあなたはすでにタスクに Linear を使用しており、クロードに問題に直接触れてもらいたいと考えていますspec-doc レイヤーがありません

その他

リソース

📖 GitHub の公式 README を読む

🐙 オープンな issue を見る

🔍 400以上のMCPサーバーとSkillsを見る