About sourcing-summarization
sourcing-summarization helps sourcing managers and analysts using ServiceNow Sourcing and Procurement Operations review events, bids, and negotiations. It brings together vendor details, scores, and history for proposal comparisons and award recommendations.
Key features
- 01Summarize sourcing event details
- 02Compare vendor bids side by side
- 03Track negotiation rounds and offers
- 04Review vendor scores and compliance
- 05Prepare award recommendations using total cost of ownership
Use cases
- 01Review active RFPs, RFQs, and RFIs
- 02Compare vendor pricing and evaluation scores
- 03Summarize negotiation progress and history
- 04Prepare award recommendations for sourcing events
MCP support
Uses MCP tools such as SN-Query-Table, SN-Get-Record, and SN-Natural-Language-Search to retrieve sourcing events, negotiations, vendor, and contract data.
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ happy-technologies-llc/ happy-platform-skills --skill sourcing-summarizationAfter installing, type/sourcing-summarizationin Claude Code to confirm it loaded.
Details
From the project READMESourcing Summarization
Overview
This skill provides a structured approach to summarizing sourcing events and negotiations in ServiceNow Sourcing and Procurement Operations. It helps you:
- Retrieve and consolidate sourcing event details from
proc_sourcing_event - Compare vendor bids side-by-side with pricing, terms, and compliance data
- Track negotiation rounds and counteroffers via
proc_negotiation - Evaluate vendors against weighted scoring criteria
- Generate award recommendations based on total cost of ownership and qualitative factors
- Support RFP/RFQ lifecycle management from creation through award
When to use: When sourcing managers need to review active sourcing events, compare vendor proposals, track negotiation progress, or prepare award recommendation summaries.
Prerequisites
- Roles:
sn_procurement.sourcing_manager,sn_procurement.analyst, orsourcing_admin - Plugins:
com.sn_sourcing(Sourcing) andcom.sn_procurementactivated - Access: Read access to
proc_sourcing_event,proc_negotiation,core_company,ast_contract - Knowledge: Familiarity with your organization's sourcing policies, evaluation criteria, and approval thresholds
Procedure
Step 1: Retrieve Sourcing Events
Query active sourcing events to understand the current sourcing pipeline.
Using MCP (Claude Code/Desktop):
Tool: SN-Query-Table
Parameters:
table_name: proc_sourcing_event
query: active=true^ORDERBYDESCsys_updated_on
fields: sys_id,number,short_description,state,type,category,assigned_to,start_date,end_date,estimated_value,currency,vendor_count,bid_count,award_status
limit: 25
To filter by event type (RFP, RFQ, RFI):
Tool: SN-Query-Table
Parameters:
table_name: proc_sourcing_event
query: type=rfp^active=true
fields: sys_id,number,short_description,state,category,start_date,end_date,estimated_value,vendor_count,bid_count
limit: 25
Using REST API:
GET /api/now/table/proc_sourcing_event?sysparm_query=active=true^ORDERBYDESCsys_updated_on&sysparm_fields=sys_id,number,short_description,state,type,category,assigned_to,start_date,end_date,estimated_value,currency,vendor_count,bid_count,award_status&sysparm_limit=25&sysparm_display_value=true
Step 2: Retrieve a Specific Sourcing Event
Get full details for a single sourcing event.
Using MCP:
Tool: SN-Get-Record
Parameters:
table_name: proc_sourcing_event
sys_id: [event_sys_id]
fields: sys_id,number,short_description,description,state,type,category,assigned_to,assignment_group,start_date,end_date,bid_deadline,estimated_value,currency,evaluation_criteria,scoring_method,vendor_count,bid_count,award_status,award_date,awarded_vendor,terms_and_conditions
Using REST API:
GET /api/now/table/proc_sourcing_event/[event_sys_id]?sysparm_fields=sys_id,number,short_description,description,state,type,category,assigned_to,start_date,end_date,bid_deadline,estimated_value,currency,evaluation_criteria,scoring_method,vendor_count,bid_count,award_status,award_date,awarded_vendor,terms_and_conditions&sysparm_display_value=true
Step 3: Retrieve Vendor Bids and Proposals
Query negotiations linked to the sourcing event to get vendor bids.
Using MCP:
Tool: SN-Query-Table
Parameters:
table_name: proc_negotiation
query: sourcing_event=[event_sys_id]^ORDERBYtotal_bid_amount
fields: sys_id,number,vendor,state,total_bid_amount,currency,round,submitted_date,compliance_status,technical_score,commercial_score,overall_score,notes,award_recommendation
limit: 50
Using REST API:
GET /api/now/table/proc_negotiation?sysparm_query=sourcing_event=[event_sys_id]^ORDERBYtotal_bid_amount&sysparm_fields=sys_id,number,vendor,state,total_bid_amount,currency,round,submitted_date,compliance_status,technical_score,commercial_score,overall_score,notes,award_recommendation&sysparm_limit=50&sysparm_display_value=true
Step 4: Retrieve Vendor Details and History
For each bidding vendor, get their company profile and past performance.
Using MCP:
Tool: SN-Query-Table
Parameters:
table_name: core_company
query: sys_id=[vendor_sys_id]
fields: sys_id,name,vendor_type,city,state,country,stock_symbol,vendor_rating,notes,contact
limit: 1
Check vendor's existing contracts:
Tool: SN-Query-Table
Parameters:
table_name: ast_contract
query: vendor=[vendor_sys_id]^state=active
fields: sys_id,number,short_description,starts,ends,cost,state,contract_type
limit: 10
Check vendor's PO history:
Tool: SN-Query-Table
Parameters:
table_name: proc_po
query: vendor=[vendor_sys_id]^ordered_date>=javascript:gs.beginningOfLast12Months()^state!=cancelled
fields: sys_id,number,total_cost,state,ordered_date
limit: 50
Using REST API:
# Vendor profile
GET /api/now/table/core_company/[vendor_sys_id]?sysparm_fields=sys_id,name,vendor_type,city,country,vendor_rating,contact&sysparm_display_value=true
# Active contracts with vendor
GET /api/now/table/ast_contract?sysparm_query=vendor=[vendor_sys_id]^state=active&sysparm_fields=sys_id,number,short_description,starts,ends,cost,contract_type&sysparm_limit=10&sysparm_display_value=true
# PO history
GET /api/now/table/proc_po?sysparm_query=vendor=[vendor_sys_id]^ordered_date>=javascript:gs.beginningOfLast12Months()^state!=cancelled&sysparm_fields=number,total_cost,state,ordered_date&sysparm_limit=50&sysparm_display_value=true
Step 5: Compare Bids Side-by-Side
Build a comparison matrix from the negotiation data:
=== BID COMPARISON MATRIX ===
Sourcing Event: SE0001234 - Enterprise Network Equipment RFP
Estimated Value: $500,000 | Bid Deadline: Mar 10, 2026
| Criteria (Weight) | Vendor A: Cisco | Vendor B: Juniper | Vendor C: Arista |
|------------------------|------------------|-------------------|------------------|
| Total Bid Amount | $485,000 | $462,000 | $448,500 |
| Technical Score (40%) | 92/100 | 88/100 | 85/100 |
| Commercial Score (30%) | 78/100 | 85/100 | 90/100 |
| Compliance | Full | Full | Partial* |
| Delivery Timeline | 6 weeks | 8 weeks | 5 weeks |
| Warranty | 3 years | 2 years | 3 years |
| Weighted Total | 86.4 | 86.1 | 86.5 |
| Recommendation | - | - | Conditional** |
*Arista: Missing ISO 27001 certification
**Conditional on compliance gap resolution
Step 6: Track Negotiation Rounds
Review negotiation history for ongoing events.
Using MCP:
Tool: SN-Query-Table
Parameters:
table_name: proc_negotiation
query: sourcing_event=[event_sys_id]^vendor=[vendor_sys_id]^ORDERBYround
fields: sys_id,round,total_bid_amount,submitted_date,state,notes,commercial_score,technical_score
limit: 10
Using REST API:
GET /api/now/table/proc_negotiation?sysparm_query=sourcing_event=[event_sys_id]^vendor=[vendor_sys_id]^ORDERBYround&sysparm_fields=sys_id,round,total_bid_amount,submitted_date,state,notes,commercial_score,technical_score&sysparm_limit=10&sysparm_display_value=true
Step 7: Build the Sourcing Summary
Assemble findings into a structured report:
=== SOURCING EVENT SUMMARY ===
Event: SE0001234 | Type: RFP
Title: [short_description]
State: [state] | Category: [category]
Owner: [assigned_to] | Start: [start_date] | Deadline: [end_date]
Estimated Value: [currency] [estimated_value]
PARTICIPATION:
Vendors Invited: [vendor_count]
Bids Received: [bid_count]
Response Rate: [pct]%
BID RANKING (by weighted score):
1. [Vendor C] - $448,500 - Score: 86.5 - CONDITIONAL
2. [Vendor A] - $485,000 - Score: 86.4 - COMPLIANT
3. [Vendor B] - $462,000 - Score: 86.1 - COMPLIANT
NEGOTIATION STATUS:
[Vendor A]: Round 3 complete - final offer received
[Vendor B]: Round 2 - counteroffer pending
[Vendor C]: Round 3 complete - compliance remediation in progress
AWARD RECOMMENDATION:
Recommended Vendor: [vendor_name]
Rationale: [scoring rationale, compliance, delivery, total cost of ownership]
Savings vs Estimate: $[amount] ([pct]%)
NEXT STEPS:
- [pending actions]
- [approval requirements]
- [timeline to award]
Tool Usage
MCP Tools Reference
| Tool | When to Use |
|---|---|
SN-Query-Table | Query sourcing events, negotiations, vendors, and contracts |
SN-Natural-Language-Search | Natural language search (e.g., "find open RFPs for networking equipment") |
SN-Get-Record | Retrieve full details of a single sourcing event |
REST API Reference
| Endpoint | Method | Purpose |
|---|---|---|
/api/now/table/proc_sourcing_event | GET | Query sourcing events |
/api/now/table/proc_negotiation | GET | Retrieve vendor bids and negotiation rounds |
/api/now/table/core_company | GET | Vendor profiles and ratings |
/api/now/table/ast_contract | GET | Existing vendor contracts |
/api/now/table/proc_po | GET | Historical PO data for vendor assessment |
/api/now/table/sys_journal_field | GET | Sourcing event notes and communications |
Best Practices
- Weight Criteria Transparently: Document evaluation weights before reviewing bids to avoid bias
- Include Total Cost of Ownership: Look beyond bid price to include warranty, maintenance, training, and implementation costs
- Verify Compliance Early: Flag compliance gaps in the first round to give vendors time to remediate
- Track All Rounds: Record every negotiation round to maintain an audit trail
- Benchmark Against Market: Compare bids to historical spend and market rates for the category
- Involve Stakeholders: Include technical evaluators, legal, and finance in scoring for comprehensive assessment
- Document Rationale: Always record the reasoning behind award recommendations for audit purposes
Troubleshooting
"Sourcing event has no negotiations"
Cause: Bids may not have been submitted yet, or they are stored in a custom table
Solution: Verify the bid deadline has passed; check if your instance uses a custom bid table extending proc_negotiation
"Vendor scores are all zero"
Cause: Scoring has not been completed or is managed outside ServiceNow Solution: Check if evaluation is done via a separate scoring module or external spreadsheet; scores may need manual entry
"Cannot find vendor in core_company"
Cause: The vendor may not be registered in ServiceNow yet
Solution: Search core_company by name with nameLIKE[vendor_name]; the vendor may need to be created before bid submission
"Historical PO data incomplete"
Cause: The vendor may have been used under a different company record or acquired
Solution: Check for alternate company names or parent/subsidiary relationships in core_company
Examples
Example 1: Active Sourcing Pipeline Summary
Scenario: Sourcing director needs an overview of all active sourcing events.
Tool: SN-Query-Table
Parameters:
table_name: proc_sourcing_event
query: active=true^ORDERBYend_date
fields: number,short_description,type,state,estimated_value,bid_count,end_date,assigned_to
limit: 20
Output:
SOURCING PIPELINE - Mar 19, 2026
ACTIVE EVENTS: 8 total ($3.2M estimated value)
EVALUATION PHASE (3):
SE0001234 - Enterprise Network Equipment (RFP) - $500K - 3 bids - Due: Mar 25
SE0001240 - Cloud Hosting Services (RFP) - $1.2M - 5 bids - Due: Mar 28
SE0001245 - Office Furniture Refresh (RFQ) - $85K - 4 bids - Due: Mar 22
BIDDING OPEN (3):
SE0001250 - Security Consulting (RFP) - $400K - 2 bids so far - Closes: Apr 5
SE0001252 - Print Services (RFQ) - $120K - 0 bids - Closes: Apr 10
SE0001255 - Catering Services (RFQ) - $95K - 3 bids so far - Closes: Apr 2
AWARD PENDING (2):
SE0001220 - Data Center Hardware (RFP) - $800K - Recommended: Dell
SE0001228 - Janitorial Services (RFQ) - $45K - Recommended: CleanCo
ATTENTION: SE0001252 has zero bids with 3 weeks to deadline - consider expanding vendor list.
Example 2: Bid Comparison for Award Decision
Scenario: Evaluate bids for SE0001234 (Enterprise Network Equipment).
Tool: SN-Query-Table
Parameters:
table_name: proc_negotiation
query: sourcing_event.number=SE0001234^round=3
fields: vendor,total_bid_amount,technical_score,commercial_score,overall_score,compliance_status,state
limit: 10
Output:
SE0001234 - AWARD RECOMMENDATION
BID COMPARISON (Final Round):
| Vendor | Bid Amount | Tech (40%) | Comm (30%) | Delivery (20%) | Risk (10%) | Total |
|-----------|-----------|------------|------------|----------------|------------|-------|
| Cisco | $485,000 | 92 | 78 | 80 | 90 | 85.4 |
| Arista | $448,500 | 85 | 90 | 92 | 75 | 86.5 |
| Juniper | $462,000 | 88 | 85 | 78 | 85 | 84.9 |
RECOMMENDATION: Arista Networks
- Lowest price ($448,500 - 10.3% below estimate)
- Highest weighted score (86.5)
- Fastest delivery (5 weeks)
- NOTE: Requires ISO 27001 certification by Q2 (mitigation plan submitted)
SAVINGS: $51,500 vs estimate | $36,500 vs next lowest bid
Example 3: Negotiation History Tracking
Scenario: Track negotiation progress with a specific vendor.
Tool: SN-Query-Table
Parameters:
table_name: proc_negotiation
query: sourcing_event.number=SE0001234^vendor.name=Cisco Systems^ORDERBYround
fields: round,total_bid_amount,submitted_date,state,notes
limit: 5
Output:
NEGOTIATION HISTORY - SE0001234 / Cisco Systems
Round 1 (Feb 15): $520,000 - Initial proposal
Notes: Standard pricing, 3-year warranty, 8-week delivery
Round 2 (Mar 1): $498,000 - Revised after feedback
Notes: 4.2% reduction, improved delivery to 7 weeks
Round 3 (Mar 12): $485,000 - Final offer
Notes: 6.7% total reduction, added training package, 6-week delivery
TOTAL SAVINGS THROUGH NEGOTIATION: $35,000 (6.7%)
Related Skills
procurement/supplier-recommendation- Vendor scoring and recommendation engineprocurement/purchase-order-summarization- Track POs resulting from sourcing awardsprocurement/procurement-summarization- Overall procurement pipeline overviewprocurement/invoice-management- Invoice processing for sourced contracts