mcpField
M
MCP for Primavera P6

MCP for Primavera P6

本地服务
mcp-for-primavera-p6.pages.dev生产力51 天前更新

关于 MCP for Primavera P6

MCP for Primavera P6 是用于分析 Oracle Primavera P6 Professional 进度计划和 XER 文件的本地 MCP 服务。它面向项目控制与进度管理,提供路径、质量、比较、风险和报表计算,并支持受控的数据库编辑。

主要功能

  1. 01分析关键路径、驱动路径、时差和近期计划
  2. 02运行 DCMA 14 项及进度质量检查
  3. 03比较更新和基线,模拟假设情景
  4. 04在内存中运行蒙特卡洛进度风险分析
  5. 05生成 Excel 仪表板并检查 XER 文件
  6. 06预览、确认、备份并记录数据库编辑

适用场景

  1. 01找出影响项目完工日期的活动
  2. 02检查进度质量并比较历次检查结果
  3. 03评估工期或逻辑变更的影响
  4. 04将更新与基线比较并分析进度延误

MCP 相关

向 MCP 客户端提供 Primavera P6 和 XER 进度分析工具。可选写入工具会在试运行和备份后,将经确认的修改写入 P6 数据库。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库
安装包
mcpbp6mcp-2.0.0.mcpb2.0.0

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Primavera P6 的 MCP

最新版本 许可证:Apache 2.0 Windows 10 和 11 M8ven 评分

Primavera P6 的 MCP:Primavera P6 MCP 服务

Primavera P6 的 MCP 是一个本地的 模型上下文协议(MCP) 服务,可将 Claude、ChatGPT、Cursor、VS Code 及任何其他 MCP 客户端连接到 Windows 上的 Oracle Primavera P6 Professional 进度计划。它会直接读取 P6 数据库(P6 Professional 独立版,SQLite),也可读取普通的 XER 文件,并通过实际计算回答进度计划相关问题:关键路径和驱动路径、总时差、DCMA 14 项检查、前瞻分析、基线和更新比较、CPM 假设分析以及 Monte Carlo 进度风险分析。与仅支持 XER 的 MCP 服务不同,它还能将更改写回 P6 数据库:工期、逻辑关系、约束、实际值、单位和 UDF 均可修改;每项修改都会先在试运行中预览,只有经你确认后才会应用,并且会先备份且记录在编辑日志中。

Primavera P6 的 MCP 是一个独立项目,与 Oracle 无关联,也未获其认可或赞助。 Oracle、Primavera 和 P6 是 Oracle 及/或其关联公司的商标。

演示:基于合成演示项目 DEMO-SS225 的真实运行回放:AI 助手追踪 MS-1100 - Project completion 的驱动路径,然后对 PRC-TR-1040 运行假设分析

目录: 功能 · 安装 · 连接 MCP 客户端 · 工具 · 与仅支持 XER 的服务比较 · 安全性 · 隐私 · P6 技能 · 常见问题 · 故障排除

功能

向助手询问“什么因素影响完工日期?”,“对 3 月更新运行 DCMA 健康检查”,“与上次更新相比有哪些变化?”或“如果采购再花四周会怎样?”。服务会根据进度计划计算答案;模型负责解释。日期和时差取自 P6 最近一次进度计算的结果(F9)。

  • 进度计划分析:项目和 EPS、WBS 汇总、按状态、时差、日期、活动代码或 UDF 筛选活动;采用项目时滞日历规则的关系;关键路径(总时差或最长路径)、驱动路径、时差路径、活动时差的来源、时差分布、前瞻时间窗口。
  • 进度计划质量:使用项目自身 P6 阈值进行 DCMA 14 项检查,检查逻辑密度并给出加权评级;与之前的检查结果比较;检查偏离逻辑顺序的进度、悬空端点和冗余链接。
  • 比较、假设分析和风险:逐项活动、逐条链接比较两次更新或基线,并分析延误原因和时差消耗;审查更新与上次更新之间的数据完整性(提供待提出的问题,而非证据);与 P6 的 F9 结果进行校验的 CPM 引擎(p6_cpm_validate 报告匹配情况),用于假设分析和 Monte Carlo 风险分析;所有计算均在内存中运行,绝不写入数据。
  • 进度和报告:基于数据日期生成 S 曲线和挣值;汇总资源与成本;按状态、WBS 或代码分组;生成一页式 Excel 仪表板,含原生图表。
  • XER 文件:在仅支持 XER 的模式下检查、导入(新项目、基线、更新)、导出或分析 XER 文件,无需 P6 数据库或安装 P6。
  • 编辑(默认关闭):工期、约束、实际日期、实际完成百分比、资源分配单位、活动 UDF 值、关系、进度选项、EPS、删除、备份和还原。

