mcpField
R
request-fulfillment

request-fulfillment

github.com/happy-technologies-llc其他4142 次安装2 天前更新
代码仓库

关于 request-fulfillment

request-fulfillment 是一项 ServiceNow 技能,用于处理服务目录请求,从受理到履行和关闭。它为履行人员提供请求层级、任务更新、审批处理及取消或部分完成等特殊情况的操作指引。

主要功能

  1. 01请求、项目与任务层级
  2. 02查询待处理请求和任务
  3. 03查看请求变量
  4. 04更新任务进度和工作备注
  5. 05处理审批状态
  6. 06关闭请求及任务

适用场景

  1. 01检查等待履行的请求
  2. 02跟踪分配给履行组的任务
  3. 03处理被拒绝或取消的请求
  4. 04完成子任务后关闭项目

MCP 相关

该技能使用 SN-Query-Table、SN-Update-Record 和 SN-Add-Work-Notes 等 MCP 工具,读取并更新 ServiceNow 请求、项目、任务和审批记录。

安装

复制下面的命令,在终端中运行。

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

安装后在 Claude Code 中输入/request-fulfillment确认已加载。

详细介绍

服务目录请求履行

概述

此技能涵盖端到端的服务目录请求履行流程:

  • 了解请求结构(请求 → 项目 → 任务)
  • 处理收到的请求
  • 管理履行任务
  • 审批工作流
  • 正确关闭请求

适用场景: 履行服务目录请求、管理请求队列或排查履行问题时。

前提条件

  • 角色: catalog_admin、itil 或属于履行组
  • 访问权限: sc_request、sc_req_item、sc_task 表
  • 知识: 服务目录结构、履行工作流

流程

步骤 1:了解请求层级

ServiceNow 使用三级层级:

sc_request (Request)
├── sc_req_item (Requested Item) - One per catalog item ordered
│   ├── sc_task (Catalog Task) - Fulfillment tasks
│   └── sc_task (Catalog Task) - Additional tasks
└── sc_req_item (Requested Item) - If multiple items ordered
    └── sc_task (Catalog Task)

关键字段:

表关键字段
sc_requestnumber、requested_for、stage、approval
sc_req_itemrequest、cat_item、stage、variables
sc_taskrequest_item、assignment_group、state
步骤 2:查询待处理请求

查找等待履行的请求:

Tool: SN-Query-Table
Parameters:
  table_name: sc_req_item
  query: stage=requested^assignment_group=[your_group_sys_id]
  fields: number,short_description,cat_item,requested_for,sys_created_on
  limit: 50

查找分配给你所在组的任务:

Tool: SN-Query-Table
Parameters:
  table_name: sc_task
  query: state=1^assignment_group=[your_group_sys_id]
  fields: number,short_description,request_item,assigned_to,priority
  limit: 50
步骤 3:查看请求详情

获取包含变量的完整请求项目:

Tool: SN-Query-Table
Parameters:
  table_name: sc_req_item
  query: number=RITM0012345
  fields: sys_id,number,short_description,description,cat_item,requested_for,opened_by,variables

变量值存储在 sc_item_option_mtom 表中:

Tool: SN-Query-Table
Parameters:
  table_name: sc_item_option_mtom
  query: request_item=[ritm_sys_id]
  fields: sc_item_option,item_option_new.value,item_option_new.item_option_new.question_text
步骤 4:处理履行任务

接受/开始任务:

Tool: SN-Update-Record
Parameters:
  table_name: sc_task
  sys_id: [task_sys_id]
  data:
    state: 2  # Work in Progress
    assigned_to: [your_user_sys_id]
    work_notes: "Starting fulfillment work"

记录进度:

Tool: SN-Add-Work-Notes
Parameters:
  sys_id: [task_sys_id]
  table_name: sc_task
  work_notes: |
    Fulfillment Progress:
    1. ✅ Verified request details
    2. ✅ Checked inventory availability
    3. 🔄 Provisioning in progress
    4. ⏳ Pending: Delivery scheduling
