outflow-mcp について
outflow-mcpは、OutflowワークスペースのライブなアーキテクチャグラフをAIコーディングエージェントに提供します。依存関係や変更の影響を調べられ、グラフ処理はOutflowのREST APIを利用します。
主な機能
- 01アーキテクチャのノードとファイルを検索
- 02依存関係と変更影響を確認
- 03ノード間の経路を検索
- 04アーキテクチャの健全性と問題を確認
- 05直近のコーディングセッションを取得
活用シーン
- 01ファイルが依存するコンポーネントを把握
- 02ファイル変更の影響範囲を評価
- 03編集で循環依存が生じたか確認
- 04直近のコーディングセッションを振り返る
MCP 対応
ワークスペースのAPIキーで稼働中のOutflowインスタンスに接続し、アーキテクチャグラフの照会ツールをMCP対応クライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y outflow-mcpOUTFLOW_BASE_URLBase URL of your running Outflow instance. Defaults to http://localhost:3000 if omitted.OUTFLOW_API_KEYシークレットAPI key for the workspace to expose. Create one from workspace settings in Outflow (Settings → API Keys) — the raw key (ofk_...) is shown once.OUTFLOW_WORKSPACE_IDID of the workspace to expose. Found in the workspace URL (.../workspace/<id>/...) or workspace settings.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
9掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| path | string | はい | ファイルパスまたは部分パス(例:"src/ApiClient.ts"、"ApiClient") |
詳細
outflow-mcp
AI コーディングエージェント(Claude Code、Claude Desktop、その他の MCP 対応クライアント)に、Outflow のライブアーキテクチャグラフをコンテキストとして提供する MCP(Model Context Protocol)サーバーです。ワークスペースの実際に稼働中のグラフを使って、エージェントが「このファイルは何に依存しているか」「これを変更すると何が壊れるか」「直近の一連の編集で循環依存が発生したか」といった質問をできます。
Outflow の既存の /api/v1 REST API とワークスペースグラフのルートを利用する薄いクライアントであり、グラフのロジックは重複して実装していません。
このパッケージは Outflow のメインモノレポ内で開発されていますが、独立した公開ミラーから公開されています:https://github.com/laurells/outflow-mcp — MCP レジストリ/クローラーが参照するリポジトリであり、
npm publishもここから実行されます。リリースのたびに、変更内容は事前にここへ同期されます。
セットアップ
- 公開するワークスペースの API キーを作成します。Outflow で、ワークスペース設定 → API Keys → 作成の順に進みます。生のキー(
ofk_...)は一度だけ表示されるため、コピーしてください。 - ワークスペース ID を確認します — ワークスペースの URL(
.../workspace/<id>/...)またはワークスペース設定に記載されています。 - サーバーをビルドします:
cd packages/mcp-server npm install npm run build - MCP クライアントの設定に追加します。 Claude Code の場合は、MCP の設定(
claude mcp addまたは同等の設定ファイル)に追加します:
ローカル開発の場合、{ "mcpServers": { "outflow": { "command": "node", "args": ["/absolute/path/to/outflow/packages/mcp-server/dist/index.js"], "env": { "OUTFLOW_BASE_URL": "https://your-outflow-domain.com", "OUTFLOW_API_KEY": "ofk_...", "OUTFLOW_WORKSPACE_ID": "your-workspace-id" } } } }OUTFLOW_BASE_URLを省略すると、デフォルトでhttp://localhost:3000が使用されます。
ツール
| ツール | 質問できる内容 |
|---|---|
find_node | このファイルは追跡されていますか?ID は何ですか? |
list_nodes | 非推奨のノード、ヘルスが低いノード、または指定した種類のノードはありますか? |
get_dependencies | このファイルは何に依存していますか? |
get_impact | このファイルを変更すると何が壊れますか?(影響範囲) |
find_path | この 2 つのファイルはどのようにつながっていますか? |
get_architecture_health | 全体のヘルスグレードとリスクのあるノードは何ですか? |
find_architecture_smells | 現時点で循環依存、巨大なノード、またはデッドコードはありますか? |
get_architecture_graph | 指定したズームレベルでグラフ全体を表示してください。 |
get_last_session_recap | 直近のコーディングセッションでは何がありましたか? |
path を受け取るツールはすべて部分一致に対応しています(例:"ApiClient" は src/ApiClient.ts に一致します)。Outflow 内部の file::/method:: ID 形式を知る必要はありません。部分一致する候補が複数ある場合は、推測するのではなく、候補を一覧表示したエラーを返します。
補足
- このパッケージは単独で動作します。
server/やweb/にバンドルされることはなく、ビルド時にそれらへ依存しません。API キーを使って HTTP 経由で稼働中の Outflow インスタンスと通信するため、ローカルホストとデプロイ済みのインスタンスのどちらにも同様に接続できます。 get_dependencies/get_impactとfind_architecture_smells/find_pathはワークスペースグラフのルートを呼び出します。このパッケージの導入時点で、これらのルートは既存の Cookie セッション認証に加えてAuthorization: Bearer ofk_...も受け付けるよう拡張されています —server/src/graph/pathRouter.tsとsmellsRouter.tsを参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。