Skip to content

This is the Model Context Protocol (MCP) Server for P6 XER files, exposes machine-readable MCP manifests for PyP6XER's modules for use by AI models.

License

Notifications You must be signed in to change notification settings

puremcc/p6-mcp

 
 

Repository files navigation

P6 MCP Server

This is the Model Context Protocol (MCP) Server for P6 XER files, built on top of PyP6XER.

It exposes machine-readable MCP manifests for PyP6XER's modules for use by AI models such as:

  • XER Parser
  • XER Analyzer
  • XER Converter

🚀 Features

🔧 Tools

  • parse_xer_file(file_path) - Parse Primavera P6 XER files and extract basic project information
  • get_project_activities(file_path, project_id?) - Get activities from XER files, optionally filtered by project. Supports pagination (offset, limit), filtering (status_filter, critical_only), and response_format options
  • get_critical_path(file_path, project_id?) - Find critical path activities (zero or negative total float). Supports pagination and response_format options
  • get_activity_resources(file_path, activity_ids?) - Get resource assignments for activities, showing which resources are assigned to which tasks
  • analyze_resource_utilization(file_path) - Analyze resource allocation, hours, and costs
  • check_schedule_quality(file_path, project_id?) - Perform schedule quality checks and identify issues

📋 Resources

  • xer-project://{file_path}/{project_id} - Get detailed information about a specific project
  • xer-activities://{file_path} - Get comprehensive activities summary with status breakdown
  • xer-resources://{file_path} - Get resources summary with type breakdown and assignment statistics

💬 Prompts

  • analyze_xer_project(file_path, analysis_type) - Generate analysis prompts for different types of project analysis
    • Analysis types: general, schedule, resources, progress, quality
  • xer_reporting_prompt(file_path, report_type) - Generate prompts for creating professional project reports
    • Report types: executive, detailed, critical_path, resource, milestone

📦 Installation

Quick Install (Recommended)

Use uvx to run without cloning or installing:

uvx --from git+https://github.com/osama-ata/p6xer-mcp-server p6xer-server

Claude Desktop Configuration

Add to your Claude Desktop MCP settings (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

{
  "mcpServers": {
    "p6xer": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/osama-ata/p6xer-mcp-server",
        "p6xer-server"
      ]
    }
  }
}

Development Installation

For local development and customization:

# Clone the repository
git clone https://github.com/osama-ata/p6xer-mcp-server.git
cd p6xer-mcp-server

# Install dependencies using uv (recommended)
uv sync

# Run the server
uv run p6xer-server

🚀 Running the MCP development tools

For development and testing:

# Run in development mode
uv run p6xer-server

# Or use MCP Inspector for interactive testing
npx @modelcontextprotocol/inspector uv run p6xer-server

Open in your browser:

🏃‍♂️ Quick Start

  1. Start the MCP server:

    uv run --with mcp mcp run server.py
  2. Connect from your AI assistant or MCP client

  3. Use the tools: Parse XER files, analyze critical paths, check resource utilization, and generate comprehensive reports

📊 What You Can Analyze

  • Project Overview: Basic project information, activities count, resources, calendars
  • Critical Path Analysis: Activities with zero or negative float, schedule risks
  • Resource Utilization: Resource allocation, hours, costs, over-allocation detection
  • Schedule Quality: Missing predecessors/successors, long duration activities, logic issues
  • Progress Tracking: Activity status, completion percentages, schedule performance

🎯 Use Cases

  • Project Management: Schedule analysis, resource optimization, progress tracking
  • Quality Assurance: Schedule quality checks, best practices validation
  • Reporting: Executive summaries, detailed analysis reports, milestone tracking
  • Data Integration: Extract P6 data for external systems and dashboards

📋 Example Workflow

  1. Parse XER File: parse_xer_file("project.xer") → Get basic project info
  2. Analyze Critical Path: get_critical_path("project.xer", "PROJECT_ID") → Find critical activities
  3. Check Resources: analyze_resource_utilization("project.xer") → Review resource allocation
  4. Quality Check: check_schedule_quality("project.xer") → Identify schedule issues
  5. Generate Report: Use prompts to create comprehensive analysis reports

About

This is the Model Context Protocol (MCP) Server for P6 XER files, exposes machine-readable MCP manifests for PyP6XER's modules for use by AI models.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%