MCP for Primavera P6 について
MCP for Primavera P6 は、Oracle Primavera P6 Professional のスケジュールや XER ファイルを分析するローカル MCP サーバーです。プロジェクト管理やスケジューリング向けに、パス、品質、比較、リスク、レポートを計算し、管理手順を設けたデータベース編集にも対応します。
主な機能
- 01クリティカルパス、駆動パス、フロート、先読みの分析
- 02DCMA 14 項目とスケジュール品質の検査
- 03更新とベースラインの比較、what-if シナリオ
- 04インメモリでのモンテカルロスケジュールリスク分析
- 05Excel ダッシュボードの作成と XER ファイルの確認
- 06データベース編集のプレビュー、確認、バックアップ、記録
活用シーン
- 01プロジェクトの完了日を左右するアクティビティの特定
- 02スケジュール品質の確認と検査結果の経時比較
- 03期間やロジック変更による影響の評価
- 04更新版とベースラインを比較し、遅延を分析
MCP 対応
MCP クライアントに Primavera P6 と XER のスケジュール分析ツールを提供します。オプションの書き込みツールは、ドライランとバックアップの後、確認済みの変更を P6 データベースに適用します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細

Primavera P6 向け MCP:Primavera P6 MCP サーバー
Primavera P6 向け MCP は、Windows 上の Oracle Primavera P6 Professional のスケジュールに Claude、ChatGPT、Cursor、VS Code などの MCP クライアントを接続する、ローカルの Model Context Protocol(MCP) サーバーです。P6 データベースそのもの(P6 Professional スタンドアロン版、SQLite)またはプレーンな XER ファイルを読み取り、クリティカルパスとドライビングパス、トータルフロート、DCMA 14 項目チェック、ルックアヘッド、ベースラインと更新の比較、CPM what-if、モンテカルロ・スケジュールリスクを実際に計算して、スケジュールに関する質問に回答します。XER のみに対応する MCP サーバーとは異なり、変更を P6 データベースに書き戻すこともできます。期間、ロジック、制約、実績、単位、UDF が対象です。変更はそれぞれドライランでプレビューされ、確認後にのみ適用されます。また、事前にバックアップを取り、編集ログに記録します。
Primavera P6 向け MCP は独立したプロジェクトです。Oracle との提携、承認、スポンサー関係はありません。 Oracle、Primavera、P6 は Oracle および/またはその関連会社の商標です。

