Yeti について
Yeti は、Claude を使うプロダクトチーム向けの MCP サーバーで、課題の発見からスコープの検証までプロジェクトを進めます。フェーズごとに作業を整理し、要件とユーザーストーリーを管理し、RICE で優先順位を付けて Jira に送れます。
主な機能
- 015つの設計フェーズでプロジェクトを進行
- 02MoSCoW 要件とユーザーストーリーの管理
- 03RICE スコアの計算と並べ替え
- 04Mermaid のユーザーフロー図を作成
- 05バックログのエクスポートと Jira 同期
活用シーン
- 01プロダクトの課題を要件とユーザーストーリーに整理
- 02完了前に必須要件がカバーされているか確認
- 03入力した RICE スコアでアイデアを優先順位付け
- 04バックログを Jira に送り完了状態を同期
MCP 対応
Yeti は Claude 向け MCP サーバーで、プロジェクト、要件、ストーリー、優先順位、フロー図、エクスポート、ダッシュボード、Jira 操作用のツールを公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y yeti-mcpPRODUCT_DESIGN_DBAbsolute path of the SQLite database file. Set it to a folder you keep when running with npx.JIRA_SITEJira site, e.g. https://your-team.atlassian.net. Only needed for the Jira tools.JIRA_EMAILEmail of the Atlassian account. Only needed for the Jira tools.JIRA_API_TOKENシークレットAtlassian API token. Only needed for the Jira tools.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
31掲載時のツール一覧 · 5 日前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| goal | string | はい | ユーザーまたはビジネスが達成すべきこと |
| mode | enum | いいえ | strict | free |
| name | string | はい | |
| users | string | はい | 対象者 |
| problem | string | はい | 解決する問題 |
詳細
Yeti
Claude を使ったプロダクトデザインのための MCP サーバーです。プロジェクトを課題の把握から検証済みのスコープまで導きます。要件、ユーザーストーリー、RICE による優先順位付け、フロー図を作成し、その後、作業内容を Jira に送信します。