安装

适用于 Primavera P6 的 MCP 可在 Windows 10 或 11 上运行,与 P6 Professional 配合使用。无需安装其他内容:已随附 Python。

  1. 从 Releases 下载 P6MCP-Setup-<version>.exe,并使用 SHA256SUMS.txt 校验(certutil -hashfile P6MCP-Setup-2.0.0.exe SHA256)。
  2. 运行安装程序。它仅为你的 Windows 用户安装(无需管理员权限),并在最后一个页面提供选项,可将服务注册到它找到的所有 MCP 客户端(Claude Desktop、Claude Code、Cursor、VS Code、LM Studio、Cline)。取消勾选不需要的客户端。
  3. MCP for Primavera P6 Settings 随即打开。在 Database 下选择你的 P6 数据库(建议选项来自 P6 自带的连接列表),点击 Test connection(只读),然后点击 Use this database,再点击 Save。服务不会自行选择数据库:在你完成此操作之前,每个工具都会回复“No database configured”。
  4. 完全重启 MCP 客户端。

目前发布版本尚未进行代码签名:Windows SmartScreen 首次启动时可能会发出警告(“More info”,然后选择“Run anyway”)。请先检查 SHA-256。发布页面上还有其他安装包:便携版 zip(无需安装)以及 MCP bundle(.mcpb,仅含服务),Claude Desktop 可一键安装;该安装包也列在官方 MCP Registry 中,名称为 io.github.nizarhamza/p6-mcp。

连接 MCP 客户端

安装程序和 Settings > MCP clients 会为你写入客户端配置:它们会在创建带时间戳的备份后,仅添加(或修复、移除)p6mcp 条目,同时保留其他所有条目、注释和文件格式。以下手动步骤仅供参考。在每个代码片段中,将 <you> 替换为你的 Windows 用户名(或从 Settings > MCP clients > Other clients 复制代码片段,其中会填入实际路径)。

Claude Desktop

你可以让安装程序注册,也可以双击 .mcpb bundle(在 Settings > Extensions 中查看;在那里选择数据库),或者编辑 %APPDATA%\Claude\claude_desktop_config.json:

{
  "mcpServers": {
    "p6mcp": {
      "command": "C:\\Users\\<you>\\AppData\\Local\\Programs\\P6 MCP\\p6mcp-server.exe",
      "args": []
    }
  }
}

完全退出 Claude Desktop(包括从通知区域退出),然后重新启动。P6 技能会作为提示词出现在 + 菜单中。

Cursor

安装程序会将其注册到 %USERPROFILE%\.cursor\mcp.json,或者将与上文 Claude Desktop 相同的 mcpServers 条目添加到该文件中。Cursor 会在 Settings > MCP 下列出这些工具。

VS Code(GitHub Copilot Agent 模式)

安装程序会将其注册到 %APPDATA%\Code\User\mcp.json(VS Code Insiders:...\Code - Insiders\User\mcp.json)。 手动配置时,运行 MCP: Open User Configuration 并添加:

{
  "servers": {
    "p6mcp": {
      "type": "stdio",
      "command": "C:\\Users\\<you>\\AppData\\Local\\Programs\\P6 MCP\\p6mcp-server.exe",
      "args": []
    }
  }
}

然后在 Agent 模式下打开 Copilot Chat,并从工具菜单中选择工具。

ChatGPT