目次: 機能 · インストール · MCP クライアントの接続 · ツール · XER のみのサーバーとの比較 · 安全性 · プライバシー · P6 スキル · よくある質問 · トラブルシューティング
機能
アシスタントに「完了日を左右する要因は何ですか?」「3 月の更新に対して DCMA ヘルスチェックを実行して」「前回の更新から何が変わりましたか?」「調達にさらに 4 週間かかったらどうなりますか?」と質問できます。サーバーはスケジュールから回答を計算し、モデルが説明します。日付とフロートは、P6 で最後に実行したスケジュール計算(F9)の結果に基づきます。
- スケジュール分析:プロジェクトと EPS、WBS のロールアップ、ステータス、フロート、日付、アクティビティコードまたは UDF によるアクティビティの絞り込み、プロジェクトのラグカレンダールールを使用した関係、クリティカルパス(トータルフロートまたは最長パス)、ドライビングパス、フロートパス、アクティビティのフロートの発生元、フロート分布、ルックアヘッド期間。
- スケジュール品質:プロジェクト独自の P6 しきい値を用いた DCMA 14 項目チェック、ロジック密度と加重評価、過去のチェックとの比較、順序外の進捗、未接続の端点、冗長なリンク。
- 比較、what-if、リスク:2 つの更新またはベースラインをアクティビティ単位およびリンク単位で比較し、遅延の原因とフロートの減少を確認します。更新と前回の更新との整合性レビュー(提起すべき質問であり、証明ではありません)も行います。P6 の F9 と照合済みの CPM エンジン(
p6_cpm_validateが一致状況を報告)を用いて、what-if シナリオとモンテカルロ・リスクをメモリ上で実行し、書き込みは行いません。 - 進捗とレポート:データ日付時点の S カーブとアーンドバリュー、リソースとコストの概要、ステータス、WBS、コードごとのグループ分け、ネイティブチャートを備えた 1 ページの Excel ダッシュボード。
- XER ファイル:P6 データベースや P6 のインストールなしで、XER 専用モードで XER ファイルの調査、インポート(新規プロジェクト、ベースライン、更新)、エクスポート、分析を行えます。
- 編集(デフォルトでは無効):期間、制約、実績日、物理的進捗率、リソース割り当て単位、アクティビティ UDF 値、関係、スケジュールオプション、EPS、削除、バックアップ、復元。
インストール
MCP for Primavera P6 は Windows 10 または 11 上で、P6 Professional と並行して動作します。ほかにインストールするものはありません。Python は同梱されています。
- リリースから
P6MCP-Setup-<version>.exeをダウンロードし、SHA256SUMS.txt(certutil -hashfile P6MCP-Setup-2.0.0.exe SHA256)と照合します。 - 実行します。インストーラーは現在の Windows ユーザーのみを対象にインストールするため、管理者権限は不要です。最後のページでは、検出したすべての MCP クライアント(Claude Desktop、Claude Code、Cursor、VS Code、LM Studio、Cline)へのサーバー登録を提案します。登録しないクライアントのチェックを外してください。
- MCP for Primavera P6 Settings が開きます。Database で P6 データベースを選択し(候補は P6 自体の接続リストから取得されます)、Test connection(読み取り専用)をクリックし、次に Use this database をクリックしてから Save をクリックします。サーバーがデータベースを自動で選択することはありません。設定するまでは、どのツールも「No database configured」と応答します。
- MCP クライアントを完全に終了してから再起動します。
リリースビルドにはまだコード署名がありません。初回起動時に Windows SmartScreen が警告を表示することがあります(「詳細情報」、「実行」)。まず SHA-256 を確認してください。リリースページには、ほかにもポータブル zip(インストール不要)とMCP バンドル(.mcpb、サーバーのみ)があります。MCP バンドルは Claude Desktop にワンクリックでインストールでき、公式 MCP Registry にも io.github.nizarhamza/p6-mcp として掲載されているパッケージです。
MCP クライアントを接続する
インストーラーと Settings > MCP clients は、タイムスタンプ付きのバックアップを作成したうえで、p6mcp エントリのみを追加(または修復、削除)し、ほかのエントリ、コメント、ファイルの書式はすべて維持して、クライアント設定を書き込みます。以下の手動手順は参考用です。各コード例の <you> は Windows のユーザー名に置き換えてください(または Settings > MCP clients > Other clients からコード例をコピーすると、実際のパスが入力されます)。
Claude Desktop
インストーラーに登録させるか、.mcpb バンドルをダブルクリックしてインストールするか(Settings > Extensions に表示されます。そこでデータベースを選択してください)、または %APPDATA%\Claude\claude_desktop_config.json を編集します。
{
"mcpServers": {
"p6mcp": {
"command": "C:\\Users\\<you>\\AppData\\Local\\Programs\\P6 MCP\\p6mcp-server.exe",
"args": []
}
}
}
Claude Desktop を完全に終了し(通知領域からも終了して)、再起動します。P6 スキルは + メニューにプロンプトとして表示されます。
Cursor
インストーラーが %USERPROFILE%\.cursor\mcp.json に登録します。または、上記の Claude Desktop と同じ mcpServers エントリをそのファイルに追加します。Cursor では、ツールが Settings > MCP の下に表示されます。
VS Code(GitHub Copilot エージェントモード)
インストーラーが %APPDATA%\Code\User\mcp.json に登録します(VS Code Insiders の場合は ...\Code - Insiders\User\mcp.json)。手動で設定する場合は、MCP: Open User Configuration を実行して、次の内容を追加します。
{
"servers": {
"p6mcp": {
"type": "stdio",
"command": "C:\\Users\\<you>\\AppData\\Local\\Programs\\P6 MCP\\p6mcp-server.exe",
"args": []
}
}
}
次に、Copilot Chat を Agent モードで開き、ツールメニューからツールを選択します。
ChatGPT
ChatGPT は PC 上のプログラムを起動できないため、接続方法は 2 つあります。どちらもメンテナーによる動作確認はまだ行われていません。issue で状況をお知らせください。
-
Codex(ChatGPT デスクトップアプリ内、または Codex CLI)は、ローカル MCP サーバーを
%USERPROFILE%\.codex\config.tomlから起動します。[mcp_servers.p6mcp] command = 'C:\Users\<you>\AppData\Local\Programs\P6 MCP\p6mcp-server.exe' args = [] -
ChatGPT チャットは、HTTPS 経由でのみ MCP サーバーに接続できます。OpenAI の Secure MCP Tunnel は、PC 上で小さなクライアントを実行し、サーバーを起動して(上記の stdio コマンド)、受信ポートを開かずに ChatGPT のリクエストを転送します。その後、ChatGPT で接続方法に Tunnel を選択して、カスタム MCP サーバーを追加します。OpenAI platform API key と、カスタム MCP サーバーを利用できる ChatGPT プランまたはワークスペースが必要です。ツールの結果は、ChatGPT の会話と同様に OpenAI のサービスを経由します。
Claude Code、LM Studio、Cline およびその他のクライアント
インストーラーは、Claude Code(%USERPROFILE%\.claude.json)、LM Studio(%USERPROFILE%\.lmstudio\mcp.json)
および Cline も登録します。Claude Code を手動で設定する場合:
claude mcp add --scope user p6mcp -- "$env:LOCALAPPDATA\Programs\P6 MCP\p6mcp-server.exe"
stdio サーバーを起動するその他のクライアントでは、上記の mcpServers スニペットを使用します。HTTP が必要なクライアントでは、
ローカル HTTP トランスポートを使用できます。コマンドラインから実行する場合(インストーラーも同じコマンドを使用します):
& "$env:LOCALAPPDATA\Programs\P6 MCP\p6mcp-server.exe" clients list
& "$env:LOCALAPPDATA\Programs\P6 MCP\p6mcp-server.exe" clients register cursor

