mcpField
P
project-insights

project-insights

github.com/happy-technologies-llc生産性4141 回インストール2 日前に更新
リポジトリ

project-insights について

project-insightsは、ServiceNow SPMのプロジェクトやポートフォリオの健全性を評価するスキルです。プロジェクトマネージャー、PMOリーダー、経営層向けに、各種指標をまとめたレポートと提案を作成します。

主な機能

  1. 01スケジュール差異とタスク状況の分析
  2. 02リソース稼働率の評価
  3. 03リスクと阻害要因の特定
  4. 04マイルストーンと期限の追跡
  5. 05アジャイル速度とバーンダウン指標
  6. 06経営層・ポートフォリオ向け要約

活用シーン

  1. 01プロジェクト健全性レポートの作成
  2. 02計画に対するリソース配分の確認
  3. 03リスクと期限超過のマイルストーンの特定
  4. 04複数プロジェクトのスプリント実績の要約

MCP 対応

SN-Get-RecordやSN-Query-TableなどのServiceNow MCPツールでプロジェクトデータを取得します。収集したレコードから要約を作成する手順も説明しています。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/happy-technologies-llc/happy-platform-skills --skill project-insights

インストール後、Claude Code で/project-insightsを入力して読み込まれたか確認します。

詳細

プロジェクトインサイト

概要

このスキルを使用すると、ServiceNow の Strategic Portfolio Management(SPM)モジュールから、プロジェクトの健全性に関する包括的なインサイトを生成できます。次の内容を扱います。

  • プロジェクトタスク全体のスケジュール差異とスケジュール遵守状況の分析
  • 計画された割り当てに対するリソース稼働率の測定
  • リスク指標と潜在的な阻害要因の特定
  • マイルストーンの完了状況と今後の期限の追跡
  • アジャイルのベロシティとスプリントのバーンダウン指標の算出
  • 実行可能な推奨事項を含む、経営陣向けダッシュボードの概要作成

使用するタイミング: プロジェクトマネージャー、PMO リーダー、または経営幹部が、ServiceNow SPM でデータに基づくプロジェクトの健全性、ポートフォリオのステータス、またはスプリントのパフォーマンス評価を必要とする場合に使用します。

前提条件

  • プラグイン: com.snc.project(Project Portfolio Management)、com.snc.sdlc.agile.2.0(Agile Development 2.0)
  • ロール: project_manager、program_manager、portfolio_manager、または admin
  • アクセス: pm_project、pm_project_task、planned_task、pm_resource_plan、rm_story、rm_sprint、risk テーブルへの読み取りアクセス
  • 知識: プロジェクトスケジュールの概念(クリティカルパス、EVM)とアジャイル指標(ベロシティ、バーンダウン)の理解

手順

ステップ 1:プロジェクトの概要を取得する

プロジェクトの主要レコードと現在のステータスを取得します。

MCP を使用する場合(Claude Code/Desktop):

Tool: SN-Get-Record
Parameters:
  table_name: pm_project
  sys_id: [project_sys_id]
  fields: sys_id,number,short_description,description,state,phase,priority,risk,percent_complete,start_date,end_date,actual_start_date,actual_end_date,work_start,work_end,schedule_variance,cost_variance,budget_cost,actual_cost,project_manager,program,portfolio,business_unit,health,health_reason

プロジェクト番号しかわからない場合:

MCP を使用する場合:

Tool: SN-Query-Table
Parameters:
  table_name: pm_project
  query: number=PRJ0010001
  fields: sys_id,number,short_description,state,phase,percent_complete,start_date,end_date,actual_start_date,schedule_variance,cost_variance,budget_cost,actual_cost,project_manager,health,risk
  limit: 1

REST API を使用する場合:

GET /api/now/table/pm_project?sysparm_query=number=PRJ0010001&sysparm_fields=sys_id,number,short_description,state,phase,percent_complete,start_date,end_date,actual_start_date,schedule_variance,cost_variance,budget_cost,actual_cost,project_manager,health,risk&sysparm_limit=1&sysparm_display_value=true
ステップ 2:スケジュール差異を分析する

プロジェクトタスクを照会し、期限超過、リスクあり、予定どおりの項目を特定します。

MCP を使用する場合:

Tool: SN-Query-Table
Parameters:
  table_name: pm_project_task
  query: parent=[project_sys_id]^stateNOT IN3,4,7^end_date<javascript:gs.nowDateTime()
  fields: sys_id,number,short_description,state,percent_complete,start_date,end_date,actual_start_date,actual_end_date,assigned_to,priority,milestone
  limit: 50

REST API を使用する場合:

GET /api/now/table/pm_project_task?sysparm_query=parent=[project_sys_id]^stateNOT IN3,4,7^end_date<javascript:gs.nowDateTime()&sysparm_fields=sys_id,number,short_description,state,percent_complete,start_date,end_date,assigned_to,priority,milestone&sysparm_limit=50&sysparm_display_value=true

