#  P6 Analysis 

Load XER schedule files. Critical path, float analysis, earned value, schedule quality. 29 analysis tools.

## Quick Start

```bash
# Connect this server (installs CLI if needed)
npx -y smithery mcp add bouch/pyp6xer-mcp

# Browse available tools
npx -y smithery tool list bouch/pyp6xer-mcp

# Get full schema for a tool
npx -y smithery tool get bouch/pyp6xer-mcp pyp6xer_get_activity_schema

# Call a tool
npx -y smithery tool call bouch/pyp6xer-mcp pyp6xer_get_activity_schema '{}'
```

## Direct MCP Connection

Endpoint: `https://pyp6xer-mcp--bouch.run.tools`

## Tools (29)

- `pyp6xer_get_activity_schema` — Return the available field names for activity read tools.
- `pyp6xer_load_file` — Load a Primavera P6 XER file into the analysis cache.
- `pyp6xer_clear_cache` — Remove one or all loaded XER files from the cache.
- `pyp6xer_get_upload_url` — Get instructions for uploading an XER file to this server.
- `pyp6xer_list_projects` — List all projects in the loaded XER file with summary statistics.
- `pyp6xer_list_activities` — List activities with optional filtering and pagination.
- `pyp6xer_get_activity` — Get full details for a single activity including dates, float, costs,
- `pyp6xer_search_activities` — Search activities by name or activity ID (case-insensitive substring match).
- `pyp6xer_list_resources` — List all resources with assignment counts and cost/quantity totals.
- `pyp6xer_list_calendars` — List all calendars defined in the XER file.
- `pyp6xer_critical_path` — Return all activities on the critical path (total float ≤ 0 or longest path flag).
- `pyp6xer_float_analysis` — Analyse total float distribution across activities.
- `pyp6xer_schedule_quality` — Run DCMA-style schedule quality checks.
- `pyp6xer_schedule_health_check` — Generate a composite schedule health score with narrative summary.
- `pyp6xer_slipping_activities` — Find activities that are running late (forecast finish > baseline finish).
- `pyp6xer_lookahead` — Return activities active within the next N days from the data date.
- `pyp6xer_relationship_analysis` — Analyse relationship types, lag/lead distribution, and logic density.
- `pyp6xer_resource_utilization` — Summarise resource loading: planned vs actual vs remaining quantities and costs.
- `pyp6xer_wbs_analysis` — Return the WBS hierarchy with task counts and cost rollups per node.
- `pyp6xer_work_package_summary` — Summarise leaf-level WBS nodes (work packages) with schedule and cost data.
- `pyp6xer_progress_summary` — Summarise schedule progress: status breakdown, percent complete, milestones.
- `pyp6xer_earned_value` — Calculate Earned Value Management (EVM) metrics.
- `pyp6xer_generate_report` — Assemble a complete monthly progress report dataset.
- `pyp6xer_export_csv` — Export activities to CSV format (returned as a string).
- `pyp6xer_compare_snapshots` — Compare two loaded XER files (snapshots) to identify schedule changes.
- `pyp6xer_update_activity` — Update fields on a single activity in the in-memory cache.
- `pyp6xer_batch_update` — Update multiple activities in a single call.
- `pyp6xer_write_file` — Write the current (possibly modified) schedule back to a .xer file.
- `pyp6xer_export_xer` — Export the current (possibly modified) schedule as base64-encoded XER bytes.

```bash
# Get full input/output schema for a tool
npx -y smithery tool get bouch/pyp6xer-mcp <tool-name>
```
