P6xer MCP Server

MCP server for Primavera P6 XER schedule files — parse, analyze, and quality-check with AI

Local serverstdioPython

What is the P6xer MCP server?

MCP server for Primavera P6 XER schedule files — parse, analyze, and quality-check with AI. The p6xer mcp server wraps that behind the Model Context Protocol, so an assistant can use it through 14 defined tools rather than through you.

What it actually does

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.

Adding it to your client

p6xer-mcp-server on PyPI is all you need. Most clients run it directly, so configuration is a few lines and a restart.

Its toolset

Everything the assistant can do here goes through one of these:

  • project_id — numeric P6 project ID (e.g. "1234")
  • project_short_name — project short name string (e.g. "PROJ1")
  • 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

Caveats

  • It runs with your machine's permissions. That is convenient and also the reason to think about what you point it at before you approve a tool call.
  • With 14 tools registered it takes up a noticeable share of the context window; turn it off in projects that never touch P6xer.
  • MCP clients confirm each tool call by default. Leave that on until you have watched what the p6xer mcp server does with a few real requests.

When to reach for it

This sits in the planning and project tracking group, where several servers overlap in what they claim to do but differ sharply once you actually set them up. P6xer's toolset — project_id, project_short_name, parse_xer_file and 11 more — is a fair guide to whether it matches your workflow. It is maintained by Osama Ata; worth a glance at recent repository activity before you build anything load-bearing on it.

We check each listing at SyncDev against the project's documentation before it goes live — if something here drifts out of date, it is a bug worth reporting.

Available tools

ToolWhat it does
project_idnumeric P6 project ID (e.g. "1234")
project_short_nameproject short name string (e.g. "PROJ1")
parse_xer_fileParse an XER file — project list, totals, status breakdowns
get_project_activitiesActivities with filters: project_id, project_short_name, status, task_type
get_critical_pathCritical path activities (float ≤ 0), sorted by early start
analyze_resource_utilizationPlanned/actual hours & costs per resource; over-allocation flags
check_schedule_qualityDCMA-style check: missing logic, long durations, high float, unresourced tasks
get_resourcesList resources, optionally filtered by type
get_resource_assignmentsResource–activity assignments with enriched names and costs
get_wbsWork Breakdown Structure hierarchy
get_relationshipsPredecessor/successor relationships enriched with task codes
get_calendarsCalendar definitions with hours-per-period data
get_schedule_summaryAt-a-glance stats: counts, date range, critical count
get_earned_valueEVM: PV, EV, AC, CV, SV, CPI, SPI, EAC per project

How to install the P6xer MCP server

{
  "mcpServers": {
    "p6xer": {
      "command": "uvx",
      "args": ["p6xer-mcp-server"]
    }
  }
}

Add to claude_desktop_config.json, then restart Claude Desktop.

Example prompts to try

  • Use P6xer to project id.
  • Use P6xer to project short name.
  • Use P6xer to parse xer file.

Frequently asked questions

It connects P6xer to MCP-compatible AI assistants such as Claude and Cursor, exposing 14 tools (project_id, project_short_name, parse_xer_file, and more) that the assistant can call on your behalf. Instead of copying data back and forth by hand, the assistant works with P6xer directly.