クイックスタート
Yeti を claude_desktop_config.json で Claude Desktop に追加し、Claude Desktop を再起動します。
{
"mcpServers": {
"yeti": {
"command": "npx",
"args": ["-y", "yeti-mcp"],
"env": { "PRODUCT_DESIGN_DB": "/Users/you/yeti/yeti.sqlite" }
}
}
}
PRODUCT_DESIGN_DB に、保管しておくフォルダー内のファイルを設定してください。npx を使う場合、パッケージは削除される可能性のあるキャッシュ内に置かれるため、そこに保存したデータベースも一緒に削除されてしまいます。Yeti には Node.js 22.13 以降が必要です。
次に、Claude に次のように依頼します。
Yeti で「職人向け見積もり」というプロジェクトを作成してください。課題:見積もりの作成に何時間もかかります。ユーザー:配管工と塗装工。目標:5 分で見積もりを作成すること。
Yeti のダッシュボードを開いてください。
仕組み
プロジェクトは、次の 5 つのフェーズを順番に進みます。
- discovery:課題、ユーザー、目標
- definition:要件(MoSCoW)とユーザーストーリー
- prioritization:アイデアの RICE スコアリング
- flows:Mermaid フロー図
- verification:すべての
must要件が完了し、ユーザーストーリーでカバーされていることを確認した後、プロジェクトを終了します
プロジェクトには作成時に選択するモードがあります。
strict(デフォルト):要件が満たされた場合にのみフェーズを進めます。advance_phaseは不足している項目を知らせます。free:要件に関係なくフェーズを進め、スキップした項目をレスポンスに一覧表示します。
ツール
プロジェクト
| ツール | 機能 |
|---|---|
create_project | ディスカバリーフェーズで、strict または free モードのプロジェクトを開始します |
list_projects | ID、名前、フェーズ、モードとともにプロジェクトを一覧表示します。includeArchived を設定しない限り、アーカイブ済みのプロジェクトは非表示になります |
get_project | フェーズ、不足している項目、関連付けられた項目を表示します |
project_summary | 進捗の概要です。優先度とステータス別の要件、ユーザーストーリーでカバーされている必須項目、完了した受け入れ基準、RICE の最上位項目、Jira リンク、完了に必要な不足項目を確認できます |
update_project | プロジェクトの名前、課題、ユーザー、目標を変更します |
advance_phase | 次のフェーズに進むか、不足している項目を一覧表示します |
set_project_mode | プロジェクトを strict モードと free モードの間で切り替えます |
duplicate_project | プロジェクトの要件とユーザーストーリーを未完了項目として新しいプロジェクトにコピーします(テンプレートとして使用できます) |
archive_project | プロジェクトを削除せずに list_projects から非表示にします |
delete_project | プロジェクトとその項目を完全に削除します。confirm: true が必要です。Jira の課題には影響しません |
要件とユーザーストーリー
| ツール | 機能 |
|---|---|
add_requirement | MoSCoW 優先度を指定して要件を追加します |
list_requirements | 優先度、ステータス、プロジェクトで絞り込んで要件を一覧表示します |
update_requirement | 要件のタイトル、説明、優先度を変更します |
set_requirement_status | 要件を open または done に設定します |
delete_requirement | 要件を削除し、ユーザーストーリーとの関連付けを解除します |
add_user_story | 受け入れ基準を含むユーザーストーリーを作成します。要件(requirementIds)への関連付けは任意です |
list_stories | ID、リンク、受け入れ基準の状態、Jira キーとともにユーザーストーリーを一覧表示します |
update_user_story | ユーザーストーリーのペルソナ、目標、メリット、関連要件、受け入れ基準を変更します。受け入れ基準を変更すると、完了状態はリセットされます |
set_criterion_status | ユーザーストーリーの受け入れ基準を 1 つ、完了または未完了に設定します |
delete_user_story | ユーザーストーリーを削除します |
search_items | 要件とユーザーストーリーをテキストで検索します。プロジェクトを 1 つ指定して絞り込むこともできます |
優先順位付けとフロー
| ツール | 機能 |
|---|---|
prioritize_rice | RICE スコアを計算して並べ替えます |
map_user_flow | Yes/No 分岐、next、ends を含む Mermaid フロー図を生成します |
list_flows | プロジェクトに保存されているフロー図をインデックスとともに一覧表示します |
delete_flow | list_flows に表示されるインデックスを指定して、保存済みのフロー図を 1 つ削除します |
インポート、エクスポート、ダッシュボード
| ツール | 機能 |
|---|---|
export_backlog | プロジェクトのバックログを Markdown または CSV としてエクスポートします。save を指定すると、data/exports/ にも書き出します |
import_requirements | export_backlog 形式の CSV から要件とユーザーストーリーをインポートします。ユーザーストーリーと要件の関連付けは復元されません |
open_dashboard | ライブの読み取り専用ダッシュボードを起動し、ローカルアドレスを返します |
export_dashboard | ダッシュボードの静的な HTML スナップショットを data/exports/dashboard.html に書き出します |
Jira
| ツール | 機能 |
|---|---|
push_to_jira | プロジェクトの Jira 課題を作成します(要件ごとに Task、ユーザーストーリーごとに Story)。デフォルトではドライランです。limit で一部のみ送信でき、update でリンク済みの課題を更新します。送信済みの項目はスキップされます |
sync_from_jira | Jira の課題が完了すると要件とユーザーストーリーを完了にし、課題が未完了に戻ると再度未完了にします。Yeti で手動で完了にした項目は未完了に戻りません。Jira への操作は読み取り専用です |
要件、ユーザーストーリー、RICE スコア、フローには、プロジェクトに関連付けるための任意の projectId を指定できます。
ソースからインストール
Node.js 22.13 以降が必要です(Yeti は組み込みの node:sqlite モジュールを使用します)。
git clone https://github.com/macorifice/yeti.git
cd yeti
npm install
npm run build
次に、お使いのマシン上の dist/index.js の絶対パスを指定して、claude_desktop_config.json に追加します。
{
"mcpServers": {
"yeti": {
"command": "node",
"args": ["/absolute/path/to/yeti/dist/index.js"]
}
}
}
ファイルを編集した後、Claude Desktop を再起動してください。
使用方法
接続すると、Claude に話しかけて Yeti を操作できます。一般的なプロジェクトは次のように進めます。
1. プロジェクトを作成する
プロジェクト「職人向け見積もり」を作成してください。課題:見積もりの作成に何時間もかかります。ユーザー:配管工と塗装工。目標:5 分で見積もりを作成します。
Yeti はプロジェクトを discovery フェーズで作成します。
2. フェーズを進める
- definition:要件を 1 つ以上追加し、それに関連付けたユーザーストーリーを 1 つ以上追加します。
- prioritization:RICE でアイデアを評価します。
- flows:フロー図を 1 つ以上作成します。
- verification:すべての
must要件が完了し、ユーザーストーリーでカバーされていることを確認します。
デフォルトの strict モードでは、フェーズが完了するまで Yeti は次に進まず、不足している項目を知らせます。free モードでは次に進み、スキップした項目を一覧表示します。set_project_mode で切り替えられます。
3. バックログを操作する
- 要件やストーリーを編集または削除します。
- 受け入れ条件を完了としてマークします。
- プロジェクト全体を検索します。
- プロジェクトを複製してテンプレートとして再利用します。
- CSV ファイルから要件をインポートします。
4. エクスポートする
プロジェクトのバックログを Markdown としてエクスポートし、ファイルに保存してください。
save: true を指定すると、データベースと同じ場所にある data/exports/ にファイルが書き込まれます。
知っておくと便利なこと
- データはローカルの
data/yeti.sqliteに保存されます。内容はチャットを経由するため、機密データは入力しないでください。 - RICE スコアは入力した数値です。Yeti は並べ替えますが、推定はしません。
事例
Mastro の例を使って、要件から Jira までを進める小規模なプロジェクトです。プロジェクトの作成、要件とユーザーストーリー、RICE による優先順位付け、フロー図、検証ゲート、Jira への送信、ステータスの同期を紹介します。