ツール
58 個のツール:読み取り専用が 37 個(そのうち 11 個は Basic プロファイルに含まれます)、ファイルを書き込むものが 2 個、書き込みツールが 18 個(デフォルトではオフ。まずドライランを行い、その後に確認が必要です。事前にバックアップを作成します)、アプリ自体の設定を変更するものが 1 個です。tools/gen_docs.py により、コードから生成されています。
プロジェクトと構造
| ツール | 機能 | アクセス | Basic |
|---|---|---|---|
p6_list_projects | データ日付、開始日、終了日、ステータス、ベースライン、EPS を含むプロジェクト。EPS で絞り込み可能 | 読み取り | はい |
p6_list_eps | 深さ、パス、プロジェクト数を含む EPS ツリー | 読み取り | |
p6_project_summary | 1 回の呼び出しで概要を表示:日付、アクティビティ数、クリティカル数、単位・物量・期間ごとの完了率、ベースラインとの差異、SPI | 読み取り | はい |
p6_list_wbs | P6 の順序で表示する WBS ツリー。アクティビティ、日付、フロート、単位の完了率、ベースライン計画完了率を集計 | 読み取り | はい |
p6_list_calendars | 稼働週、1 日あたりの労働時間、休日の例外を含むカレンダー | 読み取り | |
p6_list_udfs | ユーザー定義フィールド(UDF 列)と各フィールドの使用状況 | 読み取り | |
p6_schedule_options | プロジェクトまたは XER ファイルのスケジュールオプション、あるいはその両方を並べて表示 | 読み取り |
アクティビティと関係
| ツール | 機能 | アクセス | Basic |
|---|---|---|---|
p6_query_activities | 名前、アクティビティ ID、WBS、ステータス、総フロート、日付、アクティビティコードまたは UDF でアクティビティを検索し、列を選択して表示 | 読み取り | はい |
p6_get_activity | 1 つのアクティビティに関するすべての情報:日付、期間、フロート、制約、ロジック、リソース、コード、UDF、ノートブック | 読み取り | はい |
p6_get_relationships | アクティビティの先行アクティビティと後続アクティビティ。ラグは時間と日数で表示 | 読み取り | はい |
p6_lookahead | 今後数週間に開始・終了する作業、または進行中の作業。クリティカルな作業にはフラグを表示 | 読み取り | はい |
p6_milestones | ベースラインに対するマイルストーン:稼働日および暦日での差異、フロート、クリティカル判定 | 読み取り |
クリティカルパスとフロート
| ツール | 機能 | アクセス | Basic |
|---|---|---|---|
p6_critical_path | プロジェクトで定義されたクリティカルアクティビティ(総フロートまたは最長パス) | 読み取り | はい |
p6_driving_path | アクティビティの日付を左右する先行アクティビティの連鎖を、その根本原因までたどる | 読み取り | |
p6_float_paths | 直近の P6 スケジュール実行におけるフロートパスを、P6 の順序で表示 | 読み取り | |
p6_float_origin | アクティビティの総フロートの発生元:遅い日付を決定する後続アクティビティの連鎖 | 読み取り | |
p6_float_analysis | 範囲ごとの総フロートとフリーフロートの分布 | 読み取り | はい |
スケジュールの品質
| ツール | 機能 | アクセス | Basic |
|---|---|---|---|
p6_health_check | DCMA 14 項目チェック(設定されている場合はプロジェクト独自の P6 しきい値を使用)、クリティカルパステスト、CPLI、BEI、加重スコア | 読み取り | はい |
p6_health_check_compare | 現在と以前の実行結果を比較するヘルスチェック:改善点と悪化点 | 読み取り | |
p6_dangling | オープンスタートとオープンフィニッシュをそれぞれ表示し、解消するためのリンク候補を提示 | 読み取り | |
p6_redundant_links | 削除候補のリンク(推移的、重複、完了済み作業へのリンク) | 読み取り | |
p6_progress_check | 順序外の進捗とステータスの不整合 | 読み取り |
進捗とレポート
| ツール | 機能 | アクセス | 基本 |
|---|---|---|---|
p6_progress_curve | ベースラインに対する月別または週別のSカーブ(数量またはコスト)、データ日付時点の出来高 | 読み取り | |
p6_group_summary | ステータス、タイプ、WBSレベルまたはアクティビティコード別にグループ化したアクティビティ、数量、日付 | 読み取り | |
p6_resource_summary | リソースごとの数量とコスト、ステータスごとのアクティビティ | 読み取り | |
p6_export_dashboard | Excelプロジェクト管理ダッシュボード:グラフ付きA3ページ1枚と詳細シート | ファイルを書き込み |
比較、What-if、リスク
| ツール | 機能 | アクセス | 基本 |
|---|---|---|---|
p6_compare_projects | 2つの更新またはベースラインを、アクティビティごと、リンクごとに比較し、遅延の原因とフロートの減少を表示します | 読み取り | |
p6_update_integrity | 前回の更新との比較レビュー:レビュー担当者が確認すべき変更を表示します | 読み取り | |
p6_cpm_validate | 組み込みのCPMエンジンを実行し、アクティビティごとにP6の前回のF9と比較します | 読み取り | |
p6_schedule_whatif | メモリ内でWhat-if分析を実行します:リンクの追加または削除、期間や制約の変更を行い、新しい完了日を確認できます | 読み取り | |
p6_schedule_risk | メモリ内でモンテカルロスケジュールリスク分析を実行します:完了日のパーセンタイル、予定どおりに完了する確率、クリティカリティ指数を表示します | 読み取り |
XERファイル
| ツール | 機能 | アクセス | 基本 |
|---|---|---|---|
p6_inspect_xer | XERファイルをインポートせずに読み取り、インポート前のチェックを実行します | 読み取り | |
p6_import_xer | XERを新規プロジェクト、ベースライン、または既存プロジェクトの更新としてインポートします | 書き込み | |
p6_export_xer | スケジュールオプションを含めて、プロジェクトをXERファイルにエクスポートします | ファイルを書き込み |
編集(デフォルトでは無効)
| ツール | 機能 | アクセス | 基本 |
|---|---|---|---|
p6_update_activity | アクティビティを編集します:名前、期間、制約、実績日、物理的な進捗率 | 書き込み | |
p6_update_assignment | 1つのリソース割り当ての予算数量、実績数量、または残数量を設定します | 書き込み | |
p6_update_assignments | 1回の全件成功または全件取り消しの変更で、多数の割り当ての数量を設定します | 書き込み | |
p6_update_udf | 1つのアクティビティUDF値を設定またはクリアします | 書き込み | |
p6_update_udfs | 1回の変更で、多数のアクティビティUDF値を設定またはクリアします | 書き込み | |
p6_add_relationship | リレーションシップを追加します(FS、SS、FF、SF、ラグ付き) | 書き込み | |
p6_add_relationships | 1回の全件成功または全件取り消しの変更で、多数のリレーションシップを追加します | 書き込み | |
p6_update_relationship | リレーションシップのタイプまたはラグを変更します | 書き込み | |
p6_update_relationships | 1回の変更で、多数のリレーションシップを変更します | 書き込み | |
p6_delete_relationship | リレーションシップを削除します | 書き込み | |
p6_delete_relationships | 多数のリレーションシップを削除します | 書き込み | |
p6_set_schedule_options | プロジェクトのスケジュールオプションを書き込むか、XERファイルからコピーします | 書き込み | |
p6_create_eps | EPSノードを作成します | 書き込み | |
p6_delete_activity | P6と同じ方法で、アクティビティとそれに付随するすべてのものを削除します | 削除または置換 | |
p6_delete_project | P6と同じ方法で、1つ以上のプロジェクトを削除します | 削除または置換 |
バックアップ、ログ、診断
| ツール | 機能 | アクセス | 基本 |
|---|---|---|---|
p6_backup_database | P6データベースのバックアップを今すぐ作成します | 書き込み | |
p6_list_backups | 自動(書き込み前)および手動のバックアップを一覧表示します | 読み取り | |
p6_restore_backup | 現在のデータベースの安全用バックアップを作成してから、バックアップを復元します | 削除または置換 | |
p6_edit_log | 確定したすべての書き込みと、そのパラメーター、変更前後の値を表示します | 読み取り | |
p6_diagnose | 設定、データベース、P6のバージョン、P6の実行状態をひと目で確認できます | 読み取り | はい |
p6_sql_select | 最終手段として、P6データベースに対して読み取り専用のSQLを実行します | 読み取り |
スキルショップ
| ツール | 機能 | アクセス | 基本 |
|---|---|---|---|
p6_shop_search | スキルショップ(GitHub で共有されている既製の P6 ワークフロー)を検索します | 読み取り | |
p6_shop_get | ショップのスキルを 1 つ、全体を表示します | 読み取り | |
p6_shop_install | 確認後、ショップからスキルをインストールまたは更新します | アプリ設定 |
XER 専用 MCP サーバーとの比較
複数の MCP サーバーが Primavera P6 の XER ファイルを読み取り、一部は XER を編集して新しいファイルとしてエクスポートし、P6 に再インポートすることもできます。MCP for Primavera P6 は P6 Professional データベースそのものを操作し、XER ファイルも読み取ります。
| MCP for Primavera P6 | 一般的な XER ファイル用 MCP サーバー | |
|---|---|---|
| XER ファイルの読み取り | はい:検査、インポート、エクスポート、XER 専用モード | はい |
| P6 Professional データベースの直接読み取り(すべてのプロジェクト、ベースライン、EPS、コード、UDF、スケジュールオプション) | はい | いいえ:まず XER をエクスポートする必要があります |
| 変更の P6 への書き戻し | はい、データベースに書き込みます:P6 を開いて F9 を押します | いいえ、または再インポートする XER を編集します |
| 書き込み前のプレビュー、確認トークン、バックアップ、復元、編集ログ | はい | 該当なし、またはサーバーによって異なります |
| P6 の実行中、または未検証の P6 スキーマでは書き込みを拒否 | はい | 該当なし |
P6 独自の F9 の日付との照合済み CPM エンジン(p6_cpm_validate)。what-if 分析とモンテカルロリスク分析に使用 | はい | サーバーによって異なります |
| P6 で設定されたしきい値による DCMA 14 項目チェック | はい、しきい値が設定されていない場合は DCMA の既定値を使用します | サーバーによって異なります |
| Excel ダッシュボード、P6 スキル(既製のワークフロー) | はい | サーバーによって異なります |
| インストール | 設定ウィンドウを備えた Windows インストーラー。MCP クライアントを登録します | 通常は Python パッケージ(pip、uvx) |
| macOS または Linux での実行 | いいえ:P6 Professional と同様に Windows 専用です | 通常は可能です |
| P6 EPPM、または SQL Server/Oracle 上の P6 | いいえ | いいえ(XER のみ) |
「サーバーによって異なります」とは、一部の XER サーバーでは対応しているものの、対応していないものもあるという意味です。利用を検討しているサーバーをご確認ください。
安全性

