workflowy について
workflowy は Go で書かれた Workflowy 向けの MCP サーバー兼コマンドラインツールです。AI アシスタントからアウトラインを読み取り・編集できるほか、ターミナルやスクリプトから同じ操作を実行できます。正規表現検索、一括置換、利用レポート、バックアップファイルによるオフラインアクセスに対応しています。
主な機能
- 01正規表現に対応した全文検索
- 02ドライラン付きの一括検索置換
- 03分割、整形、シェルコマンドへのパイプなどのコンテンツ変換
- 04古いノードやミラーを調べる利用レポート
- 05--write-root-id による書き込み範囲の制限
活用シーン
- 01AI アシスタントによる Workflowy 内のタスクの検索と整理
- 02アウトライン全体での一括テキスト編集の事前確認
- 03定期レポートによる長期間更新されていないコンテンツの把握
MCP 対応
stdio 方式の MCP サーバーとして動作し、Workflowy の読み取り、検索、作成、更新、移動、置換の操作をツールとして公開します。--expose オプションで読み取り専用ツールに限定できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
docker run -i --rm -e WORKFLOWY_API_KEY ghcr.io/mholzen/workflowy:0.8.1WORKFLOWY_API_KEYシークレットYour Workflowy API key (get it from https://workflowy.com/api-key/)ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ghcr.io/mholzen/workflowy:0.8.1stdioツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Workflowy MCP サーバーと CLI
Go で書かれた、機能豊富な Workflowy 向け Model Context Protocol(MCP)サーバーと**コマンドラインインターフェイス(CLI)**です。AI アシスタント(Claude、ChatGPT など)を Workflowy のデータに接続したり、ターミナルエミュレーターやスクリプトからコマンドを実行したりできます。検索、一括置換、使用状況レポート、オフラインアクセス機能を備えています。
Workflowy MCP サーバーを選ぶ理由
- 正規表現を使った全文検索
- 一括検索と置換
- コンテンツの変換(分割、整形、LLM へのパイプ)
- 使用状況レポート(古いノード、サイズ分析、ミラー)
--write-root-idによるサンドボックス化された AI アクセス- バックアップファイルによるオフラインモード
- CLI と MCP サーバーを 1 つのツールで提供
- パフォーマンス向上のためのキャッシュ
- Homebrew によるインストール
- 基本的な CRUD 操作
- 短縮 ID の使用(Copy Internal Link)
クイックスタート
Homebrew でインストール
brew install mholzen/workflowy/workflowy-cli
API キーを設定する
mkdir -p ~/.workflowy
echo "your-api-key-here" > ~/.workflowy/api.key
API キーは https://workflowy.com/api-key/ で取得できます。
最初のコマンドを実行する
# Get the top-level nodes, and nodes two levels deep
workflowy get
# Generate a report showing where most of your nodes are
workflowy report count | pbcopy # paste directly into Workflowy!
macOS では pbcopy、Windows では clip、Linux では wl-copy、X11 システムでは xclip を使用してください。
Claude Desktop または Claude Code で使用する
Claude Code
claude mcp add --transport=stdio workflowy -- workflowy mcp --expose=all
読み取り専用ツールに制限するには、—expose=all を削除してください。
Claude Desktop
設定ファイルに追加します。
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"workflowy": {
"command": "workflowy",
"args": ["mcp", "--expose=all"]
}
}
}
Claude Desktop を再起動し、Claude に Workflowy を操作するよう依頼してください。
AI アシスタント向け MCP ツール
読み取りツール(安全)
| ツール | 説明 |
|---|---|
workflowy_get | ノードとその子孫をツリーとして取得 |
workflowy_list | 子孫をフラットなリストとして列挙 |
workflowy_search | テキストまたは正規表現でノードを検索 |
workflowy_targets | ショートカットとシステムターゲット(受信箱など)を列挙 |
workflowy_id | 短縮 ID またはターゲットキーを完全な UUID に解決 |
workflowy_report_count | コンテンツの大部分が存在する場所を特定 |
workflowy_report_children | 子が多いノードを特定 |
workflowy_report_created | 最も古いノードを特定 |
workflowy_report_modified | 古く、変更されていないノードを特定 |
workflowy_report_mirrors | 最も多くミラーされているノードを特定(バックアップが必要) |
書き込みツール
| ツール | 説明 |
|---|---|
workflowy_create | 新しいノードを作成 |
workflowy_update | ノードの内容を更新 |
workflowy_move | ノードを新しい親の下に移動 |
workflowy_delete | ノードを削除 |
workflowy_complete | ノードを完了としてマーク |
workflowy_uncomplete | ノードを未完了としてマーク |
workflowy_replace | 正規表現を使った一括検索と置換 |
workflowy_transform | ノードの内容を変換(分割、トリミング、シェルコマンド) |
CLI の機能
アウトライン全体を検索
# Find all TODOs (case-insensitive)
workflowy search -i "foobar"
# Regex search for dates
workflowy search -E "<time.*>"
# Search within a specific subtree (using Internal Link)
workflowy search "bug" --item-id https://workflowy.com/#/1bdae4aecf00
一括検索と置換
# Preview changes first (dry run)
workflowy replace --dry-run "foo" "bar"
# Interactive confirmation
workflowy replace --interactive "foo" "bar"
# Use regex capture groups
workflowy replace "TASK-([0-9]+)" 'ISSUE-$1'
よく使う CRUD 操作
# Add a task to your inbox
workflowy create "Buy groceries" --parent-id=inbox
# Change the name of an item
workflowy update xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx --name "Project Plan v2"
# Move an item to a different parent
workflowy move <item-id> <new-parent-id>
# Mark a node as complete, using a short ID
workflowy complete https://workflowy.com/#/xxxxxxxxxxxx
# Resolve a short ID or target key to full UUID
workflowy id inbox
コンテンツを変換
# Split a node's content by newlines into child nodes
workflowy transform <item-id> split -s "\n"
# Clean up text
workflowy transform <item-id> trim
workflowy transform <item-id> no-punctuation
# Pipe content through any shell command (e.g., an LLM)
workflowy transform <item-id> -x 'echo {} | llm "summarize this"'
使用状況レポート
# Where is most of my content?
workflowy report count --threshold 0.01
# Which nodes have the most children?
workflowy report children --top-n 20
# Find stale content (oldest modified)
workflowy report modified --top-n 50
# Find most mirrored nodes (requires backup)
workflowy report mirrors --top-n 20
データアクセス方法
用途に最適な方法を選択してください。
| 方法 | 速度 | 最新性 | オフライン | 最適な用途 |
|---|---|---|---|---|
--method=get | 中 | リアルタイム | いいえ | 特定の項目 |
--method=export | 高速* | 最悪で 1 分(レート制限による) | いいえ | ツリー全体へのアクセス |
--method=backup | 最速 | 古いデータ | はい | 一括操作 |
*初回取得後にキャッシュされます
Dropbox バックアップを利用したオフラインモード
Workflowy の Dropbox バックアップを有効にして、オフラインでデータにアクセスします。
workflowy get --method=backup
workflowy search -i "project" --method=backup
インストール方法
Homebrew(macOS と Linux)
brew install mholzen/workflowy/workflowy-cli
Scoop(Windows)
scoop bucket add workflowy https://github.com/mholzen/scoop-workflowy
scoop install workflowy
Go でインストール
go install github.com/mholzen/workflowy/cmd/workflowy@latest
バイナリをダウンロード
ビルド済みのバイナリは、GitHub Releases からダウンロードできます。
Docker
docker run --rm -e WORKFLOWY_API_KEY=your-key ghcr.io/mholzen/workflowy:latest get
ソースからビルド
git clone https://github.com/mholzen/workflowy.git
cd workflowy
go build ./cmd/workflowy
ドキュメント
使用例
AI アシスタントのワークフロー
Claude に次のように尋ねます。
- 「Workflowy で『meeting notes』を含む項目をすべて検索して」
- 「6 か月間、手を加えていないノードを表示して」
- 「Project A フォルダー内の『v1』をすべて『v2』に置き換えて」
- 「アウトラインの中で最も容量を使っているのは何?」
- 「最も多くミラーされているノードはどれ?」
- 「この項目を受信トレイに移動して」
CLI のワークフロー
# Morning review: find stale items
workflowy report modified --top-n 20
# Weekly cleanup: find oversized nodes
workflowy report count --threshold 0.05
# Find unnecessary mirrors
workflowy report mirrors --top-n 20
# Bulk rename: update project prefix
workflowy replace "OLD-" "NEW-" --parent-id projects-folder-id
# Split pasted content into child nodes
workflowy transform <item-id> split -s "\n"
コントリビューション
コントリビューションを歓迎します。詳しくはコントリビューションガイドをご覧ください。
# Development setup
git clone https://github.com/mholzen/workflowy.git
cd workflowy
go test ./...
ライセンス
MIT — LICENSEをご覧ください。
謝辞
- 書き込みコマンドをサンドボックス化する方法をご提案いただいた Andrew Lisy に感謝します。
- ミラーがバックアップファイル内で定義されていることをご指摘いただいた Craig P. Motlin に感謝します。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。