Imported from cliwant/mcp-sam-gov (
skills/sam-gov/SKILL.md). Install upstream withnpx skills add cliwant/mcp-sam-gov --skill sam-gov. Copyright stays with the author.
SAM.gov federal-data skill — 152 tools across 54 sources
This skill teaches Claude how to use the sam-gov MCP server (152 tools wrapped from @cliwant/mcp-sam-gov) to answer the full surface of US federal contracting / spending / regulation / vetting / market questions end-to-end — from discovering (and shaping) an opportunity, to reading the actual RFP/SOW documents, running a FAR/DFARS compliance matrix, vetting a firm (sanctions, exclusions, audits, bank health, EPA), sizing a market (establishments + wages + regional GDP), pricing the bid against statutory wage floors, and pulling macro context for escalation.
Setup: the
sam-govMCP server must be reachable./plugin install cliwant/mcp-sam-govregisters it automatically; otherwise see the repo README. Host prefixing: Claude Code exposes tools asmcp__sam-gov__<tool>; bare MCP hosts use just<tool>. Use whichever your host gives you.
Tool inventory — 152 tools, keyless-first
Keyless-first: 147 of the 152 tools work with no API key, and 50 of 54 sources need no key. Only 5 tools, across 4 sources, require a free key (marked 🔑 below): Census CBP (census_business_patterns), FRED (fred_search_series, fred_series_observations), BEA (bea_regional_data), and DOL's data endpoint (dol_get_dataset; DOL's catalog is keyless). Those 5 tools throw an honest config error without a key. A handful of others take an optional free key for higher limits (see the Keys section). The server is the only source of truth — never invent notice IDs, officer names, award amounts, NAICS codes, or regulation citations.
Opportunities & solicitations — SAM.gov + Grants.gov (10)
sam_search_opportunities— search active SAM.gov contracting opportunities (filters: query, ncode/NAICS, organizationName, state, setAside, limit).sam_search_shaping— pre-solicitation radar: Sources Sought / Presol / Special Notices before the RFP exists (keyless rows null naics/setAside/place — get those viasam_get_opportunity).sam_get_opportunity— full detail for ONE notice by 32-char hex noticeId (POCs, deadline,attachments[], body). Call BEFORE bid/no-bid or compliance work.sam_fetch_description— full SOW/RFP body as plain text (when detail gave a description URL not inline body).sam_fetch_attachment_text— READ the attachment (RFP/SOW/Q&A/wage PDF+DOCX+HTML) by itsattachments[].url. A scanned/image-only or unreadable doc returnstext:null+ disclosed reason (honest, not a bug).sam_attachment_url— build the public download URL for an attachment resourceId (303 → signed S3).sam_lookup_organization— federal-organization id → canonicalfullParentPathName.sam_lookup_notice_fields— batch-fill nulled naics/setAside/PoP/deadline for 1–100 noticeIds from the opt-in GSA daily CSV. OFF by default (returnsenabled:falseuntilSAM_GOV_ENABLE_CSV=1); snapshot can lag ~24h.grants_search— Grants.gov federal grant opportunities (financial assistance, distinct from contracts).grants_get_opportunity— full grant detail (description, dates, award ceiling, applicant types, CFDA).
Spending, awards & competition — USAspending + FPDS + GAO (31)
usas_search_awards— aggregate share-of-wallet at agency × NAICS.usas_search_individual_awards— line-item contracts (returnsgeneratedInternalId).usas_get_award_detail— per-award detail (period_of_performance, options, set-aside, competition, offers) by generatedInternalId.usas_search_awards_by_recipient— a recipient's wins in an agency × NAICS slice.usas_search_subawards— subcontracts on prime awards (supply chain / teaming).usas_search_recompetes— recompete radar (preferred): PoP ending in a window (default −90d..+18mo), soonest-first, no silent drops. Public signals only.usas_search_expiring_contracts— DEPRECATED alias ofusas_search_recompetes(legacy shape).usas_analyze_incumbent— per-award incumbent + PUBLICpressureHints(single_offer / ceiling_nearly_exhausted / hard_stop_no_options) — HINTS, never a composite score.usas_search_teaming_partners— small-business teaming discovery by socioeconomiccert× NAICS × agency, exclusion-screened (certis award-derived, not the SBA cert of record).usas_spending_over_time— contract-spending time series (fiscal_year / quarter / month).usas_search_agency_spending— top buying agencies for a NAICS / set-aside.usas_search_subagency_spending— parent agency → sub-agency / office breakdown.usas_search_psc_spending— spending by Product Service Code (contract market structure).usas_search_cfda_spending— spending by CFDA grant-program code (grants, not contracts).usas_search_state_spending— spending by state / territory.usas_search_federal_account_spending— spending mapped to Treasury Account Symbols (TAS).usas_list_disaster_codes— the complete list of Disaster Emergency Fund Codes (DEFC: COVID-19, IIJA/infrastructure, other emergency laws) with group/title/public law. Call FIRST to get the codes forusas_disaster_spending.usas_disaster_spending— disaster/emergency-fund obligations or outlays BY GEOGRAPHY (state / county / congressional district) for givendefCodes— "which states captured COVID/IIJA relief money". Complete set, no paging; a real $0 stays 0 (IIJA can report $0 obligations with a nonzero awardCount), absent → null.usas_search_recipients— recipient list with parent/child hierarchy (returnsid).usas_get_recipient_profile— full recipient detail (UEI, alternate names, business types, totals).usas_get_agency_profile— agency mission/abbreviation/website/subtier count by toptierCode.usas_get_agency_awards_summary— award activity (transaction count + obligations) by FY.usas_get_agency_budget_function— budget breakdown by program area.usas_list_toptier_agencies— all toptier agencies + current-FY obligations.usas_lookup_agency— ALWAYS call FIRST on an agency abbreviation ('VA'/'DHS'/'CMS') → canonical name + toptier code.usas_autocomplete_naics— anti-hallucination guard: confirm a NAICS code before use.usas_autocomplete_recipient— anti-hallucination guard: confirm exact recipient legal name.usas_naics_hierarchy— navigate the NAICS tree (2→4→6) + active-contract count per code.usas_glossary— 151 federal-spending terms; confirm terminology.fpds_search_awards— FPDS-NG federal contract award actions (the authoritative action feed).gao_protest_lookup— recent GAO bid-protest decisions (public RSS;complete:false— recent ~25-item window only, NOT full history).
Entity & partner vetting — OFAC · SAM · FAC · FDIC · EPA (15)
ofac_screen_entity— OFAC denied-party / sanctions screening.sam_check_exclusions— SAM debarment/exclusion screen by name and/or UEI/CAGE. Empty ≠ "responsible" — only "no ACTIVE match"; a name match isn't identity-proof (verify UEI/CAGE).sam_integrity_lookup— one-call integrity screen;integrityFlag=excludedorreview_fapiis— NEVER "clear" keylessly (FAPIIS has no keyless API); checkfapiisUrl.fac_search_audits— Single Audit summaries from the Federal Audit Clearinghouse.fac_get_findings— drill into audit-RISK findings for an entity.fdic_search_institutions— search the FDIC-insured-institution directory.fdic_institution_financials— quarterly financial time-series for one institution (by cert #).fdic_risk_ratios— counterparty risk ratios for one institution.fdic_institution_history— structural-change event log (mergers, charter changes).fdic_branch_deposits— branch-deposit footprint.fdic_bank_failures— historical bank failures & assistance transactions.fdic_industry_summary— industry & state banking-sector annual aggregates.echo_search_facilities— search EPA-regulated facilities by state with compliance/enforcement screening.echo_facility_report— EPA ECHO Detailed Facility Report for one facility (by FRS RegistryID).epa_tri_facilities— EPA Toxics Release Inventory (TRI) reporting facilities by state / facility name / county (needsstateorfacilityName) — an environmental-footprint / place-of-performance screen. Nominal TRI reporters, NOT a compliance/enforcement finding (use ECHO for that);closedunknown → null.
Financial disclosure — SEC EDGAR (8)
edgar_lookup_cik— company ticker/name → 10-digit SEC CIK.edgar_company_filings— a company's SEC filings.edgar_company_facts— curated XBRL financial facts for a filer.edgar_company_concept— one filer × one XBRL concept × full reported time-series.edgar_xbrl_frames— cross-filer XBRL cross-section (one concept across all filers for a period).edgar_full_text_search— full-text search across EDGAR filings, 2001–present.edgar_filing_index— bulk cross-filer filing index for a quarter.edgar_daily_filing_index— per-day cross-filer filing index.
Regulatory & legislative — Fed Register · Regulations.gov · eCFR · FAR · Congress · GovInfo (19)
fed_register_search_documents— search Federal Register docs by query / agency / type / date.fed_register_get_document— full detail by document_number (citation, body URL, CFR refs).fed_register_public_inspection— the public-inspection desk (pre-publication).fed_register_list_agencies— Federal Register agency slugs reference.regulations_search_dockets— search Regulations.gov rulemaking dockets.regulations_search_documents— search Regulations.gov documents (rules, proposed rules, notices).regulations_search_comments— search public comments on rulemakings.regulations_get_docket— one Regulations.gov docket by id.ecfr_search— full-text search across all of CFR (titleNumber=48 for FAR); returns ranked SNIPPETS. For the FULL text of a hit:far_clause_lookup(FAR/DFARS clause) orecfr_get_section(any other title); or open its ecfrUrl.ecfr_get_section— the FULL in-force text of one CFR section by citation (e.g. title 2 §200.1 grants, title 29 labor). For FAR/DFARS (title 48) preferfar_clause_lookup.ecfr_list_titles— all 50 CFR titles + last-amended dates.far_clause_lookup— authoritative FAR/DFARS clause text + its prescription ("As prescribed in…") for an exact clause number. CarriesfarOverhaulRiskcurrency caveat.far_search— FAR/DFARS-scoped topic search (excludes GSAM, collapses to current in-force version). Feedsfar_clause_lookup.far_compliance_matrix— cited-clause list (1–25) → proposal-ready Section L/M matrix with pass/failgateflags (Section 889 / limitations on subcontracting / CMMC). A 404 →unresolved, an eCFR-down clause → separateerroredbucket; never drops a clause.congress_search_bills— search Congress.gov bills / legislation.congress_get_bill— one bill by congress / type / number.govinfo_search_packages— search GovInfo (GPO-authoritative) packages in a collection.govinfo_get_package— one GovInfo package summary + download links (txt/xml/pdf/mods).govinfo_list_collections— the GovInfo collection catalog.
Pricing, labor & fiscal — GSA CALC · WDs · BLS · Treasury · BEA · Census · FRED · per-diem (15)
gsa_benchmark_labor_rates— GSA CALC awarded-ceiling market band (a min/median/max DISTRIBUTION, fully burdened — do not re-add wrap; not a single price).sam_search_wage_determinations— find SCA / Davis-Bacon wage determination(s) for a locality (filter coverage sca/dba, state, county;querymatches WD number/title, NOT occupation).sam_get_wage_rates— prevailing-wage + fringe/H&W rate table parsed from a WD + EO minimum-wage floor (checkparseConfidence).bls_timeseries— BLS time series (CPI-U / ECI escalation, PPI, employment) — the escalation layer.bls_oews_wages— benchmark occupational wages & employment (OEWS) by area × occupation.bls_qcew— county × NAICS market size: establishment count (competitor density), employment, avg weekly wage, and location quotient (>1.00 = higher concentration). Suppressed cells → null, never $0. Keyless, un-rate-limited (separate BLS domain).treasury_debt_to_penny— daily total US public debt outstanding.treasury_avg_interest_rates— average interest rate Treasury pays by security type.treasury_monthly_statement— Monthly Treasury Statement: receipts, outlays, deficit/surplus by month.treasury_query_dataset— escape-hatch query over 5 confirmed Treasury Fiscal Data datasets.- 🔑
bea_regional_data— regional (county/state/MSA) GDP-by-industry + personal income (BEA Regional; requires free BEA_API_KEY — throws without it; a bad key returns HTTP 200 with an Error object → surfaced as invalid_input; suppression codes → null). - 🔑
census_business_patterns— establishments / employment / annual payroll by NAICS × geography (Census CBP; requires free CENSUS_API_KEY; suppression sentinels → null, never 0; geoId/naicsCode are strings). - 🔑
fred_search_series— search the FRED macro series catalog (GDP/CPI/rates/unemployment/PPI; requires free FRED_API_KEY). Feedidinto observations. - 🔑
fred_series_observations— time-series observations for a FRED series (requires free FRED_API_KEY; missing value '.' → null, never 0). gsa_perdiem_rates— federal travel per-diem: monthly lodging (varies seasonally) + M&IE meal caps by city+state OR zip (keyless via DEMO_KEY; ~10 req/hr shared — set DATA_GOV_API_KEY for more).
Health & research funding — NIH · NSF · ClinicalTrials · CMS · NPPES (9)
nih_reporter_search_projects— awarded NIH RePORTER research-grant projects.nsf_search_awards— awarded NSF research-grant awards.nsf_get_award— one NSF award by numeric award id.clinicaltrials_search_studies— federally-registered clinical studies with sponsor/funder enrichment.clinicaltrials_get_study— one study by NCT id (incl. brief summary).clinicaltrials_facet_counts— exact per-value study-count distribution over the whole registry.cms_search_datasets— discover CMS Open Payments (Sunshine Act) datasets.cms_query_dataset— query a CMS Open Payments distribution (industry → physician payments).nppes_lookup_provider— CMS/HHS NPPES NPI Registry provider lookup.
Healthcare providers & facilities — CMS provider data (5)
All keyless (data.cms.gov); totalAvailable is the exact upstream count, never the page length (the three tools that use a separate count query return null + a note if that count fails). Public organization/provider-level data with no patient identifiers — a market or due-diligence signal, NOT a quality, fraud, or fitness determination.
cms_medicare_provider_services— Medicare Part-B utilization for a provider (npi) orstate(one is REQUIRED): HCPCS services, beneficiaries, and submitted / allowed / paid amounts. Healthcare market sizing and competitor intel; pairs withnppes_lookup_provider(who a provider is → what they bill). One annual vintage, disclosed in_meta.cms_hospital_compare— Medicare-certified hospitals bystateand/orfacilityNamefragment (one is REQUIRED): type, ownership, emergency-services flag, CMS 1–5 star rating ('Not Available' → null, never 0).cms_facility_directory— nursing homes / home health agencies / hospices / dialysis facilities (facilityTypeREQUIRED; optionalstate,facilityName): name, address, ownership. A field the chosen dataset lacks → null, never an empty string.cms_dmepos_suppliers— Medicare durable medical equipment (DMEPOS) suppliers for annpiorstate(one is REQUIRED): HCPCS codes, beneficiaries, claims, and submitted / allowed / paid amounts. The supply-side complement tocms_medicare_provider_services.cms_revoked_providers— CMS's public list of revoked Medicare providers & suppliers (optionalnpi/state/ exactlastName): revocation reason, effective date, re-enrollment bar. Vetting before teaming or subcontracting, in the same class as OFAC / SAM exclusions — not a current-eligibility or guilt finding.
Cyber compliance — NVD + CISA KEV + NIST 800-53 (3)
cve_lookup— NIST NVD CVE records by cveId or keyword/CPE/severity/date, each row JOINED with CISA KEV status (severity + mandated remediation date in one row). not-in-KEV ≠ safe. Optional NVD_API_KEY raises the rate.cisa_kev_lookup— filter the CISA KEV catalog standalone (binding BOD 22-01 / BOD 26-04 due-dates). Works when NVD is rate-limited. not-in-KEV ≠ safe caveat on every response.nist_800_53_controls— NIST SP 800-53 Rev 5 security & privacy controls bycontrolId/family/keyword— the requirement text behind FedRAMP / CMMC / RMF mapping.
Trade, tariffs & logistics — USITC · CBP (2)
hts_lookup— US import-tariff classification + duty rates from the USITC Harmonized Tariff Schedule.cbp_border_wait_times— live CBP land-border commercial-vehicle (freight-truck) wait times at US–Canada and US–Mexico ports (standard + FAST lanes); passenger/pedestrian lanes are not included.
Geo, disaster & state/local open data — Census · FEMA · NWS · Socrata · CKAN (10)
census_geocode_address— one-line US address → matched address + Census geographies (tract, CD, place).census_geographies_by_coordinates— longitude/latitude point → Census geographies.fema_disaster_declarations— FEMA disaster / emergency declarations by state, type, incident, year.fema_search_public_assistance— FEMA Public Assistance funded projects (disaster RECOVERY spend).fema_search_hazard_mitigation— FEMA Hazard Mitigation Assistance projects (HMGP / FMA / PDM / BRIC resilience grants to state/local/tribal subrecipients) — the disaster-RESILIENCE axis.stateaccepts a 2-letter code ('AL') or the full name ('Alabama') — the dataset stores full names and the tool maps codes for you; totalAvailable is the exact filtered total; amounts absent → null.nws_active_alerts— currently-active National Weather Service watches / warnings / advisories (filterstate,event) — live disaster readiness that pairs with the FEMA tools.socrata_discover_datasets— find Socrata dataset 4x4 ids by keyword.socrata_query— query rows from an allowlisted Socrata/SODA open-data portal.ckan_discover_datasets— find CKAN datastore resource ids by keyword.ckan_query— query rows from an allowlisted CKAN datastore resource (state/city spend/checkbook).
SLED bid platforms & state checkbooks — OpenGov · Bonfire · ArcGIS · Tableau · Open Checkbook (8)
opengov_list_governments— directory of 525+ US state/local governments on OpenGov Procurement (filter bystate/query); feed a result'scodeto the next tool.opengov_search_solicitations— a government's LIVE public solicitations (title,status[open = accepting], deadline, portal link). Consumes only the anonymous endpoints the public portal itself calls (keyless).bonfire_list_organizations— curated live-verified 187-org US seed directory of governments on Bonfire (Euna) (filterstate/query); feed a result'sorgto the next tool.bonfire_search_opportunities— an org's currently-open opportunities via keyless RSS (referenceNumber, name,closeDate, link). The RSS is the complete open set (totalAvailable = the exact open count).arcgis_hub_discover_datasets— discover ArcGIS Hub datasets by keyword (GIS / infrastructure / permits / zoning / procurement — the SLED layer Socrata & CKAN don't cover). Global open platform → a DISCOVERY aid (publisher surfaced for vetting), not a curated official-source allowlist.arcgis_feature_query— query rows from a curated allowlist of 29 US-gov ArcGIS REST feature layers: DC OCP PASS live solicitations (~25k); local-gov checkbooks/contracts (Las Vegas, Baltimore, Naperville, Worcester, Topeka, Miami-Dade…); county CIP pipelines (hennepin_transportation_cip= Hennepin County MN transportation capital-improvement projects, ~257 rows;charlotte_mecklenburg_cip= Charlotte-Mecklenburg NC joint CIP, ~2,276 rows — both are CAPITAL-PROJECT PIPELINES, NOT solicitation or award registers); state DOT bid/award registers (TX / AK / IA / OK); North Dakota DOT federal flex-funding award layers (nddot_flex_setaside_road/nddot_flex_partner_road/nddot_flex_setaside_bridge/nddot_flex_partner_bridge). These are NDDOT federal flex-funding AWARDS whose recipients are local public agencies — counties, townships, and cities, named inLPA_NAME/LPA_TYPE— NOT vendors, vendor contracts, or winning bids. Their$amounts (Total_Project_Cost,Flex_Funds_Awarded) are FORMATTED STRINGS; parse them client-side. They are a proxy, since ND's statewide checkbook and procurement portal aren't keyless-reachable. Honest match-count total; epoch-ms date disclosure.tableau_view_csv— a curated US-gov Tableau Server Guest view's COMPLETE CSV export (keyless), paged client-side (view,limit/offset). One view today:mt_contracts_awarded= State of Montana (DOA) Contracts Awarded (~4,554 awards: $ Awarded, Award Date, IFB/RFP Event Type, Event#, Vendor Name, Agency). Use for "who won Montana state contracts". totalAvailable = the full export row count; amounts are FORMATTED STRINGS (parse client-side); empty → null; freshness is the publisher's and can lag.open_checkbook_search— row-level vendor-payment search over a curated Socrata Open Expenditures checkbook portal (keyless;portal, EXACT-matchyear/vendor/org/expenseCategory,sortBy/sortOrder,limit/offset). Two portals:sd= State of South Dakota Open Checkbook (~740,980 payments, ~3 most-recent FYs);ak= State of Alaska Open Checkbook (41,751 payments, $1.18B — FY2026 ONLY; FY2019–FY2025 return count:0 meaning "not published", NOT zero spend — always passyear='2026'). A partial/misspelled filter value → honest count:0, not a fuzzy match; totalAvailable is the real filtered count; freshness is the publisher's and can lag (usesortBy: payment_date,sortOrder: descto see the newest payment date).
SLED local procurement — how the keyless surfaces fit together: (1) socrata_query / socrata_discover_datasets reach 54 curated hosts — state + major-city (NYC City Record, Chicago/SF/LA) + a deep county/city sweep (KC MO, Pittsburgh, Atlanta, Dallas, Baton Rouge, Fulton/Howard/Ramsey/Macoupin/Prince George's counties incl. sharefulton.fultoncountyga.gov, MA-Comptroller CTHRU, USAC E-Rate live bids…) — contracts / vendors / checkbook / live solicitations; (2) opengov_* (525+ govs' live solicitations) and bonfire_* (per-org open-opportunity RSS) for the bid-notice feeds Socrata doesn't carry; (3) arcgis_feature_query for gov ArcGIS-REST layers (DC live solicitations, state DOT bid/award registers, ND DOT flex-funding awards to local public agencies); (4) tableau_view_csv (Montana contracts awarded) and open_checkbook_search (SD ~3 recent FYs; AK FY2026 only) for state payment exports. For a "who's bidding / what's open in " question, try opengov/bonfire first, then the local Socrata host.
State & local data map
Agent-readable lookup: jurisdiction → data type → exact tool call → verified row count → what it is NOT (the most common source of agent error).
State-level open-data sources (verified 2026-09-21, all keyless):
| Jurisdiction | Data | Tool · key args | Rows | NOT |
|---|---|---|---|---|
| Virginia | eVA PO line items 2023 | ckan_query host=data.virginia.gov, resourceId=3c7f1bde-35b0-4fbf-b89c-978a19124d53 |
1,693,227 | the live eVA portal (login-gated); years 2016–2026 have separate resource IDs — ckan_discover_datasets host=data.virginia.gov q=eVA procurement lists them (2024=25a59527, 2025=b8dc22a8, 2026=76f6831d) |
| Massachusetts | Comptroller vendor payments (CTHRU) | socrata_query domain=cthru.data.socrata.com, datasetId=pegc-naaa |
~49M | an award or bid register; these are payment transactions |
| New Jersey | YourMoney agency purchasing by vendor | socrata_query domain=data.nj.gov, datasetId=ubnu-tqu7 |
660,425 | a solicitation or bid register; agency expenditure rows |
| New York | State authority procurement contracts | socrata_query domain=data.ny.gov, datasetId=ehig-g5x3 |
275,763 | all NYS agencies (authorities only) and NOT active solicitations |
| New York | MTA procurement contracts | socrata_query domain=data.ny.gov, datasetId=twsw-2mqa |
107,503 | a live MTA bid portal; MTA historical contract records |
| Washington | Agency contract register | socrata_query domain=data.wa.gov, datasetId=s8d5-pj78 |
79,329 | a solicitation or bid feed; awarded contract records |
| Washington | Master-contract sales by vendor/customer | socrata_query domain=data.wa.gov, datasetId=n8q6-4twj |
245,831 | open bids; sales reported off statewide master contracts |
| Montana | DOA contracts awarded | tableau_view_csv view=mt_contracts_awarded |
~4,554 | a bid portal; awarded records only, freshness set by publisher |
| South Dakota | Open Checkbook vendor payments | open_checkbook_search portal=sd |
~741k | an award register; only ~3 most-recent FYs, exact-match filters |
| Alaska | Open Checkbook vendor payments (FY2026 ONLY) | open_checkbook_search portal=ak, year=2026 |
41,751 | historical FY coverage — ONLY FY2026 published; FY2019–FY2025 return count:0 meaning "not published" NOT "zero spend". Always pass year=2026. |
| Illinois | CDB capital project future bids | socrata_query domain=data.illinois.gov, datasetId=6rb8-ntpm |
48 | a comprehensive solicitation feed, and NOT currently open bids — ~48 CDB capital solicitations "anticipated for a future date, but have not been posted yet" (publisher) |
| Illinois | IDHR certified eligible bidders | socrata_query domain=data.illinois.gov, datasetId=w8h2-q8hu |
7,848 | a bid or award register; vendor-eligibility directory only |
| Texas | TxDOT current lettings (★live bid-line items) | socrata_query domain=data.texas.gov, datasetId=qh8x-rm8r |
8,861 | rows are bid LINE ITEMS not projects (8,861 rows = 412 distinct project_ids — use $select=count(distinct project_id) for open-bid count); TxDOT highway lettings ONLY; rolling window (past lettings dropped). ★First live state solicitation feed in this map. |
| Texas | DIR Cooperative Contract Sales FY2010–FY2025 (archive) | socrata_query domain=data.texas.gov, datasetId=w64c-ndf7 |
10,749,743 | bids or awards; purchase line items off DIR cooperative contracts (historical) |
| Texas | DIR Cooperative & Tele Contract Sales FY2026 | socrata_query domain=data.texas.gov, datasetId=a743-wj72 |
2,077,855 | historical FY2026 purchase lines (same shape as w64c-ndf7); not bids |
| Texas | DIR Current Active Cooperative Contracts | socrata_query domain=data.texas.gov, datasetId=vipt-h4ye |
5,167 | a solicitation feed; active cooperative contract register (not TxDOT lettings) |
| Texas | TCEQ Current Contracts & Purchase Orders | socrata_query domain=data.texas.gov, datasetId=svjm-sdfz |
2,067 | statewide; one agency (TCEQ) only |
| California | DGS Purchase Order Data 2012–2015 | ckan_query host=data.ca.gov, resourceId=bb82edc5-9c78-44e2-8947-68ece26197c5 |
344,504 | the live Cal eProcure portal (WAF-403); FY2012–2015 only — no post-2015 rows |
| California | DGS-Approved Non-Competitive Bids | ckan_query host=data.ca.gov, resourceId=14932789-485b-481b-910a-dafb40d3471c |
480 | open competitive solicitations; a sole-source / non-competitive AWARD register |
| Oklahoma | Vendor Payments FY2019 Q1 (OMES) | ckan_query host=data.ok.gov, resourceId=cc443616-15eb-4a1f-8d87-93e5711ac43c |
286,185 | bids or awards; vendor PAYMENTS — per-quarter resources, so one fiscal year is 4 calls (FY2011/2017/2018 also published) |
| Maryland | eMaryland Marketplace (eMMA) bids — FY2018 exemplar | socrata_query domain=opendata.maryland.gov, datasetId=pgna-cxjh |
107,303 | rows are bid LINE ITEMS not bids — FY2018 is 107,303 rows for only 3,067 bids (35× overcount); always use $select=count(distinct bid_number) for actual bid count. Coverage stops at FY2019 — eMMA migrated to Periscope mid-FY2019; no FY2020+ mirror exists and this cannot answer current Maryland bid questions. All six FY datasetIds: FY2018=pgna-cxjh, FY2017=qkjf-rv4t (64,331/4,943), FY2016=7ang-84wj (45,204/4,818), FY2015=3hzs-sazv (46,895/4,898), FY2014=itax-4ccz (45,551/4,884), FY2019=ttg5-zfzj (4,623/388). |
| Oregon | OregonBuys Purchases and Contracts FY2022–FY2025 | socrata_query domain=data.oregon.gov, datasetId=qyug-f2km |
109,119 | open solicitations — issued purchase orders and contracts (not bids). 92,224 distinct po_nbr. Historical ORPIN datasets (retired system): Contracts Issued=6e9e-sfc4 (93,846 rows), Contracts Expired=8izy-bwhd (92,755), Statewide Price Agreement Spend=gart-52me (5,224). |
| Vermont | Purchase Orders with Vendor Information (current FY, live-ish) | socrata_query domain=data.vermont.gov, datasetId=8ewu-igdm |
111,271 | a bid or award register — issued purchase orders. 39,882 distinct po_id (~2.8 line items per PO). po_date 2025-07-02 → 2026-06-19 (current fiscal year, live-ish state spend, not an archive). |
| City of Denver | City of Denver Procurement Transactions (on CO state portal) | socrata_query domain=data.colorado.gov, datasetId=66zf-qjdd |
76,357 | Colorado STATE procurement — City of Denver spend hosted on the CO state portal; the domain does NOT indicate jurisdiction. Updated 2026-09-20. |
| City of Denver | City of Denver Checkbook (on CO state portal) | socrata_query domain=data.colorado.gov, datasetId=wnau-xrqi |
154,595 | Colorado STATE procurement — City of Denver checkbook data hosted on the CO state portal; the domain does NOT indicate jurisdiction. Updated 2026-09-20. |
| Fulton County GA | Vendor Payments 2014–present (sharefulton portal) | socrata_query domain=sharefulton.fultoncountyga.gov, datasetId=kp4p-scak |
226,797 | data.fultoncountyga.gov (a DIFFERENT host, also allowlisted). Fields: fiscal_year, fy_period, disb_date, dept, department_name, unit, unit_name, object, object_name, fund, fund_name, amount, vendor_code, vendor_legal_name. Updated 2026-09-14. |
County & city — Socrata hosts (use socrata_discover_datasets to find dataset IDs):
| Jurisdiction | Tool · domain | Data available | Notes |
|---|---|---|---|
| NYC | socrata_query domain=data.cityofnewyork.us |
City Record solicitations + contracts | Live bids and awarded contracts; discover IDs first |
| Chicago | socrata_query domain=data.cityofchicago.org |
Contracts, vendor payments | Checkbook and awarded contracts |
| Austin TX | socrata_query domain=data.austintexas.gov or datahub.austintexas.gov |
Solicitations + spending | Multiple datasets; discover IDs first |
| Dallas TX | socrata_query domain=www.dallasopendata.com |
Vendor/contract data | Contracts and spending |
| LA City | socrata_query domain=controllerdata.lacity.org or data.lacity.org |
Controller spending | Payment records; not a solicitation feed |
| King County WA | socrata_query domain=data.kingcounty.gov |
Contracts + spending | Discover dataset IDs |
| Cook County IL | socrata_query domain=datacatalog.cookcountyil.gov |
Contracts + checkbook | Checkbook and contract data |
| Montgomery County MD | socrata_query domain=data.montgomerycountymd.gov |
Vendor payments | Discover dataset IDs |
| Hennepin County MN | arcgis_feature_query view=hennepin_transportation_cip |
Transportation CIP pipeline | ~257 rows; capital-project pipeline — NOT solicitations or awards |
| Charlotte-Mecklenburg NC | arcgis_feature_query view=charlotte_mecklenburg_cip |
Joint city-county CIP pipeline | ~2,276 rows; capital-project pipeline — NOT solicitations or awards |
State portals with no keyless procurement content (measured absence, 2026-09-21):
- Login-gated or WAF-blocked live-bid portals: CA (Cal eProcure), TX ESBD/TxSmartBuy non-TxDOT (TxDOT lettings ARE available via
qh8x-rm8rabove), OH (OH|ID), NC (NC eProcurement), MI (SIGMA), and the Periscope-based portals for IL, MA, and NJ. These states have Socrata/CKAN mirrors for past spend (rows above); what they lack is a keyless live non-TxDOT bid feed. - Portal live, no procurement data: PA (
data.pa.govis live and allowlisted; scoped catalog returns 0 bid/vendor/procurement datasets). Michigan (data.michigan.gov) was checked 2026-09-21 and carries only NIGP commodity code reference tables (w3u3-uptp9,333 rows;jv5q-yp8x235 rows) — not procurement transactions. - No state-level open-data portal: FL (
data.fl.govNXDOMAIN — domain does not exist), GA (data.georgia.govNXDOMAIN). These are measured absences, not connectivity blocks — there is no state portal to reach.
Dataset & registry discovery — data.gov · get.gov (2)
datagov_search_datasets— search the data.gov v4 catalog for federal open datasets across all publishing agencies.search_gov_domains— the authoritative CISA get.gov .gov domain registry (resolve which org owns a.gov; enumerate federal agencies; map SLED entities by state / domain type).
Small business — SBA (1)
sba_size_standard— SBA size standard for a 6-digit NAICS (set-aside eligibility gate). Returns standardType (receipts/employees/assets), normalized threshold, unit, footnote; value isasOfretrieval — re-verify for high-stakes eligibility.
Labor compliance — US DOL (2)
dol_list_datasets— browse the DOL enforcement/compliance dataset catalog (WHD wage-hour, OSHA, OFCCP, ILAB, MSHA…). Keyless. agency/query filtering is client-side. Feed a row'sapiUrl+agencyAbbrinto the next tool.- 🔑
dol_get_dataset— fetch records from ONE DOL dataset (requires free DOL_API_KEY — data endpoint has no keyless tier, throws without it). Records surfaced VERBATIM (envelope key-gated/unverified); totalAvailable null unless the response carries a real count.
Lobbying & influence — US Senate LDA (1)
lda_search_filings— Senate lobbying filings: who is paid HOW MUCH to lobby WHICH agency on WHICH issue (keyless; optional LDA_API_KEY raises the rate). totalAvailable is the API's real ~1.95M-filing match count, not page rows; income/expenses null-never-0.
Server utilities — key discovery · feedback (2)
api_key_status— list every key the server can use, required vs optional, signup URL, what it unlocks, and whether each is currently set (a boolean — the value is NEVER shown). The live source of truth for key config.feedback— build a PREFILLED GitHub issue link (bug / feature / wrong_output) for the USER to open & submit (the server never posts). Use when the user reports a problem or wants a missing capability.schema_drift/upstream_unavailableerrors also carry areportURL.
Product safety & recalls — openFDA · NHTSA · CPSC (6)
openfda_enforcement— drug/device/food recalls & FDA enforcement (recalling firm, Class I/II/III, reason, state).openfda_device_clearances— FDA 510(k) medical-device clearances (applicant, device, K-number).openfda_drug_approvals— Drugs@FDA approved applications (sponsor, products, submissions).nhtsa_recalls— NHTSA vehicle recalls by make/model/modelYear.nhtsa_complaints— NHTSA consumer safety complaints by make/model/modelYear.cpsc_recalls— CPSC consumer-product recalls.
Litigation & courts — CourtListener (1)
courtlistener_search_opinions— US federal court opinions (COFC bid-protest / contract-claim, CAFC). Free Law Project (non-.gov; provenance disclosed).
Nonprofit vendors — IRS 990 via ProPublica (2)
nonprofit_search— tax-exempt orgs by name/state/NTEE (IRS Form 990). Provenance: ProPublica (non-.gov).nonprofit_financials— a nonprofit's 990 financials by EIN.
Standard workflows
Workflow 1 — Discover + qualify a single opportunity
sam_search_opportunities(NAICS/agency/state) — orsam_search_shapingfor pre-RFP Sources Sought/Presol.- Best hit:
sam_get_opportunity(noticeId)for POCs +attachments[]. - SOW depth:
sam_fetch_descriptionfor full RFP text. - Read the attachments (Workflow 8).
- (Optional)
usas_get_agency_profilefor issuing-agency context.
Workflow 2 — Competitive landscape ("who wins at agency X")
- If agency is an abbreviation:
usas_lookup_agencyfirst (canonical name + toptier code). usas_search_awardswith canonical name + NAICS + FY.- Line items:
usas_search_individual_awards. Award actions:fpds_search_awards. - Office-level:
usas_search_subagency_spending. - (Optional)
usas_spending_over_timefor the trend.
Workflow 3 — Recompete radar
usas_search_recompetesfor agency × NAICS (window −90d..+18mo; filter pscCodes/setAside/minAwardValue). Soonest-first.- Per candidate:
usas_get_award_detail(PoP + set-aside + competition) orusas_analyze_incumbent(incumbent + publicpressureHints). - Cross-reference
sam_search_shaping(same NAICS) to catch pre-RFP shaping while still shapeable.
Workflow 4 — Teaming / supply-chain map
usas_search_individual_awardsfor prime awards at the target agency.usas_search_subawardsfiltered by prime → sub network.- Per sub:
usas_get_recipient_profile(alternate names/hierarchy) +sba_size_standard(naics)(small for the set-aside?). - Find NEW partners:
usas_search_teaming_partners(cert, naics, agency)— ranked, exclusion-screened (see Workflow 10).
Workflow 5 — Capture brief / agency intelligence
usas_lookup_agency→ canonical name + toptier code.usas_get_agency_profile— mission + scale.usas_get_agency_budget_function— where the budget goes.usas_search_subagency_spending— buying offices.usas_spending_over_time(group=fiscal_year) — multi-year trend.usas_search_state_spending— geographic distribution.
Workflow 6 — Regulatory context for a pursuit
ecfr_search(titleNumber=48 for FAR) — the relevant section text.regulations_search_dockets/regulations_search_documents— open rulemakings;regulations_search_commentsfor public comment.fed_register_search_documents(agency + recent range) →fed_register_get_documentfor the exact citation + body.fed_register_public_inspectionfor pre-publication.- (Statute)
congress_search_bills→congress_get_bill;govinfo_search_packagesfor GPO-authoritative source. Quote ≤1 short snippet (<15 words); always cite the section path / citation.
Workflow 7 — Grants pivot
grants_search(keyword / CFDA).grants_get_opportunity— full grant detail.- (Optional)
usas_search_cfda_spending— who already wins that program. Research grants:nih_reporter_search_projects/nsf_search_awards.
Workflow 8 — Read the solicitation documents
sam_search_opportunities/sam_search_shapingto find the notice.sam_get_opportunity(noticeId)→ theattachments[]array.- Per
attachments[].url:sam_fetch_attachment_text(url)(PDF+DOCX+HTML; only sam.gov URLs fetched). - Read the returned
text. Atext:null= honest (scanned/image-only or unreadable-keyless, reason disclosed) — don't fabricate; respecttruncated(raise maxChars / page).
Workflow 9 — FAR/DFARS compliance check
far_search(query, scope: far|dfars|both)— the clauses on a topic (excludes GSAM, current version).far_clause_lookup(clauseNumber)— authoritative text + prescription. Use this, NOTecfr_search, for an exact clause.far_compliance_matrix(clauses[])— cited-clause list → per-clause text + prescription + eligibility-gatematrix (flags 889 / limitations on subcontracting / CMMC; 404 →unresolved, eCFR-down →errored, none dropped).- Currency caveat: every response carries
farOverhaulRisk— verify the controlling class deviation for high-stakes gates.
Workflow 10 — Vet a firm / teaming partner
ofac_screen_entity(name)— sanctions / denied-party screen.sam_check_exclusions(name|uei)— debarred/excluded? (empty ≠ responsible; verify UEI/CAGE on a name match.)sam_integrity_lookup(uei|cage|name)— one-call integrity (integrityFlag= excluded or review_fapiis; never "clear" keylessly — checkfapiisUrl).fac_search_audits→fac_get_findings— adverse Single Audit findings.- (Financial firm)
fdic_search_institutions→fdic_risk_ratios/fdic_institution_financials— bank health. - (Facility)
echo_search_facilities→echo_facility_report— EPA compliance/enforcement;epa_tri_facilitiesfor the toxics-release footprint. (Healthcare firm)cms_revoked_providers— Medicare revocation list. - (Public co.)
edgar_lookup_cik→edgar_company_facts/edgar_company_filings— revenue trend + 10-K. sba_size_standard(naics)— small for the set-aside NAICS?
Workflow 11 — Price a bid
sam_search_wage_determinations(coverage, state, county)— the SCA/DBA WD(s) governing the place of performance.sam_get_wage_rates(wdNumber)— the statutory prevailing-wage + fringe/H&W floor (checkparseConfidence, readrawwhen low).gsa_benchmark_labor_rates(laborCategory)— GSA CALC awarded-ceiling market band (fully burdened; don't re-add wrap) to sanity-check proposed rates.- (Travel)
gsa_perdiem_rates(city+state | zip)— lodging + M&IE caps for the cost basis.
Workflow 12 — Market sizing (NEW)
Estimate the addressable market for a NAICS × geography:
bls_qcew(mode, area|industry, year, quarter)— establishment count (competitor density), employment, avg weekly wage, location quotient (keyless).- 🔑
census_business_patterns(naics, geography, state)— establishments / employment / annual payroll (needs CENSUS_API_KEY). - 🔑
bea_regional_data(tableName, geoFips, lineCode)— regional GDP-by-industry / personal income (needs BEA_API_KEY). - (Occupational depth)
bls_oews_wages(area, occupation)— wage/employment for the labor category. The establishments/employment/wages + GDP triad; onlycensus_business_patternsandbea_regional_dataneed a key.
Workflow 13 — Macro / bid-escalation context (NEW)
- 🔑
fred_search_series(query)— find the right series id (e.g. 'CPI', 'GDP', '10-year treasury'; needs FRED_API_KEY). - 🔑
fred_series_observations(seriesId, startDate, endDate)— the CPI/GDP/rate time series (missing '.' → null). - Cross-check with
bls_timeseries(CPI-U / ECI for an escalation clause) andtreasury_avg_interest_ratesfor cost-of-money context.
Workflow 14 — Influence / competitive lobbying (NEW)
lda_search_filings(agency, issue)— who lobbies the target agency, on what, for how much (keyless).- Narrow by
registrantName/clientNameto profile a competitor's B2G footprint (income/expenses null-never-0; totalAvailable is the real match count, not page rows).
Workflow 15 — Labor-compliance vetting (NEW)
dol_list_datasets(agency|query)— find the WHD wage-hour / OSHA inspection dataset (keyless catalog); grab a row'sapiUrl+agencyAbbr.- 🔑
dol_get_dataset(agency, table, filterField, filterValue)— pull the enforcement records for a partner (needs DOL_API_KEY; records surfaced verbatim).
Workflow 16 — Cyber compliance (NEW)
For FedRAMP / CMMC / SBOM component review:
cve_lookup(cveId | keyword)— severity + CISA KEV status joined in one row.cisa_kev_lookup(cveId | vendorProject)— standalone KEV membership + the binding remediation due-date (works even when NVD is rate-limited). not-in-KEV ≠ safe.
Workflow 17 — Health / research pursuit (NEW)
nih_reporter_search_projects/nsf_search_awards— awarded research grants on a topic (funder/competitive intel).clinicaltrials_search_studies→clinicaltrials_get_study;clinicaltrials_facet_countsfor the distribution.cms_search_datasets→cms_query_dataset— CMS Open Payments industry→physician payments;nppes_lookup_providerto confirm a provider NPI.- (Healthcare market)
cms_medicare_provider_services/cms_dmepos_suppliers(what providers and equipment suppliers bill Medicare, by NPI or state);cms_hospital_compare/cms_facility_directory(where facilities are, ownership, CMS star rating). Screen a healthcare partner withcms_revoked_providers.
Workflow 18 — Config / which keys are set (NEW)
api_key_status— the live source of truth: every key, required vs optional, signup URL, what it unlocks, and whether it's currently set (boolean; value never shown).- For the 4 required keys not set, point the user to the signup URL (see Keys section). To confirm a key WORKS, call that source's own tool.
Output discipline (anti-hallucination)
- Cite tool calls inline: "VA awarded $410M to Booz Allen across 28 contracts in FY26 (
usas_search_awards)." - Never invent notice IDs, NAICS codes, recipient names, contract amounts, regulation citations. If a tool returns nothing, say so.
- Use autocomplete guards FIRST: NAICS theme →
usas_autocomplete_naics; recipient name →usas_autocomplete_recipient; agency abbreviation →usas_lookup_agency. - Quote sparingly from RFP body / regulation text — at most 1 snippet, < 15 words; point to the source URL.
totalAvailableis the real upstream total, not the rows on this page — report it as the match count; page forward whenhasMore.- Suppression / missing → null, never 0 — Census/BEA/QCEW/FRED/per-diem/LDA all map a withheld or missing value to null; a genuine 0 is preserved. Never read a null as "$0".
- Key-required tools throw without a key — the 5 🔑 tools (Census, FRED×2, BEA, DOL data) return an honest config error, not a fake empty. Check
api_key_status. - Notice IDs starting with
demo-are fictional demo fixtures; they don't exist on sam.gov.
Common pitfalls
- ❌ "VA" passed directly as
agencyto USAspending → nothing. ✅usas_lookup_agency("VA")first. - ❌ Searching opportunities with no
ncode/query— useless deluge. ✅ Always narrow. - ❌ Quoting an old noticeId from training — they expire. ✅ Always fresh
sam_search_opportunities. - ❌
sam_fetch_descriptionbeforesam_get_opportunity— you don't have the noticeId yet. - ❌ Confusing
usas_search_cfda_spending(grants) withusas_search_psc_spending(contracts). - ❌ A NAICS code from training unverified — they get retired. ✅
usas_autocomplete_naics. - ❌ Treating
sam_fetch_attachment_texttext:nullas a bug — it's honest (image-only / unreadable-keyless, reason disclosed). - ❌
ecfr_searchfor an exact FAR clause (e.g.52.212-4) — mis-ranks GSAM552.212-4. ✅far_clause_lookup(exact) /far_search(topic). - ❌ Reading
ofac_screen_entity/sam_check_exclusions/sam_integrity_lookupempty as "responsible" — empty = "no ACTIVE match"; FAPIIS has no keyless API (never "clear"). ✅ Also checkfapiisUrl; verify UEI/CAGE. - ❌ Expecting
sam_lookup_notice_fieldsto just work — OFF by default (enabled:falseuntilSAM_GOV_ENABLE_CSV=1). ✅ Few notices →sam_get_opportunityeach. - ❌ Treating
gsa_benchmark_labor_ratesas a single price or adding wrap — it's a fully-burdened CEILING distribution. - ❌
gao_protest_lookupiscomplete:false(recent ~25-item feed only), not full history. - ❌ Calling a 🔑 tool (Census/FRED/BEA/
dol_get_dataset) with no key — it THROWS. ✅api_key_statusfirst; set the free key. - ❌ Reading a Census/BEA/QCEW/FRED null as
0— it's suppression/missing, never zero. - ❌ Reporting a page's row count as the total —
totalAvailableis the real upstream match count (e.g. LDA's ~1.95M corpus); page forward onhasMore. - ❌ Summing
bls_qcewrows across aggregation levels / ownerships — the file mixes them; a do-not-sum note rides every response. - ❌ Treating a CVE/component not on CISA KEV as "safe" — KEV is a curated subset of confirmed in-the-wild exploitation; absence ≠ unexploited.
- ❌ Coercing
dol_get_datasetrecords — the envelope is key-gated/unverified, so rows are surfaced VERBATIM; totalAvailable is null unless the response carries a real count.
Keys & rate limits
Most tools are keyless. Ask the server live with api_key_status — it lists every key, whether required or optional, the free signup URL, what it unlocks, and whether each is currently set (a boolean; the value is never shown). Set keys via the host env block OR a .env file in the server's working directory (auto-loaded; real env wins). Every key below is free.
Required — the source has NO keyless tier, so the tool throws without it:
| Env var | Unlocks | Free signup |
|---|---|---|
CENSUS_API_KEY |
census_business_patterns |
api.census.gov/data/key_signup.html |
FRED_API_KEY |
fred_search_series, fred_series_observations |
fred.stlouisfed.org/docs/api/api_key.html |
BEA_API_KEY |
bea_regional_data |
apps.bea.gov/API/signup/ |
DOL_API_KEY |
dol_get_dataset (the DOL data endpoint; dol_list_datasets catalog is keyless) |
dataportal.dol.gov/registration |
Optional — only raise a rate limit or unlock one filter (the tools these keys affect all work without them):
| Env var | Effect |
|---|---|
SAM_GOV_API_KEY |
authenticated SAM.gov v2 search + the organizationName filter + full archive (>~12mo) |
DATA_GOV_API_KEY |
higher limits across api.data.gov sources (Regulations.gov, Congress.gov, GovInfo, FAC, data.gov catalog, GSA per-diem) — lifts the shared DEMO_KEY cap |
LDA_API_KEY |
higher rate on lda_search_filings |
BLS_API_KEY |
BLS v2 tier (~500/day vs keyless ~25/day) for bls_timeseries (QCEW/CSV path is un-rate-limited regardless) |
NVD_API_KEY |
higher NVD rate for cve_lookup |
SOCRATA_APP_TOKEN |
higher Socrata throttling limits |
Creating the account at a signup URL is the one manual step; the server automates discovery (api_key_status) and configuration (.env). To confirm a key actually works, call that source's own tool.
Reporting problems & requesting features
This server has a built-in, PULL-only feedback path — use it to help the user improve the tool:
- On a
schema_driftorupstream_unavailableerror, the{ ok: false, error }envelope carries areportURL (a prefilled GitHub issue link). If the failure looks real or persistent, offer it: "This looks like the government API changed / is down — you can report it here:<report URL>." - When the user reports a bug, says a result looks wrong, or wants a capability this server lacks, call the
feedbacktool withkind(bug|feature|wrong_output), optionaltool, and a short non-sensitivesummary. It returns areportUrlfor the user to open and submit.
Never post anything yourself — the server only builds the link; the human opens and submits it. The repo is public, so never put secrets, personal data, or sensitive query values in summary (and tell the user to redact them).
Toolset profiles (MCP_SAM_GOV_TOOLSETS)
If the server is configured with a toolset profile (e.g. MCP_SAM_GOV_TOOLSETS=core,sled), some tools may not be loaded. When a tool is unavailable because of a profile, you receive a tool_not_loaded error naming the toolset and the exact MCP_SAM_GOV_TOOLSETS value to set — it always suggests the union of the currently loaded sets and the needed set (e.g. MCP_SAM_GOV_TOOLSETS=core,vetting) so the user's existing profile is not dropped. Tell the user to update their server configuration with the suggested value, or use MCP_SAM_GOV_TOOLSETS=all to load everything. feedback and api_key_status are always available regardless of the active profile.