Sponsored by Deepsite.site

P6XER MCP Server

Created By
osama-ataa year ago
This is the Model Context Protocol (MCP) Server for P6 XER files.
Content

P6XER MCP Server

PyPI version Python 3.12+ License: MIT MCP

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.


🚀 Features

🔧 Tools (13)

ToolDescription
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
get_activity_detailFull detail for one activity (preds + succs + resources)

📋 Resources (3)

URIDescription
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

💬 Prompts (2)

PromptTypes
analyze_xer_projectgeneral · schedule · resources · progress · quality
xer_reporting_promptexecutive · detailed · critical_path · resource · milestone

� Install from Store

Via PyPI (uvx — no install needed)

uvx p6xer-mcp-server

Via PyPI (pip)

pip install p6xer-mcp-server
p6xer-mcp-server

Via Smithery

Search for p6xer-mcp-server on smithery.ai and click Install. It will generate the correct Claude Desktop config automatically.

Via GitHub MCP Registry

The server is listed in the GitHub MCP Registry. In Claude Code:

claude mcp add p6xer -- uvx p6xer-mcp-server

Claude Desktop config (after PyPI install)

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

�📦 Installation

# 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

🏃 Running

Development / MCP Inspector:

uv run mcp dev src/p6xer_mcp_server/server.py

Stdio (Claude Desktop / Claude Code):

uv run p6xer-mcp-server

🔌 Claude Desktop

Add to claude_desktop_config.json:

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

Config file locations:

  • 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

💬 Example Prompts

Once connected:

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

📊 Tool Reference

Filter parameters (most tools accept)

  • project_id – numeric P6 project ID (e.g. "1234")
  • project_short_name – project short name string (e.g. "PROJ1")

Status codes

TK_NotStart · TK_Active · TK_Complete

Task types

TT_Task · TT_Mile · TT_FinMile · TT_WBS

Resource types

RT_Labor · RT_Mat · RT_Equip


🗂️ Project Structure

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

📋 Requirements

  • Python ≥ 3.10
  • mcp[cli] >= 1.6.0, < 2.0.0
  • pyp6xer >= 1.16.0

📄 License

MIT


🚢 Publishing to PyPI (GitHub Actions + Trusted Publishing)

This repository includes a release workflow at .github/workflows/publish-to-pypi.yml based on the PyPA guide and pypa/gh-action-pypi-publish.

1) Configure Trusted Publishers

Create trusted publishers for this exact workflow file:

Use these values:

  • Owner: osama-ata
  • Repository: p6xer-mcp-server
  • Workflow file: publish-to-pypi.yml
  • Environment: pypi (for PyPI), testpypi (for TestPyPI)
  • Project name: p6xer-mcp-server

2) Create GitHub Environments

In repository settings, create two environments:

  • pypi
  • testpypi

Recommended security setup:

  • Require manual approval for pypi
  • No approval required for testpypi

3) Build locally (optional sanity check)

python -m pip install --upgrade build twine
python -m build
python -m twine check dist/*

4) Release flow

  • Push to main: publishes to TestPyPI
  • Push tag v* (for example v0.1.1): publishes to PyPI
git tag v0.1.1
git push origin v0.1.1

Server Config

{
  "mcpServers": {
    "p6xer": {
      "command": "uvx",
      "args": [
        "p6xer-mcp-server"
      ]
    }
  }
}
Recommend Servers
TraeBuild with Free GPT-4.1 & Claude 3.7. Fully MCP-Ready.
Zhipu Web SearchZhipu Web Search MCP Server is a search engine specifically designed for large models. It integrates four search engines, allowing users to flexibly compare and switch between them. Building upon the web crawling and ranking capabilities of traditional search engines, it enhances intent recognition capabilities, returning results more suitable for large model processing (such as webpage titles, URLs, summaries, site names, site icons, etc.). This helps AI applications achieve "dynamic knowledge acquisition" and "precise scenario adaptation" capabilities.
Visual Studio Code - Open Source ("Code - OSS")Visual Studio Code
Y GuiA web-based graphical interface for AI chat interactions with support for multiple AI models and MCP (Model Context Protocol) servers.
Amap Maps高德地图官方 MCP Server
Jina AI MCP ToolsA Model Context Protocol (MCP) server that integrates with Jina AI Search Foundation APIs.
DeepChatYour AI Partner on Desktop
Serper MCP ServerA Serper MCP Server
MCP AdvisorMCP Advisor & Installation - Use the right MCP server for your needs
WindsurfThe new purpose-built IDE to harness magic
ChatWiseThe second fastest AI chatbot™
Playwright McpPlaywright MCP server
Howtocook Mcp基于Anduin2017 / HowToCook (程序员在家做饭指南)的mcp server,帮你推荐菜谱、规划膳食,解决“今天吃什么“的世纪难题; Based on Anduin2017/HowToCook (Programmer's Guide to Cooking at Home), MCP Server helps you recommend recipes, plan meals, and solve the century old problem of "what to eat today"
CursorThe AI Code Editor
Baidu Map百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Tavily Mcp
MiniMax MCPOfficial MiniMax Model Context Protocol (MCP) server that enables interaction with powerful Text to Speech, image generation and video generation APIs.
BlenderBlenderMCP connects Blender to Claude AI through the Model Context Protocol (MCP), allowing Claude to directly interact with and control Blender. This integration enables prompt assisted 3D modeling, scene creation, and manipulation.
AiimagemultistyleA Model Context Protocol (MCP) server for image generation and manipulation using fal.ai's Stable Diffusion model.
EdgeOne Pages MCPAn MCP service designed for deploying HTML content to EdgeOne Pages and obtaining an accessible public URL.
RedisA Model Context Protocol server that provides access to Redis databases. This server enables LLMs to interact with Redis key-value stores through a set of standardized tools.