The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the P6xer MCP Server listing page.
mcp-name: io.github.osama-ata/p6xer-mcp-server
A full-featured Model Context Protocol (MCP) server for Primavera P6 XER files, built on PyP6XER.
Exposes 13 Tools, 3 Resources, and 2 Prompts so any MCP-compatible AI client (Claude Desktop, Claude Code, Cursor, etc.) can interactively parse, query, and analyze .xer schedule files.
| Tool | Description |
|---|---|
parse_xer_file | Parse an XER file — project list, totals, status breakdowns |
get_project_activities | Activities with filters: project_id, project_short_name, status, task_type |
get_critical_path | Critical path activities (float ≤ 0), sorted by early start |
analyze_resource_utilization | Planned/actual hours & costs per resource; over-allocation flags |
check_schedule_quality | DCMA-style check: missing logic, long durations, high float, unresourced tasks |
get_resources | List resources, optionally filtered by type |
get_resource_assignments | Resource–activity assignments with enriched names and costs |
get_wbs | Work Breakdown Structure hierarchy |
get_relationships | Predecessor/successor relationships enriched with task codes |
get_calendars | Calendar definitions with hours-per-period data |
get_schedule_summary | At-a-glance stats: counts, date range, critical count |
get_earned_value | EVM: PV, EV, AC, CV, SV, CPI, SPI, EAC per project |
get_activity_detail | Full detail for one activity (preds + succs + resources) |
| URI | Description |
|---|---|
xer-project://{file_path}/{project_id} | Detailed text summary of a specific project |
xer-activities://{file_path} | Activities summary with status breakdown and duration stats |
xer-resources://{file_path} | Resources summary with type breakdown and assignment stats |
| Prompt | Types |
|---|---|
analyze_xer_project | general · schedule · resources · progress · quality |
xer_reporting_prompt | executive · detailed · critical_path · resource · milestone |
Search for p6xer-mcp-server on smithery.ai and click Install.
It will generate the correct Claude Desktop config automatically.
The server is listed in the GitHub MCP Registry. In Claude Code:
Development / MCP Inspector:
Stdio (Claude Desktop / Claude Code):
Add to claude_desktop_config.json:
Config file locations:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json~/.config/Claude/claude_desktop_config.jsonOnce connected:
project_id – numeric P6 project ID (e.g. "1234")project_short_name – project short name string (e.g. "PROJ1")TK_NotStart · TK_Active · TK_Complete
TT_Task · TT_Mile · TT_FinMile · TT_WBS
RT_Labor · RT_Mat · RT_Equip
mcp[cli] >= 1.6.0, < 2.0.0pyp6xer >= 1.16.0MIT
This repository includes a release workflow at .github/workflows/publish-to-pypi.yml based on the PyPA guide and pypa/gh-action-pypi-publish.
Create trusted publishers for this exact workflow file:
Use these values:
osama-atap6xer-mcp-serverpublish-to-pypi.ymlpypi (for PyPI), testpypi (for TestPyPI)p6xer-mcp-serverIn repository settings, create two environments:
pypitestpypiRecommended security setup:
pypitestpypimain: publishes to TestPyPIv* (for example v0.1.1): publishes to PyPI