ChatGPT 无法在你的电脑上启动程序,因此有两种接入方式。目前维护者尚未测试这两种方式:请在 issue 中反馈使用情况。

  • Codex(在 ChatGPT 桌面应用或 Codex CLI 中)可从 %USERPROFILE%\.codex\config.toml 启动本地 MCP 服务:

    [mcp_servers.p6mcp]
    command = 'C:\Users\<you>\AppData\Local\Programs\P6 MCP\p6mcp-server.exe'
    args = []
    
  • ChatGPT chat 只能通过 HTTPS 访问 MCP 服务。OpenAI 的安全 MCP Tunnel 会在你的电脑上运行一个轻量客户端,用于启动服务(上文的 stdio 命令)并将 ChatGPT 的请求转发给它,无需开放入站端口;随后,你需要在 ChatGPT 中添加一个自定义 MCP 服务,并将连接方式设为 Tunnel。这需要 OpenAI 平台 API 密钥,以及允许使用自定义 MCP 服务的 ChatGPT 套餐或工作区。之后,工具结果会像任何 ChatGPT 对话一样经由 OpenAI 的服务传递。

Claude Code、LM Studio、Cline 和其他客户端

安装程序也会为 Claude Code(%USERPROFILE%\.claude.json)、LM Studio(%USERPROFILE%\.lmstudio\mcp.json) 和 Cline 注册配置。手动配置 Claude Code:

claude mcp add --scope user p6mcp -- "$env:LOCALAPPDATA\Programs\P6 MCP\p6mcp-server.exe"

其他任何启动 stdio 服务的客户端都可以使用上面的 mcpServers 片段。需要 HTTP 的客户端可以使用 本地 HTTP 传输。在命令行中运行(安装程序使用相同的命令):

& "$env:LOCALAPPDATA\Programs\P6 MCP\p6mcp-server.exe" clients list
& "$env:LOCALAPPDATA\Programs\P6 MCP\p6mcp-server.exe" clients register cursor

设置:MCP 客户端

工具

共有 58 个工具:37 个只读工具(其中 11 个包含在 Basic 配置文件中)、2 个文件写入工具、18 个写入工具(默认关闭;先试运行,再由你确认;并会先备份),以及 1 个用于更改应用自身设置的工具。由 tools/gen_docs.py 从代码生成。

项目和结构

工具功能访问权限Basic
p6_list_projects列出项目,包含数据日期、开始日期、完成日期、状态、基准计划和 EPS;可按 EPS 筛选读取是
p6_list_epsEPS 树,包含深度、路径和项目数量读取
p6_project_summary一次调用即可查看概览:日期、活动数量、关键活动数量、按单位、实物量和工期计算的完成百分比、基准计划偏差和 SPI读取是
p6_list_wbs按 P6 顺序列出 WBS 树及汇总数据:活动、日期、时差、单位完成百分比和基准计划计划百分比读取是
p6_list_calendars日历,包含工作周、每日工时和节假日例外读取
p6_list_udfs用户自定义字段(UDF 列)及其使用情况读取
p6_schedule_options并排查看项目、XER 文件或两者的进度计划选项读取

活动和关系

工具功能访问权限Basic
p6_query_activities按名称、活动 ID、WBS、状态、总时差、日期、活动代码或 UDF 搜索活动,并可选择列读取是
p6_get_activity单个活动的所有信息:日期、工期、时差、约束、逻辑、资源、代码、UDF 和笔记本读取是
p6_get_relationships活动的紧前关系和紧后关系,时滞以小时和天为单位读取是
p6_lookahead查看未来几周开始、完成或正在进行的工作,并标记关键工作读取是
p6_milestones对照基准计划查看里程碑:工作日和日历日偏差、时差、关键性读取

关键路径和时差

工具功能访问权限Basic
p6_critical_path按项目定义的关键活动(总时差或最长路径)读取是
p6_driving_path活动日期背后的驱动紧前活动链,可追溯至根本原因读取
p6_float_paths最近一次 P6 进度计划运行的时差路径,按 P6 顺序排列读取
p6_float_origin活动总时差的来源:决定其最晚日期的紧后活动链读取
p6_float_analysis按范围统计总时差和自由时差的分布读取是

