2026年5月5日に確認された「Microsoft Graph documentation update: Add graphify skill, Graph Researcher agent, and graphify instructions.」で最初に押さえるべき点は、Microsoft Graph APIのエンドポイントや権限が変わる更新ではないということです。今回の主な変更は、Microsoftのhve-coreリポジトリに、コードベースをナレッジグラフ化してGitHub Copilot Chatから構造的に調査するためのgraphify skill、Graph Researcher agent、graphify instructionsを追加する提案です。既存のMicrosoft Graph連携アプリに緊急の移行対応は不要ですが、HVE Core、GitHub Copilot Chat、MCPを使って開発支援ワークフローを整備しているチームは、設定・プライバシー・コスト・実験的機能である点を確認しておくべきです。(GitHub)
Microsoft Graph documentation updateでまず確認すべき結論
今回の更新名には「Microsoft Graph」が含まれますが、PRの内容を見る限り、Microsoft Graph REST APIそのものの仕様変更ではありません。Microsoft GraphのAPIレベルの変更は通常、Microsoft Graph API変更ログやMicrosoft Learnの「Microsoft Graphの新機能」で確認します。今回のPRは、HVE CoreのexperimentalコレクションにAI開発支援用アーティファクトを追加する内容です。(Microsoft Learn)
| 確認項目 | 判断 |
|---|---|
| Microsoft Graph APIの新エンドポイント追加 | PRの記載範囲では該当しない |
| Microsoft Graph権限・スコープの変更 | PRの記載範囲では該当しない |
| SDKや既存アプリの移行対応 | 直接の移行対応は不要 |
| 影響を受ける可能性がある人 | HVE Core、GitHub Copilot Chat、MCP、AIエージェント開発支援を使う開発者 |
| 注意すべき点 | experimental扱い、外部パッケージ依存、LLM利用時のファイル内容アップロード、graphify-out/の扱い |
実務上は、「Microsoft Graphの仕様が変わったのか」ではなく、Microsoft Graph関連の開発プロジェクトを含む大規模コードベースを、Copilot Chatで構造的に調査しやすくする仕組みが追加されようとしていると理解すると整理しやすくなります。
今回追加される3つの要素
PR #1518では、experimentalコレクション配下に、graphify skill、Graph Researcher agent、graphify instructionsを追加すると説明されています。graphify skillは、上流のPyPIパッケージgraphifyyをラップし、コードベース・ドキュメント・PDF・画像などをナレッジグラフ化するためのものです。(GitHub)
| 追加要素 | 役割 | 実務での見方 |
|---|---|---|
graphify skill | リポジトリをナレッジグラフ化し、graphify-out/に成果物を出力する | 依存関係、クラスタ、中心的なファイルを把握する下準備 |
Graph Researcher agent | 生成済みグラフをMCPツール経由で問い合わせ、構造的な質問に答える | Copilot Chatで「何が何に依存しているか」を調べる担当 |
graphify instructions | graphify-out/配下の扱い、監査タグ、プライバシー、コスト規律を定める | AIが生成物を誤編集したり、根拠を曖昧にしたりしないためのルール |
この変更は、単なるドキュメントページ追加ではありません。スキル、エージェント、指示ファイル、テスト、Docusaurusドキュメント、コレクションマニフェスト、プラグイン出力の更新まで含むため、HVE Coreを拡張しているチームにとっては開発ワークフロー全体に関係します。(GitHub)
graphifyで何ができるようになるのか
graphifyの狙いは、grepやIDEの「参照を検索」だけでは答えにくい、コードベース全体の構造的な問いに答えることです。たとえば、単にauth_middleware.pyという文字列を探すのではなく、「このファイルを変更すると、暗黙的にどのモジュールへ影響が広がるか」を調べる用途に向いています。(GitHub)
向いている質問
| 質問例 | 使われる主なMCPツール | 使いどころ |
|---|---|---|
| このファイルを変更すると何に影響するか | mcp_graphify_get_neighbors | リファクタリング前の影響範囲確認 |
| 機能Aと古い設定Bはどうつながっているか | mcp_graphify_shortest_path | 複数ファイルをまたぐ依存関係の確認 |
| 中心的なファイルやモジュールはどれか | mcp_graphify_god_nodes | 変更リスクが高い箇所の把握 |
| この認証処理はどのクラスタに属するか | mcp_graphify_get_community | 機能単位・責務単位の整理 |
| リポジトリ全体にどんなテーマがあるか | mcp_graphify_graph_stats | 初見プロジェクトの把握 |
Microsoft Graph連携アプリの開発現場で考えると、たとえば「Graph APIクライアントの共通ラッパーを変更する」「Webhook通知処理を分離する」「Entra ID認証まわりを更新する」といった作業の前に、関連するファイル群や暗黙的な依存を洗い出す用途が考えられます。
向いていない質問
graphifyは万能な検索ツールではありません。PR内の説明でも、リテラル文字列の検索、コードの正しさの判定、コミット差分の確認には向かないとされています。(GitHub)
| やりたいこと | 使うべきツール |
|---|---|
'TODO'という文字列を探す | grep、ripgrep、IDE検索 |
| 直近コミットの変更内容を確認する | Git、GitHubのdiff |
| コードのバグや脆弱性をレビューする | 静的解析、コードレビュー、専用エージェント |
| API仕様変更の有無を確認する | Microsoft Graph API変更ログ、Microsoft Learn |
この切り分けを誤ると、ナレッジグラフに向かない問いを投げ続け、結果として「AIが役に立たない」と感じやすくなります。graphifyは検索の置き換えではなく、複数ファイル・複数種類の資料をまたぐ構造把握を補助するものです。
影響範囲:誰が対応すべきか
今回の変更で確認すべき人は、Microsoft Graph APIを使っている全員ではありません。対象はかなり限定的です。
| 対象者・チーム | 対応の必要性 | 確認ポイント |
|---|---|---|
| Microsoft Graph APIを呼び出すだけのアプリ開発者 | 低い | API仕様・権限・SDK変更ではないため、通常の移行作業は不要 |
| HVE CoreをVS CodeやCopilot Chatで利用している開発者 | 中 | experimentalコレクションを有効化しているか、追加アーティファクトを使うか確認 |
| MCPサーバーをワークスペースに登録しているチーム | 中 | .vscode/mcp.jsonの管理方法、信頼できるローカル実行か確認 |
| 機密情報を含むリポジトリを扱うチーム | 高 | deep modeでファイル内容が外部APIへ送信される可能性を確認 |
| HVE Coreをforkして社内標準化しているチーム | 高 | コレクションマニフェスト、プラグイン生成、テスト、スペルチェックの更新を確認 |
GitHub上のPRは、experimentalコレクションへの追加であり、後方互換性のある追加変更として説明されています。ただし、記事執筆時点でPRページにはOpenと表示されているため、本番ワークフローへ組み込む場合は、マージ済みか、利用しているHVE Coreのリリースに含まれているかを確認してから判断してください。(GitHub)
導入前に確認したい設定と手順
graphifyを試す場合は、いきなり機密リポジトリや大規模リポジトリでdeep modeを実行しないことが重要です。まずは小さめの非機密リポジトリで、fastまたはstandardから始めるのが現実的です。
事前チェック
| チェック項目 | 確認内容 |
|---|---|
| HVE Coreの状態 | 対象PRがマージ済みか、利用中のバージョンに含まれるか |
| Python環境 | PR内のpyproject.tomlでは>=3.11が指定されているため、Python 3.11以上で検証するのが安全 |
| パッケージ名 | PyPIパッケージはgraphifyy、CLIはgraphify |
| 出力先 | graphify-out/が作成される |
| Git管理 | graphify-out/を.gitignoreへ追加する |
| 機密情報 | .env、秘密鍵、顧客データ、規制対象データが含まれないか確認 |
| LLM利用 | deep modeではファイル内容がClaude APIに送信される可能性がある |
PR内のskill説明ではPython 3.10+への言及がありますが、追加されたpyproject.tomlではrequires-python = ">=3.11"となっています。実務では、マージ後の最終ドキュメントを確認しつつ、まずPython 3.11以上で検証するのが安全です。(GitHub)
基本的なインストールとグラフ作成
標準的な試用では、上流パッケージをバージョン固定してインストールし、リポジトリをグラフ化します。
pip install graphifyy==0.5.4
graphify . --mode standard --update
機密性が高いリポジトリや、まず構文ベースで軽く確認したい場合は、LLM呼び出しを使わないfast modeが候補になります。
graphify . --mode fast --update
出力先はgraphify-out/です。PR内の説明では、主な成果物としてgraph.json、graph.html、GRAPH_REPORT.md、wiki/、cache/が示されています。graph.jsonはグラフ本体、graph.htmlは可視化、GRAPH_REPORT.mdは中心的ノードや意外な接続のレポート、cache/は差分更新に使うキャッシュとして扱われます。(GitHub)
MCPサーバーをVS Codeに登録する
Graph Researcher agentを使うには、生成済みのgraphify-out/graph.jsonをMCPサーバー経由でCopilot Chatから参照できるようにします。VS Codeでは、MCPサーバー設定をワークスペースの.vscode/mcp.jsonまたはユーザープロファイル側のmcp.jsonに保存できます。(Visual Studio Code)
{
"servers": {
"graphify": {
"command": "python3",
"args": ["-m", "graphify.serve", "graphify-out/graph.json"],
"type": "stdio"
}
}
}
設定後はVS Codeのウィンドウを再読み込みし、Copilot Chatでmcp_graphify_*ツールが表示されるか確認します。ローカルMCPサーバーはマシン上でコードを実行できるため、信頼できる設定だけを追加し、APIキーなどの機密情報を設定ファイルに直書きしないことも重要です。(Visual Studio Code)
Graph Researcher agentの使い方
Graph Researcher agentは、グラフを作るエージェントではありません。前提として、ワークスペースにgraphify-out/graph.jsonが存在し、graphify MCPサーバーが登録されている必要があります。条件が満たされていない場合、PR内のエージェント定義では、推測で答えず、グラフ作成やMCP登録の不足を明示するよう定められています。(GitHub)
質問例
Microsoft Graph関連のアプリ開発で使うなら、次のような問いが実用的です。
@graph-researcher What other modules are implicitly affected if I change graph_client.py?
@graph-researcher Show me the shortest path between subscription_renewal and notification_handler.
@graph-researcher Which files are the most-connected hubs around Entra auth?
@graph-researcher What community does the Teams message export code belong to?
良い質問のコツは、「調べたい構造」を明確にすることです。「このコードを直して」ではなく、「この変更の影響範囲は」「この機能とこの設定はどうつながるか」「中心的な依存元はどれか」のように聞くと、Graph Researcher agentの強みが出やすくなります。
監査タグの読み方:EXTRACTED、INFERRED、AMBIGUOUS
今回の更新で重要なのは、Graph Researcher agentが回答時に根拠の性質を示す点です。グラフ上のエッジには、EXTRACTED、INFERRED、AMBIGUOUSの監査タグが付きます。(GitHub)
| タグ | 意味 | 実務での扱い |
|---|---|---|
EXTRACTED | ASTやtree-sitterなどから決定的に抽出された関係 | 事実に近い根拠として扱える |
INFERRED | LLMの意味抽出により推定された関係 | 信頼度スコアを見て、仮説として扱う |
AMBIGUOUS | 複数の解釈があり曖昧な関係 | 断定せず、追加調査の対象にする |
特に注意したいのは、経路全体の信頼性です。たとえば、2ホップの依存関係のうち1つがEXTRACTEDで、もう1つがINFERREDなら、全体としては推定を含む経路として扱うべきです。Graph Researcher agentの回答をレビューするときは、「結論」だけでなく、使われたMCPツール名、ノードID、エッジの監査タグ、信頼度スコアまで確認してください。
セキュリティとプライバシーで注意すべき点
graphifyを業務リポジトリで使う場合、最も重要なのはdeep modeの扱いです。PR内の説明では、deep modeの意味抽出ではファイル内容がClaude APIへアップロードされるとされています。秘密情報、認証情報、顧客データ、規制対象データを含むツリーでは、deep modeを安易に実行すべきではありません。(GitHub)
実行前の安全確認リスト
| 確認項目 | NG例 | 推奨対応 |
|---|---|---|
| APIキー | .envにANTHROPIC_API_KEYやGraph APIのクライアントシークレットが残っている | .envを除外し、不要な秘密情報を削除 |
| 顧客データ | サンプルではないメール、ファイル、ログを含む | 非機密データで検証する |
| 規制対象データ | 医療、金融、契約、個人情報を含む | deep modeを避け、fast modeを検討 |
| 出力ファイル | graphify-out/graph.jsonをGitへコミット | graphify-out/を.gitignoreへ追加 |
| キャッシュ | graphify-out/cache/を編集・共有 | ビルド出力として扱い、手編集しない |
| MCP設定 | 不明なコマンドを.vscode/mcp.jsonへ追加 | 信頼できる設定だけを登録 |
VS CodeのMCPドキュメントでも、ローカルMCPサーバーは任意のコードを実行できる可能性があるため、信頼できるソースか確認するよう注意喚起されています。graphifyに限らず、MCPサーバーをチームで共有する場合は、設定ファイルをレビュー対象に含めるべきです。(Visual Studio Code)
よくある失敗と対処法
graphifyはexperimentalなワークフローであり、導入時につまずきやすいポイントがあります。PR内のskill説明にもトラブルシューティング項目が含まれています。(GitHub)
| 症状 | 原因 | 対処 |
|---|---|---|
graphify: command not found | PyPIパッケージ名とCLI名を混同している | pip install graphifyy==0.5.4を実行。CLI名はgraphify |
graphify-out/graph.json not found | グラフを作成していない | graphify . --mode standard --updateを実行 |
| MCPツールがCopilot Chatに出ない | .vscode/mcp.jsonの配置ミス、またはVS Code未再読み込み | パスを確認し、ウィンドウを再読み込み |
| 結果が古い | キャッシュが残っている、更新していない | --updateを付ける。必要に応じてcache/を削除 |
| 推定エッジが多く結論が弱い | コードベースの意味抽出が不十分 | 監査タグを確認し、必要ならdeep modeを検討。ただし機密性を先に確認 |
| 文字列検索に使ってしまう | 用途のミスマッチ | grep、ripgrep、IDE検索を使う |
| コード品質の判定に使ってしまう | グラフ中心性を品質指標と誤解している | 静的解析やコードレビューと併用する |
特に「グラフ上で中心的だから重要」「中心的だから悪いコード」と短絡しないことが大切です。中心性は、依存や接続の多さを示す指標であり、品質や正しさを直接示すものではありません。
Microsoft Graph開発チームでの活用シーン
Microsoft Graph連携アプリでは、認証、権限、APIクライアント、Webhook、差分取得、TeamsやSharePointとの連携など、複数領域のコードが絡みやすくなります。graphifyは、そうした複雑なリポジトリで「変更前の見取り図」を作る用途に向いています。
活用例
| シーン | 使い方 |
|---|---|
| Graph APIクライアントの共通化 | 共通クライアントに依存するファイルを洗い出す |
| Entra ID認証処理の見直し | 認証ミドルウェア、トークン取得、設定ファイルの接続関係を確認 |
| Webhook通知処理の改修 | サブスクリプション更新、通知受信、再試行処理の経路を調べる |
| SDKバージョン更新前の確認 | SDKラッパーや型定義に依存する箇所を把握 |
| 引き継ぎ・オンボーディング | 中心的なファイルや機能クラスタを短時間で把握 |
このような用途では、Graph Researcher agentの回答をそのまま作業指示にするのではなく、「次に読むべきファイル」を絞るために使うのが効果的です。PR内のエージェント定義でも、非自明な回答の最後に、グラフ結果から選んだ次に読むべきファイルやシンボルを提示するよう定められています。(GitHub)
導入判断の基準
graphifyは便利そうだから入れる、ではなく、導入価値とリスクを切り分けて判断するべきです。
| 導入を検討しやすいケース | 見送った方がよいケース |
|---|---|
| リポジトリが大きく、依存関係を追うのに時間がかかる | 小規模でIDE検索だけで十分 |
| コード、Markdown、PDFなど複数形式の資料が混在している | 文字列検索が主な用途 |
| Copilot ChatとMCPを既に使っている | MCPの運用ルールが未整備 |
| 影響範囲調査やオンボーディングに時間がかかっている | 機密データが多く、外部API利用の審査が未完了 |
| experimental機能を検証できる余裕がある | 本番標準ツールとして即時採用したい |
チーム導入するなら、最初は次の順序が現実的です。
- 非機密の小規模リポジトリで
fastmodeを試す graphify-out/の生成物と.gitignoreを確認する.vscode/mcp.jsonをレビュー対象に含める- Graph Researcher agentの回答に監査タグが出るか確認する
- 既存のgrep、IDE検索、静的解析、コードレビューと役割分担を決める
- deep modeを使う場合は、データ送信・コスト・APIキー管理を事前に承認する
今回の更新で取るべき次のアクション
今回のMicrosoft Graph documentation updateは、Microsoft Graph APIの利用者全員が移行作業をするタイプの変更ではありません。既存アプリのエンドポイント、権限、SDK更新を急ぐ必要はありません。
一方で、HVE CoreやGitHub Copilot Chatを開発標準に取り入れているチームは、次の3点を確認してください。
- 対象PRがマージ済みか、利用中のHVE Coreバージョンに含まれているか
experimentalコレクションを有効化する方針かgraphify-out/、MCP設定、deep modeの外部送信、APIキー管理をチームのセキュリティ基準に合わせられるか
Microsoft Graph関連の開発で活用するなら、まずは非機密リポジトリでfastまたはstandard modeを使い、Graph Researcher agentに影響範囲や依存関係を質問してみるのがよいでしょう。そこで「読むべきファイルを絞れる」「オンボーディングが速くなる」「リファクタリング前の確認に使える」と判断できてから、より大きなリポジトリやdeep modeの利用を検討するのが安全です。

コメント