Available MCP Tools¶
PrimeRFP Scout exposes 35 tools over MCP, organized into seven 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.
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.
Tool overview¶
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+ |
| 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+ |
| 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+ |
| 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 recompete pipeline — incumbents, agencies, PoP timing (optional include_historical) |
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+ |
Teaming & Reports¶
Partner matching, report generation, and account management.
| Tool | What it does | Min tier |
|---|---|---|
| Teaming Match | Find small-business teaming partners by capability, set-aside, and past performance | Premier |
| 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+ |
| Get My Tier | Returns your current plan, tool list, and MCP report-email quota | 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+ |
| Report Search Issue | Flag a search quality issue for the Scout team to investigate | 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 |
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
}
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, total obligated), protest_risk (sustain rate, counts), recompete_pipeline (upcoming count, nearest expiring contracts).
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 + incumbent concentration %), protest_risk (level + sustain rate), recompete_pipeline (upcoming contracts), go_no_go (5-factor score + recommendation).
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, last modified), market_summary (total contracts, obligated value, ceiling, offers_summary with avg/median/sole-source%, top incumbents, by-year breakdown), intelligence_notes (auto-generated: sole-source rate, dominant incumbents, high-competition outliers, large sole-source alerts).
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. |
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.
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.
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.
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) |
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 calendar (Jan–Dec) or fiscal (federal fiscal year). |
set_aside_type |
string | Filter by socioeconomic set-aside using official award metadata (e.g. ”SDVOSB”, ”WOSB”, ”8(a)”, ”HUBZone”, ”small business”). |
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, response includes by_set_aside: totals (or counts in ceiling_only mode) broken out by set-aside code. |
set_aside_breakdown_limit |
integer | Max rows in by_set_aside (default 15, max 50). |
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.
Performance and coverage
- 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 caching.
- Results reflect Scout’s federal award universe (very small awards may be excluded depending on your deployment’s settings).
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 },
{ "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": 2023, "count": 98, "total_value": 1420000000 },
{ "year": 2024, "count": 142, "total_value": 2180000000 }
],
"filters_applied": { "naics": "541512", "months_back": 24 }
}
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.
---
## 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.
!!! info "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.
!!! tip "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`](#award-history), [`find_recompete_contracts`](#recompete-intelligence), 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 (otherwise `null`).
- **`subaward_aggregate`** — rolled-up subaward counts and dollars when available.
- **`subaward_detail`** — optional line-item subawards when `include_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.
!!! info "Requires Tactics plan or higher"
!!! warning "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` | `total_obligated`, `award_count` (distinct prime awards / “Award Actions”), `top_agency`, primary NAICS/PSC codes, date range label. |
| `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 teaming partners from GPU cache + subaward context. |
| `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_obligation`
- **`obligation_definition`**: Net sum of prime contract `federal_action_obligation` by **`action_date`** within the window. Excludes IDV vehicle rows; modifications and deobligations **net into** the total. This is **not** ceiling or `base_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`, or `none`.
- **`award_count_source`**: `local_db`, `usaspending_api`, or `gpu_cache` (GPU contracts fallback when API counts unavailable).
**Example prompts**
**Example response (abbreviated)**
```json
{
"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 limits
USASpending parent/child graphs are strong for many holding companies but incomplete for some tribal/ANC portfolios. Check family.rollup_confidence — Phase 2 curated overlays may be needed for full corporate families.
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 |
as_prime_with (capability partners) and as_sub_to (prime contractors when subaward data exists). |
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