进度计划质量

工具功能访问权限Basic
p6_health_checkDCMA 14 项检查(如已设置,则采用项目自身的 P6 阈值)、关键路径测试、CPLI、BEI 和加权评分读取是
p6_health_check_compare将当前健康检查与早前的运行结果对比:查看哪些方面有所改善或恶化读取
p6_dangling未开放的开始和未开放的完成,以及每项建议添加的闭合关系读取
p6_redundant_links候选移除关系(传递关系、重复关系、指向已完成工作的关系)读取
p6_progress_check非顺序进度和状态不一致读取

进度和报告

工具功能访问权限基础
p6_progress_curve按月或按周绘制与基准计划对比的 S 曲线(单位或成本),并显示数据日期的挣值读取
p6_group_summary按状态、类型、WBS 层级或活动代码分组显示活动、单位和日期读取
p6_resource_summary按资源显示单位和成本,并按状态显示活动读取
p6_export_dashboardExcel 项目控制仪表板:一页 A3,包含图表和明细工作表写入文件

比较、假设分析与风险

工具功能访问权限基础
p6_compare_projects逐项活动、逐条关系对比两次更新或基准计划,并分析延期原因和总浮时损耗读取
p6_update_integrity对比本次更新与上一次更新,审查可能需要质疑的变更读取
p6_cpm_validate运行内置 CPM 引擎,并逐项活动与 P6 上次按 F9 计算的结果对比读取
p6_schedule_whatif在内存中进行假设分析:添加或删除关系、修改工期或约束,并查看新的完工日期读取
p6_schedule_risk在内存中进行蒙特卡洛进度风险分析:完工百分位数、按时完工概率、关键性指数读取

XER 文件

工具功能访问权限基础
p6_inspect_xer读取 XER 文件但不导入,并运行导入前检查读取
p6_import_xer将 XER 导入为新项目、基准计划或现有项目的更新写入
p6_export_xer将项目导出为 XER 文件,并包含进度计划选项写入文件

编辑(默认关闭)

工具功能访问权限基础
p6_update_activity编辑活动:名称、工期、约束、实际日期、实际完成百分比写入
p6_update_assignment设置一项资源分配的预算、实际或剩余单位写入
p6_update_assignments在一项全有或全无的更改中设置多项分配的单位写入
p6_update_udf设置或清除一个活动 UDF 值写入
p6_update_udfs在一项更改中设置或清除多个活动 UDF 值写入
p6_add_relationship添加关系(FS、SS、FF、SF,含时滞)写入
p6_add_relationships在一项全有或全无的更改中添加多个关系写入
p6_update_relationship更改关系的类型或时滞写入
p6_update_relationships在一项更改中更改多个关系写入
p6_delete_relationship删除关系写入
p6_delete_relationships在一项更改中删除多个关系写入
p6_set_schedule_options写入项目的进度计划选项,或从 XER 文件中复制这些选项写入
p6_create_eps创建 EPS 节点写入
p6_delete_activity按照 P6 的方式删除活动及其所有关联内容删除或替换
p6_delete_project按照 P6 的方式删除一个或多个项目删除或替换

备份、日志和诊断

工具功能访问权限基础
p6_backup_database立即备份 P6 数据库写入
p6_list_backups列出自动备份(写入前创建)和手动备份读取
p6_restore_backup在安全备份当前数据库后,恢复某个备份删除或替换
p6_edit_log记录每次已确认的写入操作及其参数、修改前后的值读取
p6_diagnose一目了然地查看配置、数据库、P6 版本和 P6 运行状态读取是
p6_sql_select在必要时对 P6 数据库执行只读 SQL 查询读取

技能库

工具功能访问权限基础
p6_shop_search搜索技能商店(在 GitHub 上共享的现成 P6 工作流)读取
p6_shop_get完整显示商店中的一项技能读取
p6_shop_install经你确认后,从商店安装或更新技能应用设置