今後 14 日以内に期限を迎えるタスクを照会します。

MCP を使用する場合:

Tool: SN-Query-Table
Parameters:
  table_name: pm_project_task
  query: parent=[project_sys_id]^stateNOT IN3,4,7^end_date>=javascript:gs.nowDateTime()^end_date<=javascript:gs.daysAgoEnd(-14)
  fields: sys_id,number,short_description,state,percent_complete,end_date,assigned_to,priority,milestone
  limit: 30

REST API を使用する場合:

GET /api/now/table/pm_project_task?sysparm_query=parent=[project_sys_id]^stateNOT IN3,4,7^end_date>=javascript:gs.nowDateTime()^end_date<=javascript:gs.daysAgoEnd(-14)&sysparm_fields=sys_id,number,short_description,state,percent_complete,end_date,assigned_to,priority&sysparm_limit=30&sysparm_display_value=true
ステップ 3:リソース稼働率を評価する

リソース計画を照会し、割り当てと実績工数を確認します。

MCP を使用する場合:

Tool: SN-Query-Table
Parameters:
  table_name: pm_resource_plan
  query: task=[project_sys_id]^state=2
  fields: sys_id,resource,planned_hours,actual_hours,remaining_hours,utilization,start_date,end_date,resource_type,group
  limit: 50

REST API を使用する場合:

GET /api/now/table/pm_resource_plan?sysparm_query=task=[project_sys_id]^state=2&sysparm_fields=sys_id,resource,planned_hours,actual_hours,remaining_hours,utilization,start_date,end_date,resource_type,group&sysparm_limit=50&sysparm_display_value=true

稼働率指標を算出します。

  • 過剰割り当て: actual_hours > planned_hours に該当するリソース
  • 稼働率不足: utilization < 50% に該当するリソース
  • 上限付近: 稼働率が 80% 以上 100% 以下のリソース
ステップ 4:リスク指標を確認する

リスクテーブルを照会し、プロジェクト固有のリスクと問題を確認します。

MCP を使用する場合:

Tool: SN-Query-Table
Parameters:
  table_name: risk
  query: task=[project_sys_id]^state!=6
  fields: sys_id,number,short_description,category,risk_score,probability,impact,state,response,assigned_to,due_date,mitigation_plan
  limit: 20

REST API を使用する場合:

GET /api/now/table/risk?sysparm_query=task=[project_sys_id]^state!=6&sysparm_fields=sys_id,number,short_description,category,risk_score,probability,impact,state,response,assigned_to,due_date,mitigation_plan&sysparm_limit=20&sysparm_display_value=true
ステップ 5:マイルストーンを追跡する

マイルストーンタスクを照会し、主要な成果物に対する進捗を評価します。

MCP を使用する場合:

Tool: SN-Query-Table
Parameters:
  table_name: pm_project_task
  query: parent=[project_sys_id]^milestone=true^ORDERBYend_date
  fields: sys_id,number,short_description,state,percent_complete,end_date,actual_end_date,assigned_to,priority
  limit: 20

REST API を使用する場合:

GET /api/now/table/pm_project_task?sysparm_query=parent=[project_sys_id]^milestone=true^ORDERBYend_date&sysparm_fields=sys_id,number,short_description,state,percent_complete,end_date,actual_end_date,assigned_to,priority&sysparm_limit=20&sysparm_display_value=true
ステップ 6:アジャイル指標を収集する(該当する場合)

アジャイル手法を使用するプロジェクトでは、スプリントとストーリーのデータを照会します。

MCP を使用する場合:

Tool: SN-Query-Table
Parameters:
  table_name: rm_sprint
  query: release.product.project=[project_sys_id]^state=3^ORDERBYDESCend_date
  fields: sys_id,number,short_description,start_date,end_date,story_points,capacity,state
  limit: 5

ベロシティを算出するため、スプリントごとの完了済みストーリーを照会します。

MCP を使用する場合:

Tool: SN-Query-Table
Parameters:
  table_name: rm_story
  query: sprint=[sprint_sys_id]^state=3
  fields: sys_id,number,story_points,state,sprint
  limit: 100

REST API を使用する場合:

GET /api/now/table/rm_story?sysparm_query=sprint=[sprint_sys_id]^state=3&sysparm_fields=sys_id,number,story_points,state&sysparm_limit=100

ベロシティを算出します。各スプリントで完了したストーリーの story_points を合計します。信頼性の高いベロシティ指標を得るため、直近 3~5 回のスプリントの平均を求めます。

ステップ 7:経営陣向けダッシュボードの概要をまとめる

収集したすべてのデータを、構造化された健全性レポートにまとめます。