ダッシュボード
Yeti には、プロジェクトの設計面を確認できる読み取り専用ダッシュボードがあります。各プロジェクトのフェーズ、次に進むために不足している項目、ユーザーストーリーでカバーされている must 要件、受け入れ条件、RICE スコア、フロー図を確認できます。タスクボードは表示しません。実行管理は Jira で行います。

Claude から開くには:
Yeti ダッシュボードを開いてください。
Claude が open_dashboard を呼び出し、http://127.0.0.1:4321 のようなアドレスを提示します。または、ターミナルから起動できます。
npx yeti-mcp dashboard --port 4321
127.0.0.1のみで待ち受けるため、他のマシンからはアクセスできず、他のホスト名へのリクエストも拒否します。- MCP サーバーと同じデータベースを読み取り、10 秒ごとに更新します。
JIRA_SITEが設定されている場合、Jira のキーはリンクになります。- 図は CDN から読み込んだ Mermaid で描画されます。接続がない場合はテキストとして表示されます。
export_dashboard は、共有用に data/exports/dashboard.html へ静的スナップショットを引き続き書き出します。
認証情報
Yeti はアカウントなしで利用できます。外部サービスと通信するツールは 1 つだけです。
- その他すべて(プロジェクト、要件、ストーリー、RICE、フロー、検証、エクスポート、検索)はローカルで動作し、認証情報は不要です。
push_to_jiraは Jira に課題を作成します。次の 3 つの環境変数が必要です。
| 変数 | 値 |
|---|---|
JIRA_SITE | Jira サイト。例:https://your-team.atlassian.net |
JIRA_EMAIL | Atlassian アカウントのメールアドレス |
JIRA_API_TOKEN | id.atlassian.com → Security → API tokens で作成した API トークン |
たとえば ~/.zshrc などのシェルプロファイルに設定します。
export JIRA_SITE="https://your-team.atlassian.net"
export JIRA_EMAIL="[email protected]"
export JIRA_API_TOKEN="your-token-here"
トークンをリポジトリ、コミットする設定ファイル、またはチャットに記載しないでください。トークンが漏えいした場合は、同じページで無効化し、新しいトークンを作成してください。
これらの環境変数が設定されていない場合、push_to_jira は送信を拒否し、不足している変数を知らせます。ドライランのプレビューも、環境変数なしで実行できます。
データ
データは SQLite に保存されます。ソースをチェックアウトした場合のデフォルトは、プロジェクトフォルダー内の data/yeti.sqlite です。npx を使用する場合は、クイックスタートに記載されているとおり PRODUCT_DESIGN_DB を設定してください。以前のバージョンでは data/db.json を使用していました。このファイルは新しいバージョンの初回実行時に自動的にインポートされ、その後は変更されません。別の場所を使用するには、PRODUCT_DESIGN_DB 環境変数を設定してください。
"env": { "PRODUCT_DESIGN_DB": "/absolute/path/to/yeti.sqlite" }
テスト
npm test
テストでは一時データベースでサーバーを起動し、すべてのツールとフェーズのフローを確認します。
ステータス
1.0.0 以降、安定しています。ツール、その入力、データ形式はセマンティックバージョニングに従います。破壊的変更は新しいメジャーバージョンで行われます。
スポンサー
Yeti が役に立った場合は、GitHub Sponsors を通じて開発を支援できます。
ライセンス
MIT です。LICENSE を参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。