与仅支持 XER 的 MCP 服务相比

多个 MCP 服务可读取 Primavera P6 XER 文件;其中一些还可以编辑 XER 并导出新文件,以便重新导入 P6。MCP for Primavera P6 直接操作 P6 Professional 数据库本身,也可以读取 XER 文件。

MCP for Primavera P6典型的 XER 文件 MCP 服务
读取 XER 文件是:检查、导入、导出、仅 XER 模式是
直接读取 P6 Professional 数据库(每个项目、基线、EPS、代码、UDF、进度计划选项)是否:需先导出 XER
将更改写回 P6是,写入数据库:打开 P6 并按 F9否,或编辑 XER 后再重新导入
预览、确认令牌、每次写入前备份、还原、编辑日志是不适用,或因服务而异
在 P6 运行时或遇到未经测试的 P6 架构时拒绝写入是不适用
经 P6 自身的 F9 日期验证的 CPM 引擎(p6_cpm_validate),用于假设分析和 Monte Carlo 风险分析是因服务而异
使用 P6 中设置的阈值进行 DCMA 14 点检查是,未设置阈值时使用 DCMA 默认值因服务而异
Excel 仪表板、P6 技能(现成工作流)是因服务而异
安装带设置窗口的 Windows 安装程序;注册你的 MCP 客户端通常是 Python 软件包(pip、uvx)
在 macOS 或 Linux 上运行否:仅限 Windows,与 P6 Professional 一样通常可以
P6 EPPM,或运行在 SQL Server 或 Oracle 上的 P6否否(仅限 XER)

“因服务而异”表示有些 XER 服务支持,有些不支持:请查看你所关注的服务。

安全性

设置:工具与安全性

  • 工具配置文件:Basic(11 个只读工具,适合小型本地模型)或 Full(全部 58 个工具)。
  • 默认关闭写入。 使用 Full 配置文件并启用“Allow write operations”后,每次写入都需要两次调用: 首先进行试运行,显示计划并返回一个一次性确认令牌;然后,在你明确同意后,使用该令牌进行相同的 调用。删除项目或活动以及还原备份也需要确认文本。如果期间数据库发生了更改,则会拒绝写入。
  • 每次写入前都会创建备份(保留期限由你选择);P6 运行时会拒绝写入;每次写入都会记录到 编辑日志中,并附上相关参数。
  • 对于服务器未经测试的 P6 架构版本,会拒绝写入,除非你明确选择信任它。
  • 这些规则由服务器本身在每次调用时强制执行,而不仅仅由设置窗口执行。

写入会直接修改数据库,并绕过 P6 自身的应用逻辑。服务器会像 P6 一样更新审核字段(update_date、update_user、create_*),并且绝不会写入计划、提前或延后日期,也不会写入时差:写入前请关闭 P6,然后重新打开并按 F9。可在 SECURITY.md 中查看写入工具可以更改的内容。

隐私

服务器仅在你的电脑上运行:没有云端组件,也没有遥测。它唯一的网络请求会发送到 GitHub: 更新(此仓库的版本发布),你可以在 Logs and updates 下将其关闭;以及技能商店 (在你打开技能商店页面或提出请求时读取公开目录;设置应用首次启动时读取核心技能集;在“Restore core skills”时读取;以及启用自动更新后获取较新版本的技能),你可以在 Tools and safety 下将其关闭(此时核心技能集将使用应用内附带的副本)。

工具返回的数据会发送给 MCP 客户端使用的 AI 模型,该模型可能是云服务。对于机密进度计划,请使用本地模型(例如 LM Studio)。

P6 技能

P6 技能是现成的工作流,可将工具串联起来,生成一份固定报告:每周更新审查、进度计划质量审计、安全更新导入、更新完整性审计、进度计划风险、延期假设分析、基准偏差、Excel 仪表板等。它们都来自 技能商店。首次启动时,Settings 应用会从商店安装核心技能集(如果无法连接 GitHub,则安装应用随附的核心技能集副本,之后再从商店更新)。恢复核心技能(在 Skills 或 Skill shop 页面中)会再次安装核心技能集:缺失的技能会恢复,编辑过的技能会替换为商店版本。启用自动更新(Logs and updates)后,托盘应用也会安装商店中较新的技能版本,但不会覆盖你在此处编辑过的技能:这些技能会在 Skill shop 页面显示有可用更新,点击 Update 后会先询问是否替换你的更改。