=== PROJECT HEALTH DASHBOARD ===
Project: PRJ0010001 - Cloud Migration Phase 2
Manager: Sarah Chen | Program: Digital Transformation
Phase: Execution | Health: [Green/Yellow/Red]

SCHEDULE PERFORMANCE:
  Planned End: 2026-06-30 | Projected End: 2026-07-15
  Schedule Variance: +15 days (at risk)
  Tasks Overdue: 4 of 32 (12.5%)
  Tasks Due Next 14 Days: 7
  Milestones Completed: 3 of 8 (37.5%)
  Next Milestone: "Integration Testing Complete" due 2026-04-01

COST PERFORMANCE:
  Budget: $450,000 | Actual Spend: $285,000 (63.3%)
  Cost Variance: -$12,000 (under budget)
  Burn Rate: $47,500/month
  Projected Total: $427,500

RESOURCE UTILIZATION:
  Total Resources: 12
  Over-allocated (>100%): 2 (John D. 120%, Maria S. 115%)
  Under-utilized (<50%): 1 (Alex K. 35%)
  Average Utilization: 82%

RISK SUMMARY:
  Open Risks: 5 (2 High, 2 Medium, 1 Low)
  Top Risk: "Vendor API deprecation" (Score: 16, Impact: High)
  Overdue Mitigations: 1

AGILE VELOCITY (Last 3 Sprints):
  Sprint 14: 34 pts | Sprint 15: 38 pts | Sprint 16: 31 pts
  Average Velocity: 34.3 pts/sprint
  Remaining Backlog: 142 pts
  Projected Sprints to Complete: 4.1 sprints

RECOMMENDATIONS:
  1. [URGENT] Address 4 overdue tasks blocking Integration Testing milestone
  2. [ACTION] Rebalance workload from John D. and Maria S. to Alex K.
  3. [MONITOR] Vendor API deprecation risk - mitigation plan overdue
  4. [PLAN] At current velocity, backlog completion extends 1 sprint beyond plan
ステップ 8:ポートフォリオレベルのインサイト

PMO リーダー向けに、ポートフォリオ全体のプロジェクトの健全性を集計します。

MCP を使用する場合:

Tool: SN-Query-Table
Parameters:
  table_name: pm_project
  query: portfolio=[portfolio_sys_id]^stateNOT IN-5,3,4
  fields: sys_id,number,short_description,state,phase,health,percent_complete,schedule_variance,cost_variance,budget_cost,actual_cost,risk,project_manager,end_date
  limit: 50

REST API を使用する場合:

GET /api/now/table/pm_project?sysparm_query=portfolio=[portfolio_sys_id]^stateNOT IN-5,3,4&sysparm_fields=sys_id,number,short_description,state,phase,health,percent_complete,schedule_variance,cost_variance,budget_cost,actual_cost,risk,project_manager,end_date&sysparm_limit=50&sysparm_display_value=true

ツールの使用方法

MCP ツールのリファレンス
ツール使用するタイミング
SN-Get-Recordsys_id を指定して、単一のプロジェクトまたはタスクのレコードを取得する
SN-Query-Tableタスク、リソース、リスク、マイルストーン、スプリント、ストーリーの対象フィールドを照会し、サマリーをローカルで算出する
SN-Natural-Language-Searchプロジェクトを自然言語で検索する(例:「Q2 のリスクありプロジェクトを探す」)
REST API リファレンス
エンドポイントメソッド目的
/api/now/table/pm_projectGETプロジェクトレコードとポートフォリオデータを取得する
/api/now/table/pm_project_taskGETタスク、マイルストーン、スケジュールデータを取得する
/api/now/table/pm_resource_planGETリソースの割り当てと利用状況を取得する
/api/now/table/riskGETプロジェクトのリスクと軽減策を取得する
/api/now/table/rm_sprintGETベロシティ計算用のスプリントデータを取得する
/api/now/table/rm_storyGETバーンダウン指標用のストーリー完了状況を取得する
/api/now/table/pm_portfolioGETポートフォリオレベルの集計を取得する
/api/now/table/pm_programGETプログラムレベルのプロジェクトグループを取得する

ベストプラクティス

  • 表示値を使用する: ダッシュボードで読みやすい出力を得るには、REST 呼び出しに常に sysparm_display_value=true を含めます
  • アーンドバリューを計算する: EVM 分析用に、percent_complete * budget_cost を使ってアーンドバリューを算出します
  • 経時的な傾向を確認する: スナップショットだけでなく、複数の報告期間にわたって指標を比較し、傾向を特定します
  • 先行指標に注目する: 遅行指標よりも、ベロシティの傾向、今後のマイルストーン、リソースの制約を優先します
  • 健全性のしきい値を設定する: 明確な緑/黄/赤の基準を定義します(例:緑=スケジュール差異が 5 日未満、黄=5~15 日、赤=15 日超)
  • 推奨事項を含める: 生データだけでは不十分です。緊急度を示した実行可能な推奨事項を必ず提示します
  • リスクを相互参照する: 期限超過のタスクと未解決のリスクを関連付け、構造的な問題を特定します
  • データの鮮度を検証する: 指標が現在の状態を反映していることを確認するため、sys_updated_on のタイムスタンプを確認します