- ツールプロファイル:Basic(読み取り専用ツール 11 個。小規模なローカルモデル向け)または Full(58 個すべて)。
- 書き込みは既定でオフです。 Full プロファイルで「Allow write operations」を有効にすると、各書き込みで 2 回の呼び出しが行われます: 実行計画を表示して使い捨ての確認トークンを返すドライランの後、明示的な承認を受けてから、同じ呼び出しをそのトークンとともに実行します。プロジェクトまたはアクティビティの削除、バックアップの復元にも確認テキストが必要です。その間にデータベースが変更されていた場合、書き込みは拒否されます。
- 各書き込みの前にバックアップが作成され(保持期間は選択できます)、P6 の実行中は書き込みが拒否されます。また、各書き込みはパラメーターとともに編集ログに記録されます。
- サーバーがテストしていない P6 スキーマバージョンでは、明示的に信頼しない限り、書き込みは拒否されます。
- これらのルールは設定ウィンドウだけでなく、各呼び出しでサーバー自体によって適用されます。
書き込みはデータベースに直接行われ、P6 独自のアプリケーションロジックを経由しません。サーバーは P6 と同様に監査フィールド(update_date、update_user、create_*)を更新し、計画日、早期日、後期日、フロートには決して書き込みません。書き込みの前に P6 を終了し、その後 P6 を開いて F9 を押してください。書き込みツールで変更できる内容の一覧は SECURITY.md をご覧ください。
プライバシー
サーバーはお使いの PC 上でのみ実行され、クラウドコンポーネントやテレメトリーはありません。ネットワークリクエストの送信先は GitHub のみです。リクエストには、Logs and updates で無効にできる更新(このリポジトリのリリース)と、Tools and safety で無効にできるスキルショップ(Skill shop ページを開いたとき、または表示を要求したとき、設定アプリの初回起動時にコアセットを取得するとき、コアスキルを復元するとき、および自動更新がオンの場合に新しいスキルバージョンを取得するときの、公開カタログの読み取り)が含まれます。無効にすると、コアセットはアプリに同梱されたコピーから取得されます。
ツールが返すデータは、MCP クライアントが使用する AI モデルに送信されます。そのモデルはクラウドサービスである可能性があります。機密性の高いスケジュールには、ローカルモデル(たとえば LM Studio)を使用してください。
P6 スキル
P6 スキルは、ツールをつないで1つの固定レポートを作成する、すぐに使えるワークフローです。週次更新レビュー、スケジュール品質監査、安全な更新インポート、更新整合性監査、スケジュールリスク、遅延の仮定分析、ベースライン差異、Excel ダッシュボードなどがあります。これらはすべてスキルショップから提供されます。初回起動時に、Settings アプリがショップからコアセットをインストールします(GitHub にアクセスできない場合は、アプリに同梱されたコアセットのコピーをインストールし、後でショップから更新します)。コアスキルを復元(Skills または Skill shop ページ)すると、コアセットが再度インストールされます。欠けているスキルは復元され、編集したスキルはショップのバージョンに置き換えられます。自動更新が有効(ログと更新)の場合、トレイアプリは、ここで編集したものを除き、ショップのスキルの新しいバージョンもインストールします。編集したスキルには Skill shop ページに更新可能と表示され、Update を選択すると、変更を置き換える前に確認が求められます。
ほとんどのスキルには Full ツールプロファイルが必要です(インポートにも書き込み権限が必要です)。MCP クライアント > スキルをインストールを選択すると、各スキルが Agent Skills フォルダー p6-<name>(SKILL.md と参照ファイル)として書き込まれます。クライアントの AI は、リクエストがスキルの説明に一致するとそのスキルを使用します。また、Claude Code では /p6-<name> として実行することもできます。
| クライアント | スキルフォルダー |
|---|---|
| Claude Code、Cursor、VS Code / VS Code Insiders | %USERPROFILE%\.claude\skills(3つのクライアントすべてが読み取るフォルダー) |
| Cline | %USERPROFILE%\.cline\skills |
スキルを更新すると、更新後またはツール設定の変更後にスキルが更新されます。スキルを削除(またはアンインストール)すると、アプリが書き込んだファイルのみが削除されます。コマンドラインから実行する場合:
& "$env:LOCALAPPDATA\Programs\P6 MCP\p6mcp-server.exe" clients skills install --detected
サーバーは、MCP プロンプトとしてもスキルを提供します。Claude Desktop では**+**メニューに、VS Code では /mcp.p6mcp.<name> に、Claude Code では /mcp__p6mcp__<name> に表示されます。Claude Desktop にはスキルフォルダーがありません。スキルを ZIP ファイルとしてエクスポートし(Skills > Export)、Claude Desktop の設定でアップロードすると、スキルとして追加できます。
Settings アプリのSkillsページには、現在のツール設定で利用できるかどうかと、スキルの提供元(Shop、ここで編集した Shop、あなたのスキル)が表示されます。スキルをオフにする、編集する、または独自のスキルを追加する(New、またはショップのスキルを元に作成するにはCopy to my skills)ことができます。設定できる項目は、名前、タイトル、スキルの内容と使用するタイミングを説明する説明文(クライアントはこれを使ってスキルを選びます)、指示内で {input} と記述する入力、使用する P6 ツール、最大5つのテキスト参照ファイル(チェックリスト、しきい値、例など。スクリプトは使用できません)です。P6 のルールは指示に追加されます。Instructionsページには、各クライアントが接続時に受け取る指示が表示されます。組み込みの行をオフにする(2段階の書き込みルールは常にオンです)か、「アクティビティを表示するときは、Activity ID - Activity name の形式で記述する」のように独自の指示を追加できます。Save をクリックし、MCP clients ページでスキルを更新してから、プロンプトを反映するために MCP クライアントを再起動してください。
スキルショップ
スキルショップページには、公開カタログ
nizarhamza/p6-mcp-shopのP6スキルが一覧表示されます。アプリとともに管理されるコアセットと、ほかのユーザーが共有したスキルが含まれます。閲覧にアカウントは必要ありません。アプリがカタログを読み込むのは、ページを開いたとき、またはAIクライアントから要求されたときだけです(ツールp6_shop_search、p6_shop_get、p6_shop_install、Fullプロファイル。インストール時にはスキル全体が表示され、確認が必要です)。インストールする前にスキルを読んでください。スキルはAIへの指示であり、書き込みツールを使うスキルは、変更を確認するとスケジュールを変更する可能性があります。Tools and safetyでショップをオフにできます。
スキルを共有するには、Skillsページでスキルを選択し、Share on GitHubをクリックします。アプリがスキルをクリップボードにコピーし、ブラウザーでGitHubの共有フォームを開きます。求められた場合はサインインし(無料のGitHubアカウントが必要です)、Skillフィールドにスキルを貼り付けてCreateをクリックします(アプリ自体から送信されることはありません)。メンテナーがレビューし、承認されると、GitHub Actionがスキルをチェックし、Apache-2.0ライセンスでカタログに公開します。GitHubアカウントがない場合は、スキルをzipファイルにExportして送信してください。zipファイル(またはSKILL.mdとテキストファイルを含む任意のスキルフォルダー)をImportすると、レビュー後に追加できます。
ローカル HTTP トランスポート
デフォルトでは、各クライアントが独自のサーバー(stdio)を起動します。Serverで、HTTPが必要なクライアント向け、または1つのサーバーを共有するために、通知領域アプリがホストするローカル HTTP サーバーに切り替えられます。
127.0.0.1のみでリッスンします(http://127.0.0.1:<port>/mcp)。ポートチェックも行います。- すべてのリクエストに
Authorization: Bearer <token>が必要です。トークンはWindows Credential Managerに保存されます(マスク表示、コピー、再生成が可能です)。 - DNSリバインディングを防ぐため、HostヘッダーとOriginヘッダーをチェックします。
Excel ダッシュボード
たとえば、「DEMO-AのダッシュボードをD:\Reports\DEMO-A.xlsxにエクスポートして」と依頼します(Fullプロファイル)。テンプレートはサーバーに組み込まれています。p6_export_dashboardは最後のF9を読み込み、完成したブックを書き出します(値とネイティブのExcelグラフを含み、数式は含みません)。そのため、事前にP6でF9を押してください。既存のファイルは、指示した場合にのみ置き換えられます(overwrite)。
| シート | 内容 |
|---|---|
| Dashboard | A3横向き1ページ。保護済み(パスワードなし)で、グラフの配置は固定されています。7つのカード(全体進捗、クリティカルアクティビティと遅延アクティビティ、スケジュール差異、予測完了日、残存期間、遅延マイルストーン)、Sカーブ、レベル1 WBSごとの完了差異(稼働日)、WBS進捗(レベル1)とレベル2進捗(実績とベースライン計画の比較)、マイルストーン、クリティカルアクティビティと遅延アクティビティ |
| Schedule Overview | WBSごとのバンド内に全アクティビティを表示(レベル2まで折りたたんだ状態で開きます):ベースライン、現在および実績の日付、進捗率、労働単位、当初・残存・実績期間 |
| Critical Path | 最後のF9におけるP6のフロートパス。パス間には太字の線を表示します(保存済みパスがない場合は、トータルフロートがnear_critical_days以下のアクティビティ) |
| Reports | DCMA 14項目チェック、参照元、設定、定義 |
オプション:baseline(デフォルトはプロジェクトのベースライン)、baseline_dates(plannedまたはcurrent)、milestones(アクティビティID)、near_critical_days(10:これを超えると遅延、これ以下はリスクあり)、period(monthまたはweek)、prepared_by、revision、およびこのエクスポートでのみ使うcompany(サイドバーに表示)とcolors(16進数の"primary,accent")。遅延日数と差異は、P6の差異列と同様に稼働日で示されます。
XERのみのモード
Database > Data sourceでXER files onlyを選択し、1つ以上のXERファイルを追加して、Load and checkをクリックします。ファイルはプライベートな読み取り専用コピーに読み込まれ、すべての読み取りツールがそのコピー上で動作します。同じスケジュールの更新データを2つ読み込んで比較できます。最初のファイルで使用済みのProject IDには、接尾辞~2が付きます。
FAQ
Primavera P6 向け MCP サーバーとは何ですか? MCP(Model Context Protocol)は、AI アシスタントがツールを呼び出すために使用するオープン標準です。このサーバーは、Primavera P6 のスケジュールを読み取り、分析する 58 個のツールをアシスタントに提供します。そのため、自然な言葉で質問し、モデルの推測ではなく、スケジュールから算出された回答を得られます。
AI にスケジュールを変更させることはできますか? 許可した場合に限り可能です。書き込みはデフォルトで無効です。有効にした場合も、変更はそれぞれドライランでプレビューされ、明示的な承認の後に限り、1 回限りのトークンを使って適用されます。まずバックアップが作成され、P6 を終了しておく必要があります。計画日とフロートは書き込まれません。F9 キーを押したときに、P6 がそれらを計算します。
スケジュールが PC の外に送信されることはありますか? サーバーはローカルで動作し、情報を外部に送信することはありません。ツールが返す内容は、MCP クライアントの AI モデルに渡されます。クラウドモデルの場合は、そのプロバイダーに渡されることを意味します。機密性の高いプロジェクトでは、たとえば LM Studio でローカルモデルを使用してください。
対応している P6 のバージョンとデータベースを教えてください。 P6 Professional スタンドアロン(SQLite)に対応しており、25.12 でテスト済みです。その他のバージョンは、テストまたは信頼性の確認が完了するまでは読み取り専用です。P6 Professional 24.12 で作成された XER ファイルと、サーバー独自のエクスポートに対応しています。P6 EPPM、および SQL Server または Oracle 上の P6 Professional には対応していません。
P6 をインストールする必要はありますか? XER ファイルの場合は必要ありません。XER 専用モードでは、P6 や P6 データベースがなくてもファイルを分析できます。
DCMA 14 項目チェックはどのように機能しますか?
p6_health_check は、最後の F9 の結果を対象に DCMA の 14 項目のチェックを実行します。プロジェクトに P6 のスケジュールチェック設定でしきい値が定められている場合はその値を使用し、定められていない場合は DCMA のデフォルト値を使用します。クリティカルパステストでは、サーバーの CPM エンジンでアクティビティを遅らせて検証します。このテストは、エンジンの結果が P6 の日付と一致する場合にのみ実行されます。DCMA 14 項目チェックガイドをご覧ください。
日付は AI が計算しますか?
いいえ。日付とフロートは、P6 で最後にスケジュールを計算したときの結果です。What-if 分析とリスク分析にはサーバーの CPM エンジンを使用します。p6_cpm_validate を使うと、エンジンの結果がプロジェクトの P6 独自の日付とどの程度一致するかを確認してから、利用するかどうかを判断できます。
どの AI クライアントが使えますか? Claude Desktop、Claude Code、Cursor、VS Code、LM Studio、Cline は自動的に登録されます。stdio サーバーを起動するか、Streamable HTTP に対応する MCP クライアントも使用できます。ChatGPT は Codex または OpenAI の Secure MCP Tunnel を通じて使用できます(ChatGPTをご覧ください)。
macOS や Linux で動作しますか? いいえ。P6 Professional は Windows プログラムであり、サーバーは Windows 10 および 11 向けにビルドされています。
無料ですか? はい。Apache License 2.0 の下で提供されています。
テスト済みバージョン
| コンポーネント | テスト済み |
|---|---|
| Windows | Windows 11 |
| P6 Professional スタンドアロン(SQLite) | 25.12(スキーマのフィンガープリントは p6mcp/schema.py にあります)。その他のバージョンは、テストまたは信頼性の確認が完了するまでは読み取り専用です |
| XER ファイル | P6 Professional 24.12 で作成されたもの、およびサーバー独自のエクスポート |
| MCP クライアント | 上記の各クライアントのサンプル設定ファイルで登録をテスト済みです。stdio と HTTP は MCP Python SDK クライアントでテスト済みです。各クライアントでのエンドツーエンドの使用は、リリースチェックリストに含まれています。Codex と ChatGPT Tunnel はまだテストされていません |
| MCP SDK | mcp 2.3(1.8 以降に対応) |
トラブルシューティング
- 「データベースが設定されていません」:MCP for Primavera P6 Settings を開き、データベースを選択して、Test connection、Use this database、Save の順に操作します。
- ツールが「Basic profile では使用できません」:Tools and safety で Full に切り替えて Save を選択し、クライアントを再起動します。
- クライアントにツールが表示されない:クライアントを完全に再起動し(通知領域からも終了して起動します)、MCP clients を確認します。エントリの修復が必要な場合があります。アシスタントに
p6_diagnoseを実行するよう依頼してください。 - 「P6 (PM.exe) が実行中です」:書き込みを行う前に P6 を閉じてください。
- 「P6 スキーマが不明です」:お使いの P6 バージョンはテストされていませんが、読み取りは可能です。Database にあるスキーマを信頼できます(バックアップ後に行ってください)。
- HTTP サーバーエラー:Server に最後のエラーが表示されます(ポートが使用中の場合がよくあります。その場合は別のポートを選択してください)。
- ログ:Logs and updates > Open log folder(
%LOCALAPPDATA%\P6MCP\logs)。設定は%APPDATA%\P6MCP\config.jsonにあります。バックアップ、編集ログ、XER のコピーは%LOCALAPPDATA%\P6MCPにあります。
バージョン 1.x は P6 MCP という名前でした。インストールフォルダー、プログラム名、設定フォルダーには引き続きその名前が使われているため、更新やクライアント登録は引き継がれます。
アンインストール
Windows Settings > Apps > MCP for Primavera P6。アンインストーラーは、プログラム、MCP クライアントから p6mcp のエントリ、およびスタートアップエントリを削除します。設定、バックアップ、ログは保持されます。
開発
python -m venv .venv
.venv\Scripts\pip install -e .[dev]
.venv\Scripts\python -m pytest -q
.venv\Scripts\python -m p6mcp.settings_app # Settings window
.venv\Scripts\python tools\gen_docs.py # tool tables of README.md and site/llms.txt
テストでは、テストによって作成される合成 P6 データベースと合成 XER ファイル(tests/fixtures/make_db.py)を使用します。実際のスケジュール、データベース、XER ファイル、ログは絶対にコミットしないでください。インストーラーのビルドとリリースについては、
docs/RELEASING.md を参照してください。ランディングサイトは site/ にあります。
コントリビュートするには、まず Issue を作成してください。CONTRIBUTING.md と 行動規範を参照してください。アクセシビリティについては、ACCESSIBILITY.md を参照してください。
ライセンス
Apache License 2.0。Copyright 2026 Nizar Hamza。NOTICE を参照してください。
Primavera および P6 は Oracle の商標です。このプロジェクトは Oracle と提携しておらず、Oracle の推奨を受けているものでもありません。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。