Available MCP Tools¶
PrimeRFP Scout exposes 48 tools over MCP, organized into twelve categories. Your AI client calls these automatically based on your natural-language questions — you don’t need to call them by name.
Classification: NAICS vs PSC¶
Federal procurement uses two classification systems that answer different questions:
- NAICS (North American Industry Classification System) classifies the seller’s industry. Useful for firm identification, size-standard lookups, and set-aside context.
- PSC (Product/Service Code) classifies what was purchased. Authoritative for market sizing, spend analysis, and category management.
These have a many-to-many relationship: a single NAICS code can host 800+ PSCs, and a single PSC can appear under 200+ NAICS codes. Results from NAICS and PSC filters will differ because they measure different dimensions.
Most tools accept both naics_code and psc_code. When both are provided, both filters apply (AND logic). The get_award_summary tool also accepts a category parameter that maps plain-language market names (e.g., "natural resources", "IT", "construction") to the corresponding PSC codes automatically.
!!! tip "For market sizing, prefer PSC or `category` over NAICS"
OMB Category Management taxonomy is built on PSC. Using NAICS alone for market sizing understates the market — for example, the construction market shows ~$48B via NAICS 236-238 but ~$142B via PSC-based Facilities & Construction classification.
Corporate family enrichment (reports & briefs)¶
Scout automatically enriches top incumbent / awardee rows in intelligence tools with deduplicated corporate-family obligation totals from USASpending — the same logic as get_company_profile, without a separate tool call.
When a row includes a SAM UEI, Scout may attach:
| Field | Description |
|---|---|
family_rollup |
Compact object: family_total_obligated, member_count, ultimate_parent_name, rollup_method, etc. |
family_subtitle |
Human-readable one-liner for chat, cards, and hosted reports (e.g. "APTIVE family: $133.1M obligated across 2 entities (36mo)") |
incumbent_family_profiles |
Top-level array on the payload — one entry per enriched UEI (max 5 per report) |
Scoped vs family dollars: In-scope totals (agency/NAICS filter) can differ from federal family totals. Subtitles call out both when they diverge — e.g. entity in scope $10M vs family $133M.
Where it appears
- Chat narratives — agency briefing, capture intelligence, award summary, contract landscape composers
- Composite intelligence briefs — pre-synthesis enrichment + row subtitles in hosted HTML
- Single-tool hosted reports — contractor/incumbent tables show
family_subtitleunder the name; a Corporate Family Rollups panel lists enriched profiles when present
Rollup semantics: Parent P-level and child C-level UEIs are never summed together (avoids ~2× inflation). See Company Profile for full definitions.
Tool overview¶
Classification¶
Route a natural-language market question to the correct federal taxonomy basis (PSC vs NAICS) before sizing or searching.
| Tool | What it does | Min tier |
|---|---|---|
Classify Opportunity (classify_opportunity) |
Classify a market or opportunity question — returns recommended PSC/NAICS basis and routing hints | MCP Trial+ |
Intelligence & Compound Tools¶
These combine multiple data sources in a single call for capture strategy, competitive analysis, and executive briefings.
| Tool | What it does | Min tier |
|---|---|---|
| Agency Briefing | Compound: Executive intelligence briefing — budget + awards + protests + recompete pipeline in one call | Tactics+ |
Daily Brief (get_daily_brief) |
Curated daily intelligence digest across opportunities, awards, and policy signals | Tactics+ |
| Capture Intelligence | Compound: Full capture-ready package with GO / EXPLORE / NO-GO recommendation — budget backing, competitive landscape, protest risk, pipeline timing | Tactics+ |
| Contract Landscape | Compound: One-shot competitive intelligence brief — full contract list + market summary + auto-generated intelligence notes. Multi-NAICS, min value, PoP expiring window, vehicle exclusions, min bidders | Tactics+ |
Prepare Market Landscape Report (prepare_market_landscape_report) |
Hosted market landscape HTML for a scoped agency/NAICS/PSC brief | Tactics+ |
| Pipeline Forecasts | Pre-solicitation agency acquisition forecasts (DHS APFS, DOT, DOJ, GSA FCO, etc.) — planning data before SAM | Tactics+ |
| Policy Intel | Congressional hearing testimony signals — NDAA, appropriations, procurement policy chunks | Tactics+ |
| Policy Topic Landscape | Cross-agency topic thread aggregation by agency with narrative + chart | Tactics+ |
| Capture Intelligence Bundle | Compound: Policy intel + pipeline forecasts (+ optional recompetes) with cross-links in one call | Tactics+ |
Opportunities¶
Search, detail, and track active federal solicitations.
| Tool | What it does | Min tier |
|---|---|---|
| Search Opportunities | Semantic search across active federal & SLED opportunities | MCP Trial+ |
| Get Opportunity Detail | Full detail for a single opportunity by UID | MCP Trial+ |
| Opportunity Summary | Counts & breakdowns of open solicitations by agency, set-aside, state, notice type, work type — with daily chart data | Tactics+ |
| Opportunity Changes | Change & amendment history: deadline pushes, status changes, field diffs — always date-windowed | Tactics+ |
Awards & Contracts¶
Historical contract awards, vehicles, subawards, and recompete pipeline from USASpending.
| Tool | What it does | Min tier |
|---|---|---|
| Company Profile | UEI-keyed contractor profile — identity, prime obligations, agency/NAICS/PSC breakouts, fiscal-year trajectory, incumbent recompetes, capability/teaming, and optional family rollup | Tactics+ |
| Entity Brief | Deterministic company brief — recompete cliff, GAO sustain rate, subawards, concentration, NAICS rank — framed as compete, claim, or diligence. Facts are identical across lenses | Tactics+ |
| Company Hierarchy Profile | Corporate family tree — ultimate parent, per-member obligation totals, and prime/sub teaming graph | Tactics+ |
| Award History | Historical contract awards with offers, solicitation IDs, and last modified — by agency, NAICS, PSC, and/or awardee | Tactics+ |
| Award Summary | Aggregated market stats: totals, top awardees/PSCs, year-over-year, offers competitiveness — filterable by NAICS, PSC, or OMB category | Tactics+ |
| Recompete Intelligence | Upcoming federal recompete pipeline — incumbents, agencies, PoP timing (optional include_historical) |
Tactics+ |
| SLED Recompete Intelligence | State/local/cooperative award contracts nearing expiration (NASPO, Sourcewell, state open data); enhanced_classification + GIS/Esri tags; also in search_opportunities when source_type=sled\|all |
Tactics+ |
Summarize Contract Watchlist (summarize_contract_watchlist) |
Roll up a saved contract watchlist — expirations, obligations, and incumbent context | Tactics+ |
Generate Recompete Priority List (generate_recompete_priority_list) |
Ranked federal recompete opportunities for a scoped agency/market | Tactics+ |
Generate OASIS Expiring Landscape (generate_oasis_expiring_landscape) |
OASIS-family task orders and holders nearing period-of-performance end | Tactics+ |
| Recompete Data Semantics | Why Scout vs HigherGov / other tools differ on dates & dollars (Markdown reference guide) | Tactics+ |
| Contract Vehicle Intelligence | GWAC/IDIQ vehicle analytics: task orders, top awardees, agencies, NAICS, and PSC breakdowns. Supports sector queries ("Fed Health", "DoD IT") | Tactics+ |
| Subaward Lookup | Subawards reported under a prime contract (PIID) or matched to a subrecipient (UEI or name) | Tactics+ |
| PIID Lookup | Single PIID: prime contract context, subaward totals, and optional subcontractor line items | Tactics+ |
Budget & Fiscal¶
Congressional Budget Justification data — funding direction, priority areas, and procurement signals.
| Tool | What it does | Min tier |
|---|---|---|
| Budget Intelligence | Greenbook line items — funding direction, priority areas, procurement signals by agency | Tactics+ |
| Budget Summary | Aggregated budget trends — total request vs enacted, top increasing/decreasing accounts | Tactics+ |
Protests¶
GAO bid protest decisions — outcomes, sustain rates, and trend analysis.
| Tool | What it does | Min tier |
|---|---|---|
| Protest History | Published GAO bid protest decisions: parties, outcomes, narrative excerpts, themes, link to GAO | Tactics+ |
| Protest Summary | Rollups over published decisions: sustain / deny / dismiss counts and merit sustain rate | Tactics+ |
| Protest Analytics | Protest trend analysis: year-over-year volume, sustain rate changes, top-protested agencies | Tactics+ |
Product-Firm Lens (software vendor GTM)¶
Product acquisition and channel intelligence for OEMs, resellers, and software vendors.
| Tool | What it does | Min tier |
|---|---|---|
get_product_demand_fingerprint |
Agency-level demand for a named product — obligated $, top agencies, channel holders | Tactics+ |
get_company_tech_signals |
DNS/MX and optional job-posting stack signals for a domain | Tactics+ |
score_prospect |
Demand-fit + displacement scoring with evidence trail | Tactics+ |
get_channel_for_product |
GSA Schedule resellers carrying an OEM/product | Tactics+ |
Teaming¶
| Tool | What it does | Min tier |
|---|---|---|
| Teaming Match | Find small-business teaming partners by capability, set-aside, and past performance | Premier |
Reports & Delivery¶
Hosted reports, scheduling, email delivery, and search-quality feedback.
| Tool | What it does | Min tier |
|---|---|---|
| Generate Discovery Report | AI-curated opportunity scan across your target market | Tactics+ |
| Schedule Discovery Report | Save a recurring discovery report schedule | Tactics+ |
| Send Report Email | Email a report: branded teaser in the message + full HTML attached for browser viewing | Tactics+ |
| Push CRM Feed | List this user’s live HubSpot/Salesforce/Dynamics/Slack/Discord/CSV/webhook connections, then dry-run or Push an existing feed | Strategic+ |
| Report Search Issue | Flag a search quality issue for the Scout team to investigate | Tactics+ |
eBuy Notifications¶
GSA eBuy RFQ alert subscriptions.
| Tool | What it does | Min tier |
|---|---|---|
Setup eBuy Notifications (setup_ebuy_notifications) |
Create or update eBuy alert rules for your account | Tactics+ |
eBuy Notifications (ebuy_notifications) |
List active eBuy notification subscriptions and recent matches | Tactics+ |
Account¶
| Tool | What it does | Min tier |
|---|---|---|
| Get My Tier | Returns your current plan, tool list, MCP report-email quota, and live vs coming-soon integrations | MCP Trial+ |
| Get My Metrics | Per-tool call counts and monthly usage for this API key | MCP Trial+ |
| Scout vs | Scout’s competitive positioning vs. any named platform | MCP Trial+ |
Web-only Free accounts cannot call MCP (authentication returns an upgrade message). MCP Trial and MCP Explorer use the same tool list; daily search limits and look-back differ — see Tiers & Limits.
Geography filters (open opportunities)¶
search_opportunities and get_opportunity_summary share the same geography and market-segment filters. Resolution uses publisher location and place of performance — not substring matching on titles.
region — one of these canonical US macro-regions (expands to a fixed state list):
midwest · northeast · new_england · mid_atlantic · south · southeast · southwest · west · mountain · pacific · conus
Aliases such as mid-west or Midwest normalize to midwest. Prefer region= when the user names a macro region; do not pass wing, base, or agency names as geography.
location — free-text shorthand parsed into the same rules:
- Region name (e.g.
midwest) - 2-letter state (
MO) or full state (Missouri) - City + state (
Kansas City, MO) - County + state (
Jackson County, MO) — county requires a state
state, county, city — explicit fields; when state is set it overrides a multi-state region expansion.
source_type — "all" (default) · "federal" · "sled" · "non-federal". Filters market segment (source_category: federal SAM.gov vs state/local/education vs other non-federal), not publisher country. Use "federal" only when the user asks for federal-only / SAM.gov opportunities.
Tips for AI clients
- Prefer explicit
state=orregion=over vaguelocation=when the user names a state or macro region. - Combine geo with
query=when possible — geo-only browse (emptyquery) works but keyword + geo is more precise. search_opportunitiesandget_opportunity_summaryuse the same geo resolution andposted_within_dayssemantics.
Notice-type filters (procurement stage)¶
The active catalog includes award notices, presolicitations, sources sought, and other notice types — not only open RFPs. Use these filters when the user wants solicitations vs post-award notices.
Buckets (stable, case-insensitive): RFP · RFQ · IDIQ · RFI · Sources Sought · Presolicitation · Solicitation · Award · Other · Unknown
| Parameter | Applies to | Description |
|---|---|---|
notice_types |
search_opportunities, get_opportunity_summary |
Comma-separated include list — only rows matching these buckets |
exclude_notice_types |
both | Comma-separated exclude list — e.g. Award to drop award notices |
Common patterns
- Open solicitations only →
exclude_notice_types=Award - RFP/RFQ hunting →
notice_types=RFP,RFQ,Solicitation,Presolicitation - Market scan (include everything) → omit both params
Notice type vs work type
notice_types classifies the procurement notice (RFP, Award, etc.) from title/description heuristics. by_work_type on summaries reflects AI industry/work classification (IT Services, Construction, …) — a different dimension. Do not use by_work_type to filter out award notices.
Search responses also include notice_type_counts, notice_type_summary, and per-row notice_type_bucket on each result.
Search Opportunities¶
Search active federal, SLED, and non-federal contracting opportunities using natural language or structured filters.
Search caps (UTC calendar day): MCP Trial — up to 10 successful calls/day; MCP Explorer — 50/day; Tactics+ — no daily search cap (monthly MCP budgets still apply on paid tiers). See get_account_info → search_quota.
Parameters
| Parameter | Type | Description |
|---|---|---|
query |
string | Keyword search on title + description. Leave empty when using solicitation_number. |
solicitation_number |
string | Exact solicitation / contract / order / RFP number lookup |
naics_code |
string | Filter by NAICS prefix (e.g. "541511"). Classifies the seller's industry. |
psc_code |
string | Filter by PSC prefix (e.g. "D3", "R425"). Classifies what was purchased. |
agency |
string | Filter by agency name substring |
set_aside |
string | e.g. "8(a)", "SDVOSB", "WOSB" |
source_type |
string | "all" (default) · "federal" · "sled" · "non-federal" — see Geography filters |
posted_within_days |
integer | Only opportunities posted within N days (default: 90) |
region |
string | US macro-region — finite list in Geography filters |
location |
string | Region, state, "City, ST", or "County, ST" (parsed into structured geo) |
state |
string | 2-letter or full US state (overrides multi-state region) |
county |
string | County name (use with state or location that includes state) |
city |
string | City name (use with state or location that includes state) |
include_sled |
boolean | Legacy flag; prefer source_type ("sled" or "all") |
personalize |
boolean | Rank using profile (paid tiers); set false for unbiased discovery |
notice_types |
string | Comma-separated include list: RFP, RFQ, IDIQ, RFI, Sources Sought, Presolicitation, Solicitation, Award, Other, Unknown |
exclude_notice_types |
string | Comma-separated exclude list — use Award to drop award notices from open-opportunity searches |
When source_type is "sled" or "all", the response also includes a sled_recompetes block: incumbent award contracts nearing expiration (NASPO, Sourcewell, state open data). These are recompete-pipeline rows — not open solicitations in results. Each row has record_type: "sled_recompete" and enhanced_classification (when classified) for discovery matching, plus ingest tags is_gis / is_esri.
Example prompt
Example response (abbreviated)
{
"results": [
{
"uid": "opp_abc123",
"title": "Cloud Infrastructure Modernization – DHA",
"agency": "Defense Health Agency",
"naics_code": "541512",
"psc_code": "D302",
"set_aside": "8(a)",
"posted_date": "2026-03-12",
"response_deadline": "2026-04-01",
"estimated_value": 4500000
}
],
"total": 1,
"sled_recompetes_included": true,
"sled_recompetes": {
"source": "sled_recompetes",
"record_kind": "sled_recompete_award",
"total_returned": 1,
"recompetes": [
{
"record_type": "sled_recompete",
"title": "Cloud Solutions — ESRI",
"incumbent": "Environmental Systems Research Institute",
"expiry_date": "2026-09-15",
"jurisdiction": "NASPO ValuePoint (UT)",
"is_esri": true,
"enhanced_classification": {
"primary_industry": "Information Technology",
"work_type": "Software Licensing"
}
}
]
}
}
Get Opportunity Detail¶
Retrieve the full record for a single opportunity, including description, attachments list, point of contact, and classification tags.
Parameters
| Parameter | Type | Description |
|---|---|---|
uid |
string (required) | Opportunity UID from a search result |
Example prompt
Award History¶
Analyze historical contract awards to understand the competitive landscape in an agency, NAICS area, or PSC category.
Requires Tactics plan or higher
Email delivery
This one-off MCP tool returns the report to your client and does not email your user by default.
Email delivery is controlled by schedule_discovery_report via send_email.
Parameters
| Parameter | Type | Description |
|---|---|---|
agency |
string | Filter by agency name |
naics_code |
string | Filter by NAICS prefix (seller's industry) |
psc_code |
string | Filter by PSC prefix (what was purchased), e.g. "R425", "D3" |
vendor |
string | Filter by awardee company name |
limit |
integer | Max awards to return (default: 20) |
months |
integer | Look-back window in months (default: 24, max varies by tier) |
set_aside_type |
string | Optional. Filter by socioeconomic set-aside category (e.g. "SDVOSB", "8(a)") using official award metadata — not a free-text description search. |
set_aside_type_code |
string | Optional. Comma-separated exact federal set-aside codes when you already know them (e.g. "SDVOSBC,SDVOSBS"). |
Each award row includes type_set_aside when that field is present on the record.
Example prompt
Protest History¶
Search published U.S. Government Accountability Office (GAO) bid protest decisions in Scout: who protested, which agency and solicitation were involved, how the case was resolved, and (when you ask for it) a short excerpt from the decision text. Each row includes a link to the official decision on GAO.gov when available.
Not GAO’s live docket
Scout merges ingested decision rows with corpus-backed docket lines from your crawl (rows may lack a decision_date until a decision is published and ingested). That is not a real-time mirror of GAO’s open/pending docket. For authoritative status, use GAO’s bid protest search (or the docket view for a known case).
Coverage grows over time and may not include every GAO matter. Pair with get_award_history and find_recompete_contracts for capture and risk context (for example, recent outcomes at a given agency or NAICS).
Requires Tactics plan or higher
MCP Trial and Explorer tiers may see a short preview (fewer rows) for this tool, similar to other intelligence tools.
Parameters
| Parameter | Type | Description |
|---|---|---|
agency |
string | Substring match on the agency name stored on each row (GAO-style names, e.g. “Department of the Navy”). Use DoD or Department of Defense to match common DoD components (military departments, Marine Corps, Space Force, DLA, DHA, and similar defense agency strings)—not a live sync with GAO’s docket. |
awardee |
string | Substring match on successful offeror / awardee when present |
protester |
string | Substring match on protester name |
naics_code |
string | NAICS prefix filter (digits only), when the record includes NAICS |
since_date |
string | Inclusive lower bound on decision date for dated rows; rows without a decision date (docket-only in corpus) still match other filters |
until_date |
string | Inclusive upper bound on decision date for dated rows; undated corpus rows are not removed by this alone |
narrative_contains |
string | Case-insensitive substring match on decision narrative text (only applies when that text is available for the row) |
include_narrative |
boolean | If true, responses may include a capped plain-text preview of the decision narrative |
narrative_max_chars |
integer | Optional upper bound for that preview length |
limit |
integer | Max rows (default 25, max 100) |
What you get back
decision_url— URL to the official GAO decision (or related GAO page) when available.decision_summary— compact structured fields (issues, rationale themes, tags, etc.) when Scout has generated them for that case; otherwise omitted.outcome/outcome_normalized— disposition text and a simplified category where available.matched_in_memory— how many rows matched your filters before thelimitcap (helps interpret “I only see 25 rows”).total_rows_loaded— rows in RAM for this workspace (decision ingest + corpus-only docket lines when enabled; not “all GAO history”).data_note— short reminder of scope (published decisions, agency matching, optional narrative).
Example prompts
List recent GAO protests against the Department of the Navy where the protester name contains "Systems".
Use narrative_contains for keyword-style filtering on narrative excerpts.
Protest Summary¶
Summarize GAO bid protest outcomes over the same published-decision scope as list_protest_decisions: counts of sustain, deny, dismiss, and other, plus merit sustain rate (sustains ÷ (sustains + denies)) for a quick read on how often protests succeed on the merits under your filters. Open/pending matters are out of scope — see the warning under list_protest_decisions.
Parameters match list_protest_decisions except there is no limit — the tool returns statistics for everything that matches your filters within Scout’s available decision set. Responses may include total_rows_loaded and data_note like list_protest_decisions.
Requires Tactics plan or higher
Example prompt
What's the merit sustain rate for GAO protests involving the Department of Veterans Affairs in the last two years?
Budget Intelligence¶
Query Congressional Budget Justification (Greenbook) data from 24 CFO Act agencies including Department of Defense. Shows where agencies are increasing or cutting funding — use to validate budget backing for opportunities, forecast where new solicitations will emerge, and prioritize pursuits aligned with funded agency priorities.
Data is extracted from agency CJ PDFs via pdfplumber and enriched with vLLM-generated summaries including funding direction, priority areas, procurement signals, and inferred NAICS indicators.
Requires Tactics plan or higher
Parameters
| Parameter | Type | Description |
|---|---|---|
agency |
string | Agency name or abbreviation (e.g. "CISA", "DHS", "Department of Energy") |
fiscal_year |
integer | Budget fiscal year (e.g. 2026); omit for most recent |
keyword |
string | Search across appropriation accounts, programs, and justification text |
direction |
string | Filter by funding direction: "increase", "decrease", or "flat" |
min_change_pct |
float | Minimum year-over-year change percentage (e.g. 10.0 for 10%+ increases) |
limit |
integer | Max line items (default: 25, max: 50) |
Example prompts
Response includes budget line items with appropriation_account, yoy_change_pct, budget_year_request_k, current_year_enacted_k, and vLLM-extracted priority_areas, procurement_signals, and naics_indicators when available.
Budget Summary¶
Aggregated budget trends for an agency across all appropriation accounts — total request vs enacted, net change, count of increasing/decreasing accounts, and the top 5 accounts with largest increases and decreases.
Requires Tactics plan or higher
Parameters
| Parameter | Type | Description |
|---|---|---|
agency |
string | Agency name or abbreviation |
fiscal_year |
integer | Budget fiscal year; omit for most recent |
Example prompt
Agency Briefing¶
Compound intelligence tool — executive briefing for a federal agency combining 5 data streams in one call:
- Budget priorities — Congressional Budget Justification funding direction and key initiatives
- Budget trends — aggregate request vs enacted, increasing/decreasing accounts
- Contracting landscape — top contractors, total spend, award patterns
- Protest risk — GAO sustain/deny rates and protest volume
- Recompete pipeline — expiring contracts coming up for re-bid
Use before customer meetings, gate reviews, or capture strategy sessions. Includes branded visual card (Claude) or interactive widget (ChatGPT) and drill-down actions to each constituent tool.
Requires Tactics plan or higher
Parameters
| Parameter | Type | Description |
|---|---|---|
agency |
string (required) | Agency name or abbreviation (e.g. "CISA", "DHS") |
fiscal_year |
integer | Budget fiscal year (default: current year) |
Example prompts
Response sections: budget_overview (request, enacted, change, priority areas, procurement signals), contracting_landscape (top contractors with optional recipient_uei, family_rollup, family_subtitle), protest_risk (sustain rate, counts), recompete_pipeline (upcoming count, nearest expiring contracts), incumbent_family_profiles (when top contractors have UEIs).
Drill-down actions: Budget detail, Award history, Protest cases, Recompete pipeline, Open solicitations — all pre-filled with the agency.
Capture Intelligence¶
Compound intelligence tool — full capture-ready package for a specific opportunity space with a computed GO / EXPLORE / NO-GO recommendation. Orchestrates 5 data streams in parallel:
- Open opportunities — active solicitations matching this space
- Budget backing — is the program funded? Is funding increasing?
- Competitive landscape — who's winning, market concentration, incumbent strength
- Protest risk — GAO protest rates at this agency
- Recompete timing — when do incumbent contracts expire?
The go_no_go section scores 5 factors and returns a recommendation:
- GO (4-5 factors positive): Pursue aggressively
- EXPLORE (2-3 factors positive): Investigate further, shape opportunity
- NO-GO (0-1 factors positive): Redirect BD resources
Includes branded visual card with GO/EXPLORE/NO-GO verdict banner, factor checkmarks, and competitive intelligence summary.
Requires Tactics plan or higher
Parameters
| Parameter | Type | Description |
|---|---|---|
agency |
string (required) | Agency name or abbreviation |
keyword |
string (required) | Program area or capability (e.g. "cybersecurity", "cloud migration") |
naics_code |
string | Optional NAICS filter (seller's industry, e.g. "541512") |
psc_code |
string | Optional PSC filter (what was purchased, e.g. "D3", "R425") |
Example prompts
Give me a capture assessment for cloud migration services at the Department of Energy, NAICS 541512.
Response sections: open_opportunities (count + top matches), budget_backing (direction + matching accounts), competitive_landscape (top competitors with optional family_rollup / family_subtitle, incumbent concentration %), protest_risk (level + sustain rate), recompete_pipeline (upcoming contracts), go_no_go (5-factor score + recommendation), incumbent_family_profiles.
Drill-down actions: All matching opportunities, Analyze incumbent (pre-filled with top competitor), Protest cases, Agency briefing, Find teaming partners (Premier).
Contract Landscape¶
Compound intelligence tool — one-shot competitive intelligence brief that returns a complete contract landscape for an agency with market summary, competitiveness metrics, and auto-generated intelligence notes. Orchestrates award history + award summary queries in parallel and produces intelligence observations automatically.
Designed for deterministic, reproducible results with structured parameters. Supports multi-NAICS codes, minimum value thresholds, PoP expiring windows (FY/CY), vehicle exclusions, and minimum bidder counts.
Requires Tactics plan or higher
Parameters
| Parameter | Type | Description |
|---|---|---|
agency |
string (required) | Agency name or abbreviation (e.g. "USCIS", "FEMA", "DOE"). Searches awarding agency, funding agency, office name, and sub-tier agency with abbreviation expansion. |
naics_codes |
string | Comma-separated NAICS codes (e.g. "541512,541411,518210"). Each matches on 4-digit prefix. |
min_value |
number | Minimum contract value in dollars (default: 2000000) |
modified_within_months |
integer | Only contracts modified within N months (default: 15). Isolates recently active contracts. |
exclude_vehicles |
string | Comma-separated vehicle names to exclude (e.g. "SEWP,CIO-CS,FirstSource"). Filters on parent award ID. |
pop_end_after |
string | Only contracts with PoP ending on/after this date (YYYY-MM-DD). Use with pop_end_before for FY/CY windows. |
pop_end_before |
string | Only contracts with PoP ending on/before this date (YYYY-MM-DD). |
min_offers |
integer | Minimum number of offers received (e.g. 1 to exclude contracts with no offers data). |
limit |
integer | Max contracts to return (default: 50, max: 100) |
set_aside_type |
string | Filter by socioeconomic set-aside (e.g. "SDVOSB", "8(a)") |
Example prompts
Show me USCIS IT contracts over $2M expiring in CY2027 with at least 1 bidder. Exclude SEWP and CIO-CS vehicles.
Response sections: contracts (individual awards with PIID, value, offers, solicitation ID, incumbent, recipient_uei, last modified), market_summary (total contracts, obligated value, ceiling, offers_summary with avg/median/sole-source%, top_incumbents with optional family_rollup, by-year breakdown), intelligence_notes (auto-generated: sole-source rate, dominant incumbents, corporate family scale, high-competition outliers, large sole-source alerts), incumbent_family_profiles.
Recompete Intelligence¶
See federal contracts approaching recompete — incumbents, agencies, NAICS, and timing based on period-of-performance windows. By default Scout emphasizes upcoming expirations. Set include_historical to true when the user also wants recently ended contracts in the same time window.
Requires Tactics plan or higher
Lower tiers may receive a short preview (fewer rows); higher tiers return more results up to your plan’s limit.
Parameters
| Parameter | Type | Description |
|---|---|---|
query |
string | Optional keywords (description, agency, recipient, etc.) |
naics_code |
string | NAICS code or prefix (seller's industry, e.g. "541512") |
psc_code |
string | PSC code or prefix (what was purchased, e.g. "D3", "Y1") |
agency |
string | Awarding agency substring (e.g. "Department of Defense") |
within_months |
integer | Time window in months from today (default: 24, max: 60), applied around expected end of performance. |
include_historical |
boolean | Default false — upcoming recompetes only. If true, also includes contracts whose performance period recently ended within the same window. |
min_value |
number | Minimum estimated contract value in raw dollars (e.g. 100000000 for $100M). Filter is applied before the candidate-pool prune, so big-ticket rows aren't dropped in dense windows. |
max_value |
number | Maximum estimated contract value in raw dollars. |
sort_by |
string | Sort order for returned detail rows: "value" (largest dollars first), "expiry" (soonest PoP-end first), or omit for the default relevance score. |
limit |
integer | Max detail rows to return (default: your plan's max_results; honour 1–N, not floored at 50). Preview tiers stay capped at 3. |
set_aside / set_aside_type |
string | Filter by socioeconomic set-aside (SBA, 8(a), SDVOSB, WOSB, HUBZone, VOSB) or an exact FPDS code Scout emits (WOSBSS, EDWOSBSS, SBP, ISBEE, IEE, BI). Unrecognized labels fail closed. Rows include type_set_aside. |
naics_source |
string | Optional. order keeps rows whose NAICS is on the award itself; inherited keeps task orders that inherited NAICS from a parent IDV. Omit for both. |
The response also includes a pipeline_by_value_band histogram (counts and totals in <$1M / $1M–$10M / $10M–$100M / ≥$100M buckets) computed over the full matched set — so the model can answer "how many ≥ $100M" without enumerating the capped detail rows. Every row uses one value definition: estimated_value = order_obligated = max(net federal_action_obligation, 0). Signed net is net_obligated; deobligated is true when net is negative. Negative rows do not reduce pipeline_total_value. parent_ceiling is informational when a parent IDV exists. filters_applied.value_basis is order_obligated. naics_source on each row is inherited when the row has a parent IDV (NAICS often comes from the vehicle) and order otherwise.
Example prompt
What NAICS 541611 contracts at DoD are expiring in the next 6 months where the incumbent
is not a small business?
For past / expired recompetes explicitly requested by the user, set include_historical=true.
SLED Recompete Intelligence (find_sled_recompetes)¶
State/local/education award contracts nearing expiration — cooperative vehicles (NASPO ValuePoint, Carahsoft, Sourcewell, OMNIA), and state open-data feeds. Complements federal find_recompete_contracts (USASpending).
Rows include enhanced_classification (same taxonomy as opportunities: primary_industry, work_type, custom_tags) when the batch classifier has run, plus durable ingest tags is_gis / is_esri. GIS/Esri queries auto-filter to classified rows.
Also returned automatically in search_opportunities when source_type is "sled" or "all" under the sled_recompetes response key.
Keyword queries never pad. If query= has distinctive terms (not just data / platform / software), Scout returns scored matches only. Thin or zero hits stay empty — coverage (queried_state_active_rows) is the honest claim, not an unfiltered Texas DIR / NASPO sample. GIS/Esri/construction facets still apply when the query names those domains.
Open-data coverage (registry-driven Socrata feeds): Texas DIR (state), Chicago active contracts + DoIT MCA, San Francisco, Austin, NYC DYCD, NY MTA — add more via sled_recompete_source_registry + open_data_catalog.py without new connector code.
Not duplicated with opportunities ingest: Recompete feeds are award registries with expiration dates only. Reject open bid/RFP listings, checkbook/spending, and solicitation due-date feeds — see open_data_exclusions.py and python scripts/tools/discover_socrata_contracts.py --checklist. Validate candidates with validate_socrata_candidates.py before adding to the catalog.
Operational refresh (Tuesdays): Nightly pipeline Stage 9 runs run_sled_recompete_refresh.py (ingest all registry sources + classify batch when vLLM is up). One-off full backfill: python scripts/classification/classify_sled_recompetes.py --all --batch-size 32.
Agentic expansion (Wednesdays + idle pipeline worker): discover_sled_recompete_open_data scans Socrata portals for award registries (vendor + expiration), applies the opportunities-overlap exclusion checklist, auto-registers high-confidence feeds, and queues HITL for the rest. Admin: POST /api/admin/pipeline/discover-sled-recompete-open-data or POST /api/admin/sled/recompete/open-data/discover. Does not ingest bid boards — those stay in coverage discovery → opportunities.
Parameters
| Parameter | Type | Description |
|---|---|---|
query |
string | Keywords (title, vendor, GIS/Esri terms) |
vendor |
string | Incumbent vendor substring (e.g. "Esri") |
state |
string | Two-letter state code |
within_months |
integer | Expiration window (default 24, max 60) |
include_historical |
boolean | Include recently expired contracts in window |
sort_by |
string | "value", "expiry", or relevance (default) |
Classification: All active rows are classified via enhanced_classification (same taxonomy as opportunities). Re-run after new ingest:
python scripts/classification/classify_sled_recompetes.py --all --batch-size 16
Recompete Data Semantics¶
Returns a Markdown guide (guide_markdown) that explains how Scout defines recompete timing and dollars (e.g. period of performance, award roll-ups) and why other market tools may show different dates or amounts for what looks like the same contract.
No tier gate — use whenever the user asks why Scout’s recompete view differs from another source.
Parameters
| Parameter | Type | Description |
|---|---|---|
topic |
string | Optional label for your prompt (e.g. "dates", "dollars"). The same guide is returned regardless. |
Teaming Match¶
Find potential teaming partners — small businesses, primes, or specialty subcontractors — by NAICS, capability keywords, and set-aside status.
Requires Premier plan
Parameters
| Parameter | Type | Description |
|---|---|---|
capability |
string (required) | Capability description or keywords |
naics |
string | Filter by NAICS |
set_aside_type |
string | e.g. "8(a)", "WOSB" |
limit |
integer | Max partners (default: 10) |
Example prompt
Example response (abbreviated)
{
"partners": [
{
"company_name": "Example Systems LLC",
"naics_codes": ["541511", "541512"],
"set_aside_type": "8(a)",
"capability_match_score": 0.91,
"past_performance_summary": "Cloud migration and DevSecOps for DoD agencies"
}
],
"total_returned": 1
}
Generate Discovery Report¶
Run an AI-powered opportunity scan across your target market and receive a curated report with ranked solicitations and market insights. PrimeRFP Scout searches all active federal opportunities using your keywords, NAICS codes, and agency preferences.
Requires Tactics plan or higher
Parameters
| Parameter | Type | Description |
|---|---|---|
keywords |
list of strings | Topics or technologies to search (e.g. ["cybersecurity", "cloud"]) |
naics_codes |
list of strings | NAICS codes to filter results (e.g. ["541512", "541330"]) |
agencies |
list of strings | Agency names to focus on (e.g. ["Department of Defense"]) |
report_type |
string | "quick_insights" | "detailed_analysis" | "trending_opportunities" (default: "detailed_analysis") |
limit |
integer | Max opportunities to return (default: 25, max: 100) |
fresh |
boolean | Controls whether PrimeRFP applies the “past discovery” dedup filter. true = fresh run (ignore past reports and return an isolated snapshot). false = exclude opportunities already included in prior discovery reports. Default: true |
Calling with no parameters returns a clarification prompt asking for your target market before the scan begins.
If you are using MCP and want to avoid cross-run bleed between your own downstream orchestration steps, keep fresh as true (the default). Set fresh: false only when you want PrimeRFP to avoid repeating opportunities it has included in earlier discovery runs for your recipient.
Generation time
Discovery reports typically complete in 1–3 minutes. Your AI client will automatically poll for the result and display it when ready.
Example prompts
What federal opportunities should my firm be bidding on? We focus on IT modernization, NAICS 541512.
Example response (abbreviated)
{
"report_type": "detailed_analysis",
"opportunities": [
{
"uid": "opp_xyz789",
"title": "Zero Trust Architecture Implementation – DISA",
"agency": "Defense Information Systems Agency",
"naics_code": "541512",
"set_aside": "SDVOSB",
"response_deadline": "2026-04-15",
"estimated_value": 12000000
}
],
"insights": [
{
"type": "agency_trend",
"title": "Top Agency: DISA",
"description": "8 matching opportunities",
"count": 8
}
],
"summary": {
"total_found": 22,
"keywords_searched": ["cybersecurity", "zero trust"],
"top_agencies": [["DISA", 8], ["Army", 6], ["Navy", 4]],
"generation_seconds": 47.2
},
"schedule_prompt": "Want this report delivered automatically? I can schedule weekly or daily discovery reports to your inbox."
}
Schedule Discovery Report¶
Save or update a recurring discovery report schedule. PrimeRFP Scout will automatically run your discovery scan on the chosen cadence.
By default, PrimeRFP generates and saves scheduled reports in your account but does not email them unless you set send_email: true.
This send_email flag only affects scheduled delivery via schedule_discovery_report. The one-off generate_discovery_report tool returns results to your client and does not send emails.
To email a custom report to the user’s Scout account email only, use send_report_email after composing HTML from tool results (teaser in the message, full layout in the attached .html file by default).
Requires Tactics plan or higher
Parameters
| Parameter | Type | Description |
|---|---|---|
frequency |
string | "daily" | "weekly" | "biweekly" | "monthly" | "never" |
preferred_time |
string | Time of day in HH:MM (24-hour) format (default: "08:00") |
keywords |
list of strings | Topics to search in recurring reports |
naics_codes |
list of strings | NAICS codes for recurring reports |
agencies |
list of strings | Agencies to focus on for recurring reports |
enabled |
boolean | Set false to pause schedule without deleting it |
send_email |
boolean | When true, PrimeRFP emails scheduled reports. Default: false |
Use frequency: "never" to cancel the schedule entirely.
Example prompts
Example response
{
"success": true,
"frequency": "weekly",
"preferred_time": "07:00",
"enabled": true,
"confirmation": "Discovery reports scheduled weekly at 07:00. Reports will be emailed to your account address."
}
Send Report Email¶
Email report HTML you build from tool results to the signed-in user’s Scout account address (PrimeRFP-delivered email).
Default behavior: The inbox message is a short SCOUT-branded teaser (subject, short summary, and a prompt to open the attachment). The full report is attached as an .html file so it opens in a browser with proper formatting — most inboxes do not render long, styled reports well inline.
Optional: Set embed_full_report_in_email_body to true to also put the full HTML in the message body (often cluttered in email clients). The .html attachment is still included.
Each send includes a delivery_reference_id in the message so the recipient can see it came from an AI assistant session (not generic marketing mail). Use conversation_note for a short human-readable label (e.g. report topic).
You cannot send to arbitrary third-party addresses; optional to_email must match the account email (case-insensitive), or omit it to use the default.
Daily caps (UTC midnight reset): Free 10 · Tactics 25 · Strategic 50 · Premier 100.
All plans
Parameters
| Parameter | Type | Description |
|---|---|---|
subject |
string (required) | Subject line (max 200 characters) |
html_content |
string (required) | Full report HTML — either a complete page or a snippet; Scout ensures the attachment opens cleanly in a browser. |
to_email |
string | Optional; if omitted, uses the account email. If set, must match the Scout login email. |
text_plain |
string | Optional short plain-text summary (shown in the teaser when you are not inlining the full HTML in the body). |
attachments |
list of objects | Optional extra files [{ "filename": "report.pdf", "content_base64": "<base64>" }] — up to 5 additional attachments; the automatic HTML report does not count toward that limit. Size limits enforced server-side. |
embed_full_report_in_email_body |
boolean | Default false. If true, the full report HTML is inlined in the email body (often ugly in inbox clients) in addition to the attachment. |
conversation_note |
string | Optional short label shown in the email (e.g. topic or chat title) so the recipient recognizes this send from their AI session. |
Example prompt
Example response
{
"success": true,
"message_id": "abc-123",
"to_email": "jane@example.com",
"tier": "tactics",
"emails_sent_today": 3,
"daily_limit": 25,
"emails_remaining_today": 22,
"report_attachment_filename": "SCOUT-weekly-federal-IT-opps.html",
"email_body_mode": "minimal_teaser",
"delivery_reference_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
"mcp_client_channel": "openai"
}
Quota before sending is also returned on get_account_info as report_email_quota.
Push CRM Feed¶
List this user’s CRM / Chat / export connections and feeds, land this conversation onto HubSpot / Salesforce / Dynamics, look up a company or pipeline record already in the CRM, dry-run an existing feed, or Push it. HubSpot, Salesforce, and Dynamics receive the same Scout fields (PoP or close date, source report URL, dossier URL). Scout does not write Fit Score, PWin, or GO/NO-GO.
Live today: HubSpot, Salesforce, Dynamics, Slack, Discord, Email CSV, signed webhook. Coming soon: Unanet, Microsoft Teams, Google Sheets. Chat is a type: Slack, Discord, or Teams. Slack Sign in is not wired. Do not invent a destination as connected unless it appears in the tool result.
Call with no arguments to list connections, feeds, and session_land (which CRM, which Chat destinations will notify). To check a deal or company already in the CRM: pass match= (name, PIID, solicitation, UEI) without rows. If needs_clarification is true, ask the user the ask question. To land this conversation: pass rows from the session plus optional report_id. Default limit=1 (the deal) unless they named a feed or said all/these. Pass provider only if more than one CRM is live. Dry-run first; push=true when they said update/write/land. Scheduled feed: pass feed_id. A live CRM land/Push posts a line to each connected Chat destination (deal name, report URL, optional Slack capture-lead mention).
Requires Strategic or Premier (crm_connect)
Parameters
| Parameter | Type | Description |
|---|---|---|
feed_id |
string | Optional. Scheduled feed id. Omit to list connections or to land session rows. |
push |
boolean | Default false (dry-run). true writes to the destination. |
provider |
string | Optional. hubspot, salesforce, or dynamics when more than one CRM is live. |
rows |
array | Optional. This session’s recompete or opportunity JSON. Session land; default cap 1. |
source_kind |
string | Optional. recompetes or opportunities. |
limit |
integer | Optional. Session land cap. Default 1. |
report_id |
string | Optional. Hosted report id; stamps scout_source_report_url. |
match |
string | Optional. Title, PIID, solicitation, or company name. With rows, picks the land row. Without rows, looks up CRM status. |
lens |
string | Optional. pipeline or accounts for status lookup. |
Example prompts
Example response (list)
{
"allowed": true,
"writes_scores": false,
"slack_sign_in": false,
"live_providers": ["hubspot", "salesforce", "dynamics", "slack", "discord", "email_csv", "webhook"],
"coming_soon": ["unanet", "teams", "google_sheets"],
"session_land": {"ready": true, "crm_providers": ["hubspot"], "chat_notify": true, "chat_providers": ["slack"], "slack_notify": true},
"connections": [{"provider": "hubspot", "status": "connected", "live": true}],
"feeds": [{"id": "…", "name": "MO recompetes", "provider": "dynamics", "lens": "pipeline"}]
}
The same snapshot is attached to get_account_info as integrations.
Get My Tier¶
Returns your plan name and the list of tools you have access to. Useful for quickly checking your account status from within your AI client.
No parameters required.
Example prompt
Example response
{
"tier": "tactics",
"display_name": "Scout Tactics",
"tools_available": [
"search_opportunities",
"get_opportunity_detail",
"get_award_history",
"get_award_summary",
"list_protest_decisions",
"get_protest_sustain_rates",
"find_recompete_contracts",
"get_recompete_methodology",
"find_teaming_partners",
"get_account_info"
],
"limits": {
"max_results": 50,
"monthly_calls": 1000,
"historical_months": 24
}
}
Get My Metrics¶
Returns usage for the current calendar month: total successful calls, remaining monthly budget, and per-tool statistics (counts, errors, typical response time).
No parameters required.
Award Summary¶
Get aggregated market statistics across historical contract awards — counts, total obligated value, top awardees, top agencies, and year-over-year trends — without returning individual records. Optimized for "how many / how much / who leads" market intelligence questions.
Requires Tactics plan or higher
Parameters
| Parameter | Type | Description |
|---|---|---|
query |
string | Keyword filter on contract descriptions (e.g. ”cybersecurity”). Do not rely on this alone for SDVOSB / WOSB / 8(a) / HUBZone totals — descriptions rarely repeat those labels; use set_aside_type or set_aside_type_code for official set-aside metadata. |
naics_code |
string | Filter by NAICS prefix (e.g. ”541512”). Classifies the seller's industry. For market sizing, prefer psc_code or category instead. |
psc_code |
string | Filter by PSC prefix (e.g. ”R425”, ”D3”, ”Y1”). Classifies what was purchased. Uses prefix matching — ”R4” matches R401, R408, etc. |
category |
string | Filter by OMB category or subcategory name. Expands to the matching PSC prefixes automatically. Accepts top-level names (”IT”, ”Facilities & Construction”, ”Medical”, ”Professional Services”, etc.) and subcategory names (”natural resources”, ”construction”, ”guard services”, ”consulting”, ”r&d”, ”education”, ”facility operations”, ”custodial”, ”demolition”, etc.). Ignored if psc_code is set. |
agency |
string | Filter by agency name substring |
awardee |
string | Filter by awardee name (partial match). If multiple SAM entities match, Scout returns disambiguation_required with company_candidates — rerun with recipient_uei. |
recipient_uei |
string | Preferred for company-scoped summaries. Exact 12-character SAM UEI. Fastest path; avoids false positives from substring name matches. |
months_back |
integer | Look-back window in months (default: 24, max: 84) |
since_date |
string | Hard cutoff date in YYYY-MM-DD format (overrides months_back) |
top_n |
integer | Number of top awardees / top agencies to return (default: 10, max: 25) |
contract_type_filter |
string | How dollars are aggregated: obligations_only (default) focuses on obligated amounts and excludes certain IDIQ/IDV base vehicles; all uses obligations without that exclusion; ceiling_only uses ceiling / potential value in the window. Use obligations_only for typical “how much was obligated” questions. |
year_type |
string | Bucket by_year as federal fiscal (default; labels like FY2025) or calendar (Jan–Dec). Pass calendar only when the user asks for calendar years. |
set_aside_type |
string | Filter by socioeconomic set-aside using official award metadata (SBA, 8(a), SDVOSB, WOSB, HUBZone, VOSB) or exact codes Scout emits (WOSBSS, EDWOSBSS, SBP, ISBEE, IEE, BI). Unrecognized labels fail closed with an error — they do not return the full market. |
set_aside_type_code |
string | Optional: comma-separated exact federal set-aside codes if you already know them (e.g. ”SDVOSBC,SDVOSBS”). |
include_set_aside_breakdown |
boolean | When true, injects a set_aside breakout and copies it into by_set_aside (default false). Prefer breakouts="set_aside" (or set_aside,year) when you need the mix explicitly. |
set_aside_breakdown_limit |
integer | Max rows in by_set_aside (default 15, max 50). |
breakouts |
string | Comma-separated extra dimensions for by_breakout (max 8), e.g. set_aside,year. year uses the same fiscal/calendar buckets as by_year. set_aside,year also returns by_breakout.set_aside_by_year (year × set-aside count and total_value). |
When query is only a set-aside phrase (e.g. "SDVOSB" with no other words), Scout treats it as a metadata filter and does not run a free-text description search.
Company disambiguation
When awardee= matches more than one contractor, Scout does not merge their awards. The response includes disambiguation_required: true and a company_candidates list (name, UEI, sample obligation). Rerun with recipient_uei=<12-char SAM UEI> for an exact match.
Performance and coverage
- Scope matters: NAICS-only or very broad filters can exceed MCP transport limits. Add
agency=,recipient_uei=, or reducemonths_backwhen responses includequery_recommendationsorperformance_guidance. - If a query exceeds the client-safe deadline (~50s), Scout returns
mcp_deadline_exceededwithquery_recommendations— narrow filters and retry; accuracy is preserved when scoped correctly. - Under heavy load,
mcp_compute_busy(503) may appear — retry in 15–30 seconds with a narrower query. - The first request with a new mix of filters (especially a broad agency plus a long look-back) can take several seconds while totals are computed.
- Identical requests repeated in quick succession may return faster for a short period thanks to server-side Redis caching (prewarm after deploy).
- Results reflect Scout’s federal award universe (very small awards may be excluded depending on your deployment’s settings).
Ops runbook: MCP Performance.
Example prompts
Example response (abbreviated)
{
"total_awards": 312,
"total_obligated": 4870000000,
"total_ceiling": 6120000000,
"avg_award_value": 15608974,
"date_range": { "earliest": "2023-01-04", "latest": "2025-12-18" },
"top_awardees": [
{ "awardee": "Booz Allen Hamilton", "count": 38, "total_value": 820000000, "recipient_uei": "ABC123456789", "family_subtitle": "Booz Allen Hamilton family: $1.2B obligated across 4 entities (36mo)" },
{ "awardee": "Leidos Inc", "count": 24, "total_value": 610000000 }
],
"top_agencies": [
{ "agency": "Department of Defense", "count": 180, "total_value": 3100000000 }
],
"top_pscs": [
{ "psc": "D302", "count": 85, "total_value": 1200000000 },
{ "psc": "D318", "count": 62, "total_value": 890000000 }
],
"by_year": [
{ "year": "FY2024", "count": 98, "total_value": 1420000000 },
{ "year": "FY2025", "count": 142, "total_value": 2180000000 }
],
"filters_applied": { "naics": "541512", "months_back": 24 }
}
Top awardee rows may include recipient_uei, family_rollup, and family_subtitle when Scout resolves the SAM UEI. Use incumbent_family_profiles for corporate-family totals vs in-scope slice dollars. Hosted reports show family_subtitle under contractor names.
PSC vs NAICS market sizing
Every get_award_summary response now includes top_pscs — the top 10 PSC codes by obligated value within your filter. This shows exactly which product/service codes are driving the market. Use psc_code for "what was purchased" views and naics_code for "who sold it" views.
Product-firm lens (software vendors) — optional on this tool:
| Parameter | Type | Description |
|---|---|---|
product |
string | Named software product filter (gazetteer on award descriptions), e.g. "Microsoft 365". |
vendor_product |
string | Vendor/Product shorthand for product filter. |
view_mode |
string | auto (default), service, product, or composite. Product name → composite when PSC/category also set. |
include_product_breakout |
boolean | Include product_breakout counts in response. |
Product acquisition vs services capture
Product acquisition (OEM/reseller GTM): get_product_demand_fingerprint, get_channel_for_product, score_prospect. Services capture (recompete/incumbent): find_recompete_contracts, get_award_summary with view_mode=service. Use view_mode=composite when a product vendor also wants the PSC category envelope.
Product-Firm Lens (software vendor intelligence)¶
Tools for product/software vendors — funded demand, reseller channel, and inferred installed-base signals. Distinct from services-capture tools (recompete, teaming, incumbent PIID).
Requires Tactics plan or higher
| Tool | Phase | Purpose |
|---|---|---|
get_product_demand_fingerprint |
P0 | Agency-level demand for a named product: obligated $, top agencies, channel holders, category envelope (composite mode). |
get_company_tech_signals |
P1+P3 | DNS/MX email platform signal; optional include_job_postings=true for medium-confidence stack mentions. |
score_prospect |
P2 | Demand-Fit (grounded) + Displacement (inferred) with evidence trail. |
get_channel_for_product |
P4 | GSA Schedule resellers carrying an OEM/product (complements find_subawards). |
Example — product acquisition (CoreView / M365 governance):
get_product_demand_fingerprint(product="Microsoft 365", psc_code="7030", view_mode="composite")
get_channel_for_product(manufacturer="Microsoft")
find_subawards(subrecipient_name="Carahsoft", limit=10)
Example — services capture (same category, different lens):
get_award_summary(psc_code="7030", months_back=24, view_mode="service")
find_recompete_contracts(q="IT management", within_months=18)
Honesty contract: Demand figures are contract-grounded. DNS/job-posting displacement signals are inferred with confidence labels — not confirmed installed base.
Performance (first response)¶
Cold get_product_demand_fingerprint used to scan the full transaction-long table (~2–3 min). Defaults now use a fast path:
| Control | Default | Effect |
|---|---|---|
PRODUCT_FIRM_FAST_OBLIGATIONS=1 |
on | Grouped contract snapshot instead of tx-long scan (~5–10× faster) |
include_category_envelope=false |
envelope off (default) | Skips PSC envelope rollup in composite mode |
view_mode=product |
auto | Named-product slice only — skip category envelope |
| Redis cache | per snapshot | Repeat identical queries return in <1s (_scout.cached: true) |
Fastest first call: view_mode=product, include_category_envelope=false. Use composite on follow-up or when you need the PSC envelope.
Report alignment: Product slice total_obligated / total_awards match get_award_summary on the same mention-filtered rows. In composite mode, category_envelope.* matches get_award_summary(psc_code=…, view_mode=service). PWS/SLED landscape reports still use service lens — product-firm tools are separate.
Sample prompts (natural language → tools)¶
Product acquisition — funded demand
Which agencies spent the most on Microsoft 365 in the last 24 months?
Who are the top federal resellers for Microsoft 365?
Show me demand for ServiceNow (PSC 7030) with the category envelope.
get_product_demand_fingerprint(product="Microsoft 365", psc_code="7030", view_mode="composite")
get_product_demand_fingerprint(product="ServiceNow", view_mode="product", include_category_envelope=false)
get_award_summary(psc_code="7030", months_back=24, view_mode="service") # compare category total
Product acquisition — channel + displacement
Who sells Microsoft on GSA Schedule?
Does SSA run Microsoft 365? Score them as a prospect.
What tech stack signals does Carahsoft show on DNS?
get_channel_for_product(manufacturer="Microsoft")
get_company_tech_signals(domain="ssa.gov", include_job_postings=true)
score_prospect(company="Social Security Administration", product="Microsoft 365", domain="ssa.gov")
find_subawards(subrecipient_name="Carahsoft", limit=10)
Services capture — same category, different lens
Who holds IT management services (PSC 7030) expiring in 18 months?
Top primes on 7030 — services view, not product mentions.
get_award_summary(psc_code="7030", months_back=24, view_mode="service")
find_recompete_contracts(q="IT management", psc_code="7030", within_months=18)
find_contracts(q="cloud infrastructure", psc_code="7030", limit=25)
Composite vs product vs service
| Question type | view_mode |
Tools |
|---|---|---|
| "How much M365 spend?" | product |
get_product_demand_fingerprint |
| "M365 vs all software (7030)?" | composite |
demand fingerprint + category_envelope |
| "Who wins 7030 services?" | service |
get_award_summary, recompete |
Contract Vehicle Intelligence¶
Intelligence on federal contract vehicles (GWACs, IDIQs, BPAs, GSA MAS). Shows who wins task orders, which agencies order through the vehicle, dollar volumes, top NAICS codes, top PSC codes, and top awardees.
Requires Tactics plan or higher
MCP Trial and Explorer tiers see a vehicle list preview; full task order analytics require Tactics+.
Tracked vehicles — 27 total (22 active + 5 legacy):
| Sector | Vehicles |
|---|---|
| NASA GWACs | SEWP V, SEWP VI |
| GSA GWACs | OASIS+, Alliant 2, Polaris, 8(a) STARS III, EIS, GSA MAS |
| NIH NITAAC | CIO-SP4, CIO-CS, NITAAC Value Added |
| Army | ITES-3H, ITES-3S, ITES-SW2, Army CHESS |
| Navy | Navy EUHW, SeaPort-NxG |
| Air Force | NETCENTS-2 |
| DISA | ENCORE III |
| Fed Health | T-4 NG (TRICARE), MHS GENESIS, VA IT IDIQ |
| Legacy (closed to new awards; task order data still available) | Alliant 1, Networx, CIO-SP3, ITES-2S, NETCENTS-1 |
Sector queries: Pass a sector name instead of a single vehicle to get a multi-vehicle rollup with cross-vehicle aggregation.
| Sector keyword | Vehicles included |
|---|---|
"Fed Health" or "health" or "VA" |
TRICARE, MHS GENESIS, VA IT IDIQ, CIO-SP3, CIO-SP4 |
"DoD IT" or "defense" or "military" |
ITES-3H/3S/SW2/2S, NETCENTS-2/1, CHESS, EUHW, ENCORE III, SeaPort-NxG |
"NASA" or "SEWP" |
SEWP V, SEWP VI |
"GSA" |
OASIS+, Alliant 2/1, Polaris, STARS III, EIS, Networx, MAS |
"NITAAC" or "NIH" |
CIO-SP3, CIO-SP4, CIO-CS, NITAAC Value Added |
Parameters:
| Param | Type | Description |
|---|---|---|
vehicle |
string | Vehicle name, abbreviation, or sector (e.g. "SEWP", "ITES-3S", "OASIS+", "Fed Health", "DoD IT"). Omit to list all tracked vehicles. |
agency |
string | Filter task orders by ordering agency name (substring match) |
awardee |
string | Filter by awardee/contractor name (substring match) |
naics_code |
string | Filter by NAICS code prefix (e.g. "5415") |
limit |
integer | Max task order rows to return (default: 25, cap: 50) |
Example prompts:
Response includes:
- Vehicle metadata (ceiling, scope, administering agency, website)
- Task order count and total obligated/value
- Top awardees (company name, task order count, dollar volume)
- Top ordering agencies (agency name, task order count, dollar volume)
- Top NAICS codes (code, description, task order count, dollar volume)
- Top PSC codes (code, description, task order count, dollar volume)
- Individual task order rows (PIID, awardee, agency, value, PSC, NAICS, set-aside)
For sector queries, the response adds per-vehicle breakdowns and cross-vehicle merged aggregations.
Pair with other tools
Use get_award_history(vendor="Booz Allen") to see a contractor's full portfolio beyond one vehicle. Use get_piid_dossier to drill into a specific task order. Use get_budget_line_items to check whether the ordering agency's funding is increasing or decreasing.
Subaward Lookup¶
List federal subawards (subcontractor awards) disclosed under a prime contract or matched to a company.
When to use: With a prime PIID from get_award_history, find_recompete_contracts, or elsewhere, call find_subawards(piid=...) to list who received subawards. Alternatively search by subrecipient_uei (exact) or subrecipient_name (partial name). For name search, use months_back to keep the result set focused on recent activity.
Parameters
| Parameter | Type | Description |
|---|---|---|
piid |
string | Prime contract / task order PIID |
subrecipient_uei |
string | Subrecipient UEI (exact match) |
subrecipient_name |
string | Partial match on subrecipient company name |
months_back |
integer | Optional with subrecipient_name; restrict to roughly the last N months |
limit |
integer | Max rows (default 50, max 100) |
table |
string | Advanced: alternate data source — omit unless documented for your enterprise plan |
PIID Lookup¶
Single-call summary for one prime PIID:
prime_contract— recompete-oriented context for that award when Scout has it (otherwisenull).subaward_aggregate— rolled-up subaward counts and dollars when available.subaward_detail— optional line-item subawards wheninclude_subaward_rows=true.
Parameters
| Parameter | Type | Description |
|---|---|---|
piid |
string | Required. Prime award PIID. |
include_subaward_rows |
boolean | Include detailed subaward rows (default false). |
subaward_limit |
integer | Max detail rows (default 25, max 100). |
Company Profile¶
One UEI-keyed call that returns a complete contractor intelligence profile — identity, obligation rollups, market mix, incumbent recompetes, and teaming signals. Powers Scout intel company pages and replaces stitching get_award_history + get_award_summary + find_recompete_contracts with client-side incumbent filtering.
Requires Tactics plan or higher
Always pass recipient_uei — do not name-match
Name-based award queries undercount (for example, Aptive by legal name alone can miss material prime obligations). Use the 12-character SAM UEI.
Parameters
| Parameter | Type | Description |
|---|---|---|
recipient_uei |
string | Required. 12-character SAM UEI (e.g. CP2JANC9NLK1). |
months_back |
integer | Look-back window for obligation rollups (default: 36, max: 120). |
recompete_window_months |
integer | PoP horizon for incumbent recompetes (default: 24, max: 60). Recompetes are filtered to exact recipient_uei match. |
rollup |
string | entity (default) — obligations for this UEI only. family — aggregate across USASpending parent/child graph for the ultimate parent. |
What you get back
| Block | Contents |
|---|---|
identity |
UEI, legal/display name, state, set-aside labels from USASpending business types. cage and website are often null (not in USASpending; website may come from Scout Connect / Arctas later). |
summary |
Entity-level total_obligated, award_count, top_agency, primary NAICS/PSC (respects rollup=entity|family). |
family_rollup |
Always present — full corporate-family totals (total_obligated, award_count, by_agency, etc.) even when rollup=entity. Uses children_only or parent_only logic so parent P-level and child C-level UEIs are never summed together (avoids ~2× inflation). |
by_agency |
Top agencies by obligated dollars; each row includes award_count when available. |
by_naics / by_psc |
Obligation mix by seller industry and product/service code. |
by_fiscal_year |
Fiscal-year trajectory; current FY marked settled: false. |
recompetes |
Incumbent-filtered recompete rows (incumbent_uei always matches input UEI). |
capability |
Service lines and prime/sub obligation totals from subaward reporting. |
teaming |
Windowed as_prime_with (this firm is the prime; named rows are subcontractors) and as_sub_to (this firm is the sub; named rows are primes). Each row includes first_action_date / last_action_date. Lifetime copies are as_*_lifetime. capability.sub_obligated uses the same window as summary. |
family |
Lightweight USASpending parent graph (rollup_basis, rollup_confidence, member_ueis). |
verification |
Data provenance and metric definitions (see below). |
Obligation and award semantics (verification block)
Scout labels these explicitly so UI copy stays honest:
obligation_basis:federal_action_obligationobligation_definition: Net sum of prime contractfederal_action_obligationbyaction_datewithin the window. Excludes IDV vehicle rows; modifications and deobligations net into the total. This is not ceiling orbase_and_all_options_value.award_count_definition: Distinct prime contract awards (PIID) with contract obligation activity in the window, excluding IDVs.obligations_source:local_db(USASpending PostgreSQL mirror),usaspending_api, ornone.award_count_source:local_db,usaspending_api, orgpu_cache(GPU contracts fallback when API counts unavailable).family_rollup_method:children_only(sum C-level child UEIs),parent_only(P-level parent aggregate), orsingle_member.family_rollup_definition: Family totals never add parent P-level and child C-level obligations together — USASpending parent aggregates already include children.
Example prompts
Example response (abbreviated)
{
"identity": {
"uei": "CP2JANC9NLK1",
"legal_name": "APTIVE RESOURCES LLC",
"set_aside_status": "SDVOSB | Small business",
"cage": null,
"website": null
},
"summary": {
"total_obligated": 133101363.93,
"award_count": 66,
"months_back": 36,
"top_agency": "General Services Administration",
"top_agency_pct": 39.5
},
"by_agency": [
{ "agency": "General Services Administration", "obligated": 52580747.52, "award_count": 27 }
],
"verification": {
"obligations_source": "usaspending_api",
"award_count_source": "usaspending_api",
"obligation_basis": "federal_action_obligation",
"date_window_basis": "action_date",
"date_start": "2023-06-21",
"date_end": "2026-06-21"
},
"rollup": "entity"
}
Family rollup vs entity summary
Use rollup=entity (default) for the queried UEI's own obligations in summary. Use family_rollup (always populated) or rollup=family for corporate-family headline numbers. Per-member entity totals in get_company_hierarchy_profile may still show overlapping parent/child dollars — the family rollup total is deduplicated.
Entity Brief¶
generate_entity_brief — one company brief. Facts are identical across lenses; only section order and the closing CTA change. Numbers are composed from Scout award/protest/subaward tools, never LLM-authored.
Requires Tactics plan or higher
The public marketing capture (POST /api/brief/request on scout.primerfp.com) is a separate unauthenticated REST wrapper. MCP clients should call this tool, not the public REST path.
Parameters
| Parameter | Type | Description |
|---|---|---|
entity |
object | Exactly one of {uei}, {slug}, or {company_name}. |
uei |
string | Alternate to entity.uei — 12-character SAM UEI. |
slug |
string | Alternate to entity.slug — marketing intel slug (e.g. breakpoint-labs). |
company_name |
string | Alternate to entity.company_name. Ambiguous names return 409 with candidates — Scout does not guess a sibling subsidiary. |
lens |
string | compete (default), claim, or diligence. |
format |
string | json (default) or html. |
What you get back
| Block | Contents |
|---|---|
preview |
Two on-page figures (headline, secondary). Each has available, value, detail, and optional scope. When available is false the slot is empty — no fallback number. |
figures |
Full set: recompete cliff (currently-active book, shared 24-month window), GAO sustain rate (company then agency, never fabricated), concentration, family, subawards, sole-source, NAICS rank. |
sections |
Lens-ordered figure list for rendering. Claim viewer-cohort is omitted unless the observation count is sufficient and the caller email domain matches the entity. |
sources |
Provenance: company_profile_rollup is always entity (not family). Protest queries are not NAICS-filtered. |
Example prompts
Company Hierarchy Profile¶
Companion to Company Profile when you need the full family tree — ultimate parent, per-subsidiary obligation totals, and prime/sub teaming relationships — not just the lightweight family block.
Requires Tactics plan or higher
Parameters
| Parameter | Type | Description |
|---|---|---|
recipient_uei |
string | Required. Any member UEI in the corporate family (Scout resolves ultimate parent via USASpending). |
months_back |
integer | Look-back window for per-member and family rollups (default: 36, max: 120). |
What you get back
| Block | Contents |
|---|---|
ultimate_parent |
Top-of-chain UEI and name from USASpending parents[]. |
rollup |
Family-wide total_obligated, member_count, by_agency (with award_count when available). |
members |
One row per UEI: name, role (parent / subsidiary), entity obligations, top agency, set-aside, primary NAICS. |
teaming |
Windowed as_prime_with (this firm is the prime; named rows are subcontractors) and as_sub_to (this firm is the sub). Each row includes first_action_date / last_action_date. |
rollup_basis / rollup_confidence |
How the family graph was built (usaspending_parent; may be partial for incomplete graphs). |
verification |
Same obligation/award semantics as Company Profile. |
Example prompts
Opportunity Summary¶
Get counts and breakdowns of currently open and active solicitations — without returning individual records. The complement to get_award_summary: while get_award_summary covers what has been awarded, get_opportunity_summary covers what is open right now.
Requires Tactics plan or higher
Quick rule: "How many X are open?" → get_opportunity_summary · "How much has Y been awarded?" → get_award_summary
Parameters
| Parameter | Type | Description |
|---|---|---|
query |
string | Keyword filter on title + description (e.g. "cybersecurity") |
naics_code |
string | Filter by NAICS prefix (seller's industry, e.g. "541512") |
psc_code |
string | Filter by PSC prefix (what was purchased, e.g. "D3", "Y1") |
agency |
string | Agency name substring (e.g. "Department of Defense") |
set_aside |
string | e.g. "8(a)", "SDVOSB", "WOSB", "HUBZone" |
source_type |
string | "all" (default) · "federal" · "sled" · "non-federal" — filters source_category; see Geography filters |
region |
string | US macro-region — finite list in Geography filters |
location |
string | Region, state, "City, ST", or "County, ST" |
state |
string | 2-letter or full US state |
county |
string | County name (with state) |
city |
string | City name (with state) |
posted_within_days |
integer | Only count opportunities posted in the last N days (default: 90) |
top_n |
integer | Number of top agencies to return (default: 10, max: 25) |
daily_breakdown |
boolean | Set to true to include time_series + display_table (markdown chart data) |
notice_types |
string | Include only these notice buckets — see Notice-type filters |
exclude_notice_types |
string | Exclude notice buckets (e.g. Award) — response includes by_notice_type breakdown |
cross_by |
string | Cross-tabulate daily counts by "agency", "set_aside", "work_type", or "location" / "state" (US state rollup via resolved geography — not publisher domain) |
Example prompts
How many open cybersecurity opportunities are in Missouri, excluding award notices?
→ state=MO, query=cybersecurity, exclude_notice_types=Award
Chart daily new federal IT postings by state for the last 60 days.
→ daily_breakdown=true, cross_by=location, query=IT, source_type=federal
Daily charts
When you ask for a daily breakdown or trend chart, the tool returns a display_table that your AI client renders directly as a markdown table, plus a time_series array for programmatic charting. Combine with cross_by="agency", cross_by="set_aside", cross_by="work_type", or cross_by="location" (state columns) for a multi-column view.
The response also includes by_state — a static count rollup by US state (same geo resolution as Geography filters). total_active uses the same posted_within_days window as search_opportunities (active rows with unknown posted dates are included in totals).
Example response (abbreviated)
{
"total_active": 847,
"deadlines": {
"closing_within_14_days": 112,
"closing_within_30_days": 298,
"closing_within_60_days": 501
},
"by_source_type": { "federal": 623, "sled": 204, "non-federal": 20 },
"by_set_aside": {
"None / Full & Open": 510,
"8(a)": 142,
"SDVOSB": 89,
"WOSB": 74,
"HUBZone": 32
},
"top_agencies": [
{ "agency": "Department of Defense", "count": 234 },
{ "agency": "Department of Veterans Affairs", "count": 98 }
],
"by_work_type": {
"IT / Technology Services": 312,
"Professional Services": 201,
"Construction / Facilities": 88
},
"by_notice_type": {
"RFP": 210,
"Solicitation": 180,
"RFQ": 95,
"Award": 142,
"RFI": 88
},
"by_state": [
{ "state": "VA", "count": 98 },
{ "state": "MD", "count": 76 },
{ "state": "TX", "count": 64 }
],
"filters_applied": {
"keyword": "cybersecurity",
"posted_within_days": 90,
"exclude_notice_types": ["Award"]
},
"time_series": [
{ "date": "2026-03-17", "total": 38, "Department of Defense": 14, "VA": 9 },
{ "date": "2026-03-18", "total": 45, "Department of Defense": 18, "VA": 11 }
],
"display_table": "| Date | Department of Defense | VA | Total |\n|---|---|---|---|\n| 2026-03-17 | 14 | 9 | 38 |\n| 2026-03-18 | 18 | 11 | 45 |",
"chart_hint": "daily counts over 30 days × agency"
}
Opportunity Changes¶
Query amendment and change history for solicitations — deadline extensions, status changes, title edits, and other field-level updates Scout tracks over time.
Requires Tactics plan or higher
Always date-windowed
Queries use a mandatory look-back window (up to 30 days) so responses stay fast.
Quick rule: "What changed / was amended / was pushed?" → get_opportunity_changes
Parameters
| Parameter | Type | Description |
|---|---|---|
mode |
string | "summary" (default) for aggregates, "detail" for individual change records |
days |
integer | Look-back window in days (default: 7, max: 30) |
opportunity_uid |
string | Filter to a single opportunity's history (best combined with mode="detail") |
change_type |
string | Filter by field name or category: "response_date", "status", "title", "deadline" |
limit |
integer | Max records in detail mode (default: 50, max: 200) |
Example prompts
Example response — summary mode
{
"mode": "summary",
"total_changes_in_window": 412,
"window_days": 7,
"by_change_type": {
"response_date": 184,
"archive_date": 97,
"status": 63,
"description": 41,
"title": 27
},
"top_changed_opportunities": [
{ "opportunity_id": "abc-123", "change_count": 8 },
{ "opportunity_id": "def-456", "change_count": 5 }
],
"daily_volume": {
"2026-03-17": 58,
"2026-03-18": 71,
"2026-03-19": 83
},
"deadline_pushes_detected": 184,
"recent_deadline_changes": [
{
"opportunity_id": "abc-123",
"field": "response_date",
"from": "2026-03-25",
"to": "2026-04-10",
"changed_at": "2026-03-19T14:22:00Z"
}
]
}
Example response — detail mode
{
"mode": "detail",
"total_returned": 2,
"window_days": 7,
"changes": [
{
"opportunity_id": "abc-123",
"title": "HVAC Maintenance – VA Medical Center Richmond",
"changed_at": "2026-03-19T14:22:00Z",
"change_type": "Description Changed",
"field_diffs": [
{ "field": "response_date", "from": "2026-03-25", "to": "2026-04-10" },
{ "field": "archive_date", "from": "2026-04-25", "to": "2026-05-10" }
]
}
],
"display": "[2026-03-19T14:22] abc-123 (HVAC Maintenance – VA Medical Center Richmond): `response_date` 2026-03-25 → 2026-04-10\n[2026-03-19T14:22] abc-123 (HVAC Maintenance – VA Medical Center Richmond): `archive_date` 2026-04-25 → 2026-05-10"
}
Render display directly
Always render the display field verbatim — it is a pre-formatted human-readable diff string, one line per changed field.
Pipeline Forecasts¶
Pre-solicitation acquisition planning from agency forecast dashboards (DHS APFS, DOT, DOJ FCO, GSA, etc.). Planning data only — not live SAM solicitations.
| Parameter | Type | Description |
|---|---|---|
query |
string | Keyword search across title, agency, requirement text |
naics_code |
string | NAICS prefix filter |
agency |
string | Agency name substring |
source |
string | Source system id (e.g. dhs_apfs, doj_fco) |
limit |
integer | Max rows (default 25, max 100) |
Min tier: Tactics+ (same gate as recompete intelligence)
Example prompt
Policy Intel¶
Structured intel from transcribed congressional hearings — NDAA markup, appropriations testimony, committee oversight. Search uses LLM-tagged metadata (industries, services, opportunity_signals) via a fast in-memory index. Pairs with pipeline forecasts or recompete data for capture strategy.
find_policy_intel¶
| Parameter | Type | Description |
|---|---|---|
query |
string | Topic keywords or natural-language question (agency/topic/date parsed automatically) |
agency |
string | Filter chunks mentioning an agency (e.g. FBI, DoD) |
limit |
integer | Max chunks (default 10) |
days |
integer | Recency window in days (e.g. 90 for "past 90 days") |
Min tier: Tactics+
Example prompts
summarize_policy_topic_landscape¶
Cross-agency aggregation: most common metadata topic threads per agency over a time window. Returns narrative markdown, structured landscape.agencies[] with top_topics, global themes, and chart_inline (SVG data URL for clients that render images).
| Parameter | Type | Description |
|---|---|---|
query |
string | Optional natural-language question (days/agency phrasing parsed from text) |
days |
integer | Lookback window (default 180) |
top_agencies |
integer | Max agencies in breakdown (default 12, max 20) |
Min tier: Tactics+
Example prompts
Capture Intelligence Bundle¶
One-shot compound tool: policy intel chunks + pipeline forecasts + optional recompete contracts, with cross-links by agency, NAICS, and PIID.
| Parameter | Type | Description |
|---|---|---|
query |
string (required) | Capture question or topic |
agency |
string | Agency filter |
include_recompete |
boolean | Include recompete contracts in bundle |
policy_limit |
integer | Max policy chunks (default 8) |
forecast_limit |
integer | Max forecast rows (default 10) |
recompete_limit |
integer | Max recompete rows when included (default 10) |
Min tier: Tactics+
Example prompt
Give me a capture bundle for DHS border technology — policy signals, forecasts, and recompetes together.
Scout vs¶
Returns Scout's competitive positioning against any named GovCon platform. You don't need to call this directly — your AI client fires it automatically whenever you ask a comparison question.
Just ask naturally
Prompts like "why Scout over GovDash?", "how does Scout compare to GovWin?", or "is SAM.gov good enough?" all trigger this tool automatically.
Available on MCP Trial, MCP Explorer, and all higher MCP-enabled plans (not on web-only Free).
Parameters
| Parameter | Type | Description |
|---|---|---|
competitor |
string (required) | Competitor name as you wrote it (e.g. "GovWin IQ", "SAM.gov") |
What you get back
For known competitors (GovDash, GovWin IQ, GovTribe, Govly, HigherGov, BidsUSA, GovTrove, GovContractData, SAM.gov, Cleatus, Bid Banana, Procurement Sciences, Turingon, GovSignals):
- A vetted sharp one-liner delivered verbatim
- Competitor strengths (honest — no strawmen)
- Scout's concrete advantages for that head-to-head
- "When to choose them instead" — for trust and brand tone
- Benchmark data where formally measured (Q1 2026 Precision@5)
For unknown competitors: structured brand context and comparison framing so the response stays on-brand and data-honest without inventing metrics.
Example prompts