步骤 5:处理审批

检查审批状态:

Tool: SN-Query-Table
Parameters:
  table_name: sysapproval_approver
  query: sysapproval=[ritm_sys_id]
  fields: approver,state,sys_updated_on,comments

审批状态:

  • not yet requested - 尚未开始审批
  • requested - 等待审批人审批
  • approved - 已批准
  • rejected - 已拒绝
  • cancelled - 已取消

如果被拒绝,通知请求者:

Tool: SN-Update-Record
Parameters:
  table_name: sc_req_item
  sys_id: [ritm_sys_id]
  data:
    stage: Request Cancelled
    comments: "Your request was not approved. Reason: [rejection reason]. Please contact your manager for more information."
步骤 6:完成履行

关闭履行任务:

Tool: SN-Update-Record
Parameters:
  table_name: sc_task
  sys_id: [task_sys_id]
  data:
    state: 3  # Closed Complete
    close_notes: |
      Fulfillment Complete:
      - Software installed on LAPTOP-12345
      - User notified via email
      - Verified user can access application
    work_notes: "Task completed successfully"

关闭请求项目: 所有任务完成后,关闭 RITM:

Tool: SN-Update-Record
Parameters:
  table_name: sc_req_item
  sys_id: [ritm_sys_id]
  data:
    stage: Closed Complete
    close_notes: "All fulfillment tasks completed. User has been notified."

关闭父请求: 所有 RITM 完成后:

Tool: SN-Update-Record
Parameters:
  table_name: sc_request
  sys_id: [req_sys_id]
  data:
    stage: Closed Complete
    request_state: closed_complete
步骤 7:处理特殊情况

取消请求:

Tool: SN-Update-Record
Parameters:
  table_name: sc_req_item
  sys_id: [ritm_sys_id]
  data:
    stage: Request Cancelled
    close_notes: "Cancelled per user request via email dated 2026-02-06"

部分履行:

Tool: SN-Update-Record
Parameters:
  table_name: sc_req_item
  sys_id: [ritm_sys_id]
  data:
    stage: Closed Incomplete
    close_notes: "Partial fulfillment: Software installed but license limit reached. Remaining 5 licenses on backorder."

请求/项目阶段

Request Stages:
Requested → Approved → Delivery → Closed Complete
         ↘ Rejected → Request Cancelled

RITM Stages:
Waiting for Approval → Fulfillment → Delivery → Closed Complete
                    ↘ Request Cancelled

工具使用摘要

操作MCP 工具表
查找请求SN-Query-Tablesc_request
查找项目SN-Query-Tablesc_req_item
查找任务SN-Query-Tablesc_task
更新状态SN-Update-Recordsc_task/sc_req_item
添加备注SN-Add-Work-Notessc_task
检查审批SN-Query-Tablesysapproval_approver

最佳实践

  • 先检查审批: 获得批准前不要开始履行
  • 记录变量: 记录具体请求的内容
  • 定期更新: 及时更新工作备注,确保信息透明
  • 确认完成情况: 关闭前与请求者确认
  • 关闭父记录: 确保所有 RITM 完成后关闭 REQ
  • 关注 SLA: 监控履行时间是否符合 SLA 目标

故障排查

请求卡在“Waiting for Approval”

原因: 审批人尚未响应,或审批规则存在问题
解决方案:

  1. 在 sysapproval_approver 中检查审批人
  2. 发送提醒或升级处理
  3. 检查工作流是否有错误
未自动生成任务

原因: 工作流尚未发布,或执行出现问题
解决方案:

  1. 检查工作流上下文中的错误
  2. 确认工作流已发布
  3. 如有需要,手动创建任务
无法关闭 RITM

原因: 存在未关闭的子任务
解决方案: 先关闭所有 sc_task 记录,再关闭 RITM

相关技能

  • catalog/item-creation - 创建目录项目
  • itsm/incident-lifecycle - 请求转为事件时
  • admin/workflow-creation - 履行工作流

参考资料

评论

支持 Markdown