トラブルシューティング

「タスクが完了しているのに、プロジェクトの進捗が 0%と表示される」

原因: 完了率がタスクの完了状況ではなく、計画期間に基づいて計算されている可能性があります
解決策: プロジェクトの percent_complete_method フィールドを確認します。選択肢には「manual」、「task-based」、「duration-based」があります。タスクの状態が正しく更新されていることを確認します。

「リソース利用率の数値が正しくないように見える」

原因: リソース計画レコードに実績が記録されていない可能性があります
解決策: プロジェクトタスクに対して作業時間が記録されていることを確認します。pm_resource_plan レコードの actual_hours を確認します。

「プロジェクトのリスクレコードが見つからない」

原因: リスクがプロジェクト自体ではなく、task フィールドを介してプロジェクトタスクにリンクされている可能性があります
解決策: task.parent=[project_sys_id] を指定してクエリし、子タスクにリンクされたリスクを検索します。また、自動生成されたリスクレコードについては risk_condition も確認します。

「スプリントのベロシティデータに一貫性がない」

原因: ストーリーがスプリント間で移動されたり、スプリント終了後に完了したりしている可能性があります
解決策: sprint が対象のスプリントと一致し、state=3(完了)のストーリーに絞り込みます。利用可能な場合は、sprint_changed フィールドを使ってスプリントから移動されたストーリーを除外します。

例

例 1:単一プロジェクトの週次ステータスレポート

ステップ 1 - データを収集する:

Tool: SN-Query-Table
Parameters:
  table_name: pm_project
  query: number=PRJ0010042
  fields: sys_id,number,short_description,state,phase,health,percent_complete,schedule_variance,budget_cost,actual_cost,project_manager,end_date
  limit: 1

ステップ 2 - 期限超過のタスクを取得する:

Tool: SN-Query-Table
Parameters:
  table_name: pm_project_task
  query: parent=[sys_id]^state=2^end_date<javascript:gs.nowDateTime()
  fields: number,short_description,end_date,assigned_to,priority
  limit: 10

出力:

WEEKLY STATUS - PRJ0010042 ERP Upgrade
Report Date: 2026-03-19

Health: YELLOW | Phase: Testing | Complete: 72%
Schedule: 8 days behind plan | Budget: $12K under budget

KEY ISSUES:
- 3 overdue tasks in Integration Testing phase
- UAT environment provisioning delayed by vendor

MILESTONES:
  [DONE] Requirements Complete (Feb 15)
  [DONE] Development Complete (Mar 01)
  [LATE] Integration Testing (Due Mar 10, now projected Mar 22)
  [UPCOMING] UAT Sign-off (Due Apr 05)
  [UPCOMING] Go-Live (Due Apr 30)

ACTIONS NEEDED:
1. Escalate vendor environment issue to procurement
2. Add 2 QA resources for parallel testing
例 2:ポートフォリオ健全性の概要
Tool: SN-Query-Table
Parameters:
  table_name: pm_project
  query: portfolio.short_description=Digital Transformation^stateNOT IN-5,3,4
  fields: number,short_description,health,percent_complete,schedule_variance,budget_cost,actual_cost,end_date,project_manager
  limit: 20

出力:

PORTFOLIO DASHBOARD - Digital Transformation
Active Projects: 8 | Total Budget: $3.2M

HEALTH DISTRIBUTION:
  Green: 5 projects (62.5%)
  Yellow: 2 projects (25.0%)
  Red: 1 project (12.5%)

AT-RISK PROJECTS:
  [RED] PRJ0010042 - ERP Upgrade (8 days behind, vendor dependency)
  [YELLOW] PRJ0010055 - API Gateway (resource constraints)
  [YELLOW] PRJ0010061 - Data Lake (scope change pending approval)

BUDGET SUMMARY:
  Allocated: $3,200,000
  Spent: $1,890,000 (59.1%)
  Projected: $3,050,000 (4.7% under budget)

関連スキル

  • spm/agile-story-generation - ユーザーストーリーを生成および管理する
  • spm/planning-summarization - 計画セッションとポートフォリオの意思決定を要約する
  • spm/feedback-summarization - レトロスペクティブとステークホルダーからのフィードバックを分析する
  • reporting/executive-dashboard - エグゼクティブダッシュボードと可視化を作成する
  • reporting/trend-analysis - プロジェクト指標の経時的な傾向を分析する

コメント