P6XER MCP Server について
P6XER MCP Serverは、MCP対応AIクライアントでPrimavera P6のXERスケジュールファイルを解析・分析するサーバーです。PyP6XERを基盤とし、アクティビティ、リソース、スケジュール品質、アーンドバリューを扱うツール、リソース、プロンプトを提供します。
主な機能
- 01XERプロジェクトファイルの解析
- 02アクティビティとクリティカルパスの検索
- 03リソース利用と割り当ての分析
- 04スケジュール品質のチェック
- 05アーンドバリュー指標の計算
- 06プロジェクト用リソースとプロンプト
活用シーン
- 01XERファイル内のプロジェクトを要約
- 02クリティカルパスのアクティビティを確認
- 03スケジュール品質とリソース配分を確認
- 04プロジェクトのアーンドバリュー指標を計算
MCP 対応
13個のツール、3つのリソース、2つのプロンプトをMCPクライアントに公開し、.xerスケジュールファイルの解析、検索、分析を可能にします。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
uvx p6xer-mcp-serverP6XER_API_KEYシークレットAPI key used to authenticate with p6xer service.P6XER_ENDPOINTOptional p6xer endpoint URL (default uses local p6xer daemon).P6XER_LOG_LEVELOptional log verbosity level (e.g., DEBUG, INFO, WARN, ERROR).ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
13掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| file_path | string | はい |
詳細
P6XER MCP サーバー
mcp-name: io.github.osama-ata/p6xer-mcp-server
PyP6XER を基盤に構築された、Primavera P6 XER ファイル向けのフル機能 Model Context Protocol(MCP) サーバーです。
13 個のツール、3 個のリソース、2 個のプロンプトを提供するため、MCP 対応の AI クライアント(Claude Desktop、Claude Code、Cursor など)で .xer スケジュールファイルを対話的に解析、照会、分析できます。
🚀 機能
🔧 ツール(13 個)
| ツール | 説明 |
|---|---|
parse_xer_file | XER ファイルを解析します — プロジェクト一覧、合計、ステータスの内訳 |
get_project_activities | フィルターを指定してアクティビティを取得します:project_id、project_short_name、status、task_type |
get_critical_path | クリティカルパスのアクティビティ(フロート ≤ 0)。早期開始順に並べ替えます |
analyze_resource_utilization | リソースごとの計画/実績時間とコスト。過剰割り当てのフラグ |
check_schedule_quality | DCMA 方式のチェック:ロジックの欠落、長い期間、大きなフロート、リソース未割り当てのタスク |
get_resources | リソース一覧を取得します。必要に応じてタイプで絞り込めます |
get_resource_assignments | 名前とコストを追加した、リソースとアクティビティの割り当て情報 |
get_wbs | 作業分解構成(WBS)の階層 |
get_relationships | タスクコードを追加した、先行/後続関係 |
get_calendars | 期間あたりの時間データを含むカレンダー定義 |
get_schedule_summary | 概要統計:件数、日付範囲、クリティカル件数 |
get_earned_value | EVM:プロジェクトごとの PV、EV、AC、CV、SV、CPI、SPI、EAC |
get_activity_detail | 1 つのアクティビティの詳細情報(先行+後続+リソース) |
📋 リソース(3 個)
| URI | 説明 |
|---|---|
xer-project://{file_path}/{project_id} | 特定プロジェクトの詳細なテキスト概要 |
xer-activities://{file_path} | ステータスの内訳と期間の統計を含むアクティビティ概要 |
xer-resources://{file_path} | タイプの内訳と割り当て統計を含むリソース概要 |
💬 プロンプト(2 個)
| プロンプト | タイプ |
|---|---|
analyze_xer_project | general · schedule · resources · progress · quality |
xer_reporting_prompt | executive · detailed · critical_path · resource · milestone |
� ストアからインストール
PyPI 経由(uvx — インストール不要)
uvx p6xer-mcp-server
PyPI 経由(pip)
pip install p6xer-mcp-server
p6xer-mcp-server
Smithery 経由
smithery.ai で p6xer-mcp-server を検索し、「Install」をクリックします。
Claude Desktop の正しい設定が自動的に生成されます。
GitHub MCP Registry 経由
このサーバーは GitHub MCP Registry に登録されています。Claude Code では:
claude mcp add p6xer -- uvx p6xer-mcp-server
Claude Desktop の設定(PyPI からインストールした後)
{
"mcpServers": {
"p6xer": {
"command": "uvx",
"args": ["p6xer-mcp-server"]
}
}
}
�📦 インストール
# Clone the repo
git clone https://github.com/osama-ata/p6xer-mcp-server.git
cd p6xer-mcp-server
# Install with uv (recommended)
uv sync
# Or with pip
pip install "mcp[cli]>=1.6.0,<2.0.0" pyp6xer
🏃 実行
開発/MCP Inspector:
uv run mcp dev src/p6xer_mcp_server/server.py
Stdio(Claude Desktop/Claude Code):
uv run p6xer-mcp-server
🔌 Claude Desktop
claude_desktop_config.json に追加します:
{
"mcpServers": {
"p6xer": {
"command": "uvx",
"args": ["p6xer-mcp-server"]
}
}
}
設定ファイルの場所:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
🔌 Claude Code(CLI)
claude mcp add p6xer -- uvx p6xer-mcp-server
💬 プロンプトの例
接続したら:
Parse project.xer and give me an overview of all projects
What are all the critical path activities, sorted by start date?
Run a DCMA schedule quality check on project.xer
Calculate earned value metrics — what are the CPI and SPI?
Show all resource assignments for "John Smith"
What are the predecessors and successors of activity A1000?
List all over-allocated labor resources
Generate an executive summary report for project.xer
📊 ツールリファレンス
フィルターパラメーター(多くのツールで使用可能)
project_id– 数値形式の P6 プロジェクト ID(例:"1234")project_short_name– プロジェクトの短縮名を表す文字列(例:"PROJ1")
ステータスコード
TK_NotStart · TK_Active · TK_Complete
タスクタイプ
TT_Task · TT_Mile · TT_FinMile · TT_WBS
リソースタイプ
RT_Labor · RT_Mat · RT_Equip
🗂️ プロジェクト構成
p6xer-mcp-server/
├── src/
│ └── p6xer_mcp_server/
│ ├── __init__.py
│ └── server.py # All tools, resources, and prompts
├── manifest.json # MCPB bundle manifest
├── mcp.json # MCP registry metadata
├── smithery.yaml # Smithery registry configuration
├── pyproject.toml
└── README.md
📋 要件
- Python ≥ 3.10
mcp[cli] >= 1.6.0, < 2.0.0pyp6xer >= 1.16.0
📄 ライセンス
MIT
🚢 PyPI への公開(GitHub Actions + Trusted Publishing)
このリポジトリには、PyPA ガイドと pypa/gh-action-pypi-publish に基づくリリースワークフロー .github/workflows/publish-to-pypi.yml が含まれています。
1) Trusted Publishers を設定する
このワークフローファイル専用の Trusted Publishers を作成します。
- PyPI:https://pypi.org/manage/account/publishing/
- TestPyPI:https://test.pypi.org/manage/account/publishing/
次の値を使用します。
- Owner:
osama-ata - Repository:
p6xer-mcp-server - Workflow file:
publish-to-pypi.yml - Environment:
pypi(PyPI 用)、testpypi(TestPyPI 用) - Project name:
p6xer-mcp-server
2) GitHub Environments を作成する
リポジトリの設定で、次の 2 つの環境を作成します。
pypitestpypi
推奨されるセキュリティ設定:
pypiには手動承認を必須にするtestpypiには承認を不要にする
3) ローカルでビルドする(任意の動作確認)
python -m pip install --upgrade build twine
python -m build
python -m twine check dist/*
4) リリースの流れ
mainにプッシュ:TestPyPI に公開されますv*タグ(例:v0.1.1)をプッシュ:PyPI に公開されます
git tag v0.1.1
git push origin v0.1.1
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。