大多数技能需要 Full 工具配置文件(导入也需要写入权限)。MCP 客户端 > 安装技能会将每项技能写入一个 Agent Skills 文件夹 p6-<name>(包含 SKILL.md 及其参考文件);当你的请求符合技能描述时,客户端的 AI 会使用该技能,Claude Code 也可以通过 /p6-<name> 运行它:

客户端技能文件夹
Claude Code、Cursor、VS Code / VS Code Insiders%USERPROFILE%\.claude\skills(这三个客户端共用一个文件夹)
Cline%USERPROFILE%\.cline\skills

更新技能会在更新或更改工具设置后刷新技能;移除技能(以及卸载应用)只会删除应用写入的文件。通过命令行:

& "$env:LOCALAPPDATA\Programs\P6 MCP\p6mcp-server.exe" clients skills install --detected

服务还会将这些技能作为 MCP 提示词提供:Claude Desktop 会在 + 菜单中列出它们,VS Code 中的格式为 /mcp.p6mcp.<name>,Claude Code 中的格式为 /mcp__p6mcp__<name>。Claude Desktop 没有技能文件夹:将技能导出为 zip 文件(Skills > Export),然后在 Claude Desktop 的设置中上传,即可将其添加为技能。

Settings 应用的 Skills 页面会列出这些技能、当前工具设置是否支持这些技能,以及它们的来源(Shop、Shop edited here、Yours)。你可以关闭技能、编辑技能或添加自己的技能(点击 New,或点击 Copy to my skills,以商店技能为基础创建):设置名称、标题、说明(描述技能的功能和适用场景,客户端会据此选择技能)、在指令中以 {input} 格式编写输入、选择要使用的 P6 工具,以及添加最多 5 个文本参考文件(清单、阈值、示例;不能是脚本)。P6 规则会附加到你的指令中。Instructions 页面会显示每个客户端连接时收到的指令;你可以关闭内置语句(两步写入规则除外),也可以添加自己的语句,例如“显示活动时,请按 Activity ID - Activity name 的格式书写”。点击 Save,然后在 MCP clients 页面点击 Update skills,最后重启 MCP 客户端以应用提示词。

技能商店

技能商店页面会列出公共目录 nizarhamza/p6-mcp-shop 中的 P6 技能:随应用维护的核心技能,以及其他用户分享的技能。无需账户即可浏览;应用只会在你打开此页面或向 AI 客户端发出请求时读取该目录(Full profile 下的工具 p6_shop_search、p6_shop_get 和 p6_shop_install;安装前会显示完整技能内容,并需要你确认)。安装前请先阅读技能:它包含给 AI 的指令,而使用写入工具的技能在你确认更改后可能会修改你的进度计划。你可以在工具与安全中关闭技能商店。

若要分享技能,请在“技能”页面选中该技能,然后点击在 GitHub 上分享:应用会将技能复制到剪贴板,并在浏览器中打开 GitHub 分享表单;如果系统提示,请登录(需要免费的 GitHub 账户),将技能粘贴到 Skill 字段,然后点击 Create(应用本身不会发送任何内容)。维护者会审核该技能;审核通过后,GitHub Action 会检查并以 Apache-2.0 许可证将其发布到目录中。若没有 GitHub 账户,可将技能导出为 zip 文件并发送;导入会在你审核后添加 zip 文件(或包含 SKILL.md 和文本文件的任意技能文件夹)。

本地 HTTP 传输

默认情况下,每个客户端都会启动自己的服务器(stdio)。你可以在服务器中切换为由通知区域应用托管的本地 HTTP 服务器,供需要 HTTP 的客户端使用,或供多个客户端共用:

  • 仅监听 127.0.0.1(http://127.0.0.1:<port>/mcp),并检查端口;
  • 每个请求都需要 Authorization: Bearer <token>;令牌保存在 Windows 凭据管理器中(可查看掩码值、复制或重新生成);
  • 检查 Host 和 Origin 标头,以阻止 DNS 重绑定。

Excel 仪表板

例如,可以请求“将 DEMO-A 的仪表板导出到 D:\Reports\DEMO-A.xlsx”(Full profile)。模板内置于服务器中:p6_export_dashboard 会读取上次 F9 计算结果并写入完整的工作簿(值和 Excel 原生图表,不含公式),因此请先在 P6 中按 F9。只有在你明确要求时,才会替换现有文件(overwrite)。

工作表内容
Dashboard一页 A3 横向页面,受保护(无密码),图表位置固定:7 张卡片(总体进度、关键和延误活动、进度计划偏差、预测完成时间、剩余工期、逾期里程碑);S 曲线;按一级 WBS 划分的完成时间偏差(工作日);WBS 进度(一级)和二级进度,以及实际值与基线计划值的对比;里程碑;关键和延误活动
Schedule Overview按 WBS 分组列出所有活动(默认折叠至二级):基线、当前和实际日期、完成百分比、人工单位、原始工期、剩余工期和实际工期
Critical Path上次 F9 计算的 P6 浮时路径,路径之间以粗线分隔(若未存储路径,则列出总浮时不超过 near_critical_days 的活动)
ReportsDCMA 14 项检查、来源、设置和定义

选项:baseline(默认为项目基线)、baseline_dates(planned 或 current)、milestones(活动 ID)、near_critical_days(10:超过此值为延误,不超过此值为有风险)、period(month 或 week)、prepared_by、revision,以及仅适用于此导出的 company(显示在侧边栏中)和 colors(十六进制的 "primary,accent")。延误和偏差均按工作日计算,与 P6 偏差列一致。

仅 XER 模式

在数据库 > 数据源中,选择仅 XER 文件,添加一个或多个 XER 文件,然后点击加载并检查。文件会被读入私有的只读副本;所有读取工具都可在其中运行。加载同一进度计划的两个版本即可比较;若 Project ID 已被第一个文件使用,后续文件中的 ID 会加上 ~2 后缀。

常见问题

Primavera P6 的 MCP 服务是什么? MCP(模型上下文协议)是 AI 助手用于调用工具的开放标准。此服务提供 58 个工具,用于读取和分析 Primavera P6 进度计划,因此你可以用日常语言提问,并获得根据进度计划计算出的答案,而不是模型猜测的结果。

AI 能更改我的进度计划吗? 只有在你允许的情况下才可以。默认禁用写入;启用后,每次写入都会先进行试运行预览,并且只有在你明确确认后,才会使用一次性令牌执行;同时会先创建备份,并且必须关闭 P6。计划日期和时差永远不会被写入:按下 F9 时,P6 会计算这些数据。

我的进度计划会离开我的电脑吗? 此服务在本地运行,不会向任何地方发送数据。工具返回的内容会发送给 MCP 客户端使用的 AI 模型;如果使用云端模型,数据就会发送给该模型的提供商。对于机密项目,请使用本地模型,例如在 LM Studio 中运行的模型。

支持哪些 P6 版本和数据库? 支持 P6 Professional 独立版(SQLite),已针对 25.12 测试;其他版本在经过测试或确认可靠之前均为只读。支持来自 P6 Professional 24.12 的 XER 文件,以及由此服务自行导出的 XER 文件。不支持 P6 EPPM,也不支持运行于 SQL Server 或 Oracle 上的 P6 Professional。

我需要安装 P6 吗? 处理 XER 文件时不需要:仅 XER 模式无需 P6 或 P6 数据库即可分析文件。

DCMA 14 点检查如何工作? p6_health_check 会根据上次 F9 计算结果运行 DCMA 的 14 项检查;如果项目中设有 P6 进度计划检查设置阈值,则使用这些阈值,否则使用 DCMA 默认值。关键路径测试会在此服务的 CPM 引擎中延迟一项活动,并且只有在该引擎计算结果与 P6 日期一致时才会运行。请参阅DCMA 14 点检查指南。

日期是由 AI 计算的吗? 不是。日期和时差来自 P6 上次的进度计划计算结果。假设情景和风险分析使用此服务的 CPM 引擎;在依赖该引擎之前,p6_cpm_validate 会显示它在你的项目中与 P6 自身日期的匹配程度。

哪些 AI 客户端可以使用? Claude Desktop、Claude Code、Cursor、VS Code、LM Studio 和 Cline 会自动注册;任何能够启动 stdio 服务或使用 Streamable HTTP 的 MCP 客户端也可以使用。ChatGPT 可通过 Codex 或 OpenAI Secure MCP Tunnel 使用(请参阅 ChatGPT)。

可以在 macOS 或 Linux 上运行吗? 不可以。P6 Professional 是 Windows 程序,此服务专为 Windows 10 和 11 构建。

免费吗? 是,采用 Apache License 2.0 授权。

已测试版本

组件已测试
WindowsWindows 11
P6 Professional 独立版(SQLite)25.12(p6mcp/schema.py 中的架构指纹);其他版本在经过测试或确认可靠之前均为只读
XER 文件由 P6 Professional 24.12 和此服务自行导出
MCP 客户端已针对上述每个客户端的示例配置文件测试注册;已使用 MCP Python SDK 客户端测试 stdio 和 HTTP;每个客户端的端到端使用情况均列入发布检查清单。Codex 和 ChatGPT tunnel 尚未测试
MCP SDKmcp 2.3(支持 1.8 或更高版本)

故障排除

  • “未配置数据库”:打开 MCP for Primavera P6 设置,选择数据库,点击“测试连接”,再点击“使用此数据库”和“保存”。
  • 工具“在 Basic 配置文件中不可用”:在“工具和安全”下切换到 Full,点击“保存”,然后重启客户端。
  • 客户端未显示工具:完全重启客户端(也从通知区域退出),然后检查 MCP 客户端:该条目可能需要修复。请助手运行 p6_diagnose。
  • “P6 (PM.exe) 正在运行”:执行写入操作前关闭 P6。
  • “未知的 P6 架构”:你的 P6 版本未经测试;读取功能可用。你可以信任“数据库”下的架构(请先备份)。
  • HTTP 服务错误:服务会显示最后一次错误(通常是端口被占用:请选择其他端口)。
  • 日志:日志和更新 > 打开日志文件夹(%LOCALAPPDATA%\P6MCP\logs)。设置位于 %APPDATA%\P6MCP\config.json;备份、编辑日志和 XER 副本位于 %LOCALAPPDATA%\P6MCP。

1.x 版本称为 P6 MCP:安装文件夹、程序名称和设置文件夹都保留了这个名称,因此更新和客户端注册信息都能沿用。

卸载

Windows 设置 > 应用 > MCP for Primavera P6。卸载程序会移除程序、MCP 客户端中的 p6mcp 条目以及启动项。你的设置、备份和日志会保留。

开发

python -m venv .venv
.venv\Scripts\pip install -e .[dev]
.venv\Scripts\python -m pytest -q
.venv\Scripts\python -m p6mcp.settings_app      # Settings window
.venv\Scripts\python tools\gen_docs.py          # tool tables of README.md and site/llms.txt

测试使用由测试构建的合成 P6 数据库和合成 XER 文件(tests/fixtures/make_db.py)。 切勿提交真实进度计划、数据库、XER 文件或日志。构建安装程序和发布: docs/RELEASING.md。项目主页位于 site/。

如需贡献,请先创建 issue:参阅 CONTRIBUTING.md 和 行为准则。无障碍支持:ACCESSIBILITY.md。

许可证

Apache License 2.0。版权所有 2026 Nizar Hamza。参见 NOTICE。

Primavera 和 P6 是 Oracle 的商标。本项目与 Oracle 无关,也未获 Oracle 背书。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。