USASpending.gov

com.1102tools由 1102tools.com 发布官方发布者v1.0.29更新于 Nov 3, 2026

USAspending.gov contracts, grants, loans, subawards, recipients, agencies, and federal accounts.

发布方自己的服务:Acquisition.gov

已验证Streamable HTTP可网页运行金融数据与分析商业与电商

概览

AI 生成的概览

封装 USAspending.gov 公开 API,让助手查询联邦合同、拨款、贷款、分包、受助方、机构和联邦账户数据。

可以做什么
  • 检索并汇总奖项、交易记录,按时间、类别或地理维度统计支出
  • 获取单个奖项详情、修改历史、资金记录以及 IDV 下的子订单
  • 检索 FFATA 分包报告,并按已报告分包总额对主合同排序
  • 查询受助方、其档案、子公司以及新奖项趋势
  • 查看机构、下属机构、预算资源、联邦账户和支出对象类别
  • 提供 NAICS、PSC、CFDA、机构名称和术语的自动补全与参考查询
适用场景
适合联邦采购与拨款研究:供应商格局、机构支出趋势、奖项历史、分包报告和地区分布,直接基于公开政府数据回答,无需手工调用 API。
运行要求
可作为远程托管端点使用,也可通过 PyPI 包 usaspending-gov-mcp 在本地运行(Python,可用 pip 或 uvx)。无需 API 密钥、账户或环境变量,但需要能访问 USAspending.gov 的网络。可选设置 USASPENDING_TOOL_PROFILE 以只暴露 20 个工具而非全部 55 个。
安装前请注意
仅对公开数据进行只读查询,不索取任何凭据。数据来自 USAspending.gov,各机构更新存在延迟(国防部采购数据约延迟 90 天);部分工具返回的是累计或部分总额,并非特定期间或净新增支出。README 提醒 PyPI 上同名相近的 usaspending-mcp 是无关的第三方包,安装时需使用正确的包名。

安装

在 SourceWeft 中

  1. 打开 控制台中的 USASpending.gov,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/com.1102tools%2Fusaspending-gov-mcp/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "usaspending-gov": {
      "type": "http",
      "url": "https://usaspending.1102tools.com/mcp"
    }
  }
}

README

usaspending-gov-mcp

[price: free] [license: MIT] [tools: 55] [regression tests]

Free, open-source MCP server for the USAspending.gov API: contracts, grants, loans, subawards, recipients, agencies, and federal accounts.

Overview, demo video and hosted setup: https://1102tools.com/mcp/usaspending

No API key required, locally or hosted. See Local or hosted.

Regression tests, including live checks against the USAspending API. The October 2026 releases were also checked with realistic contracting questions across all 55 tools (award histories, fiscal-year totals, subcontract reports, federal accounts). See testing.md.

Local or hosted

Local (desktop)Claude (hosted)ChatGPT (hosted)
Local setupInstallInstall
  • Local runs it on your computer, inside the Claude or ChatGPT desktop app or another AI app. You get your own full rate limits, and it relies only on the government service. It doesn't update itself, so ask your AI to update it. You don't have to set it up by hand: give your AI this page's link and ask it to set it up or walk you through it.
  • Hosted is always up to date, needs no setup or keys, and works in Claude or ChatGPT anywhere.

Compare local and hosted · Matching prompts

What it does

Exposes the USAspending.gov REST API as 55 MCP tools covering:

Search and aggregation

  • search_awards - Primary search for contracts, IDVs, grants, loans, direct payments
  • program_numbers filter - Narrow grants, loans, and other assistance to an assistance listing (CFDA) number, such as 93.778 for Medicaid. Works on search_awards, get_award_count, spending_over_time, spending_by_category, spending_by_subaward_grouped, spending_by_transaction, and spending_by_geography. Find numbers by program name with autocomplete_cfda.
  • get_award_count - Dimensional counts across award categories
  • spending_over_time - Time series aggregation (fiscal year, quarter, month)
  • spending_by_category - Top N breakdowns by agency, vendor, NAICS, PSC, state, etc.
  • spending_by_transaction - Modification-level transaction search
  • spending_by_geography - State, county, or congressional district breakdown
  • new_awards_over_time - Pipeline trend for a recipient

Award detail

  • get_award_detail - Full record for a single award
  • get_transactions - Full modification history for an award
  • get_award_funding - File C funding data (Treasury account, object class, program activity)
  • get_award_funding_rollup - Single-line funding summary
  • get_award_subaward_count, get_award_federal_account_count, get_award_transaction_count
  • get_idv_children - Task/delivery orders under an IDV
  • awards_last_updated - Data freshness check

Subawards (FFATA)

  • search_subawards - Subawards under a single prime
  • spending_by_subaward_grouped - Matching prime awards with cumulative reported subaward totals

Recipients

  • search_recipients - Search recipients by keyword
  • get_recipient_profile - Full recipient record
  • get_recipient_children - Subsidiaries of a parent recipient
  • autocomplete_recipient - Find recipient names by partial name
  • list_states - All states with FIPS codes

For a recipient workflow, take a name from autocomplete_recipient to search_recipients. Use the returned id hash for profiles and new-award trends. To retrieve subsidiaries, pass the parent (-P) row’s uei (or legacy duns) to get_recipient_children; that tool accepts UEI/DUNS.

Agency depth

  • list_toptier_agencies, get_agency_overview, get_agency_awards
  • get_agency_budgetary_resources - Budget resources by FY
  • get_agency_sub_agencies - Subordinate orgs with obligations
  • get_agency_federal_accounts - Funding sources (TAS)
  • get_agency_object_classes - Spending categories (OMB)
  • get_agency_program_activities - Program-level breakdown
  • get_agency_obligations_by_award_category - Contract vs grant mix

IDV depth

  • get_idv_amounts - Top-line IDV rollup
  • get_idv_funding, get_idv_funding_rollup - File C for IDV
  • get_idv_activity - Child orders under an IDV

Federal accounts (Treasury)

  • list_federal_accounts - Search TAS
  • get_federal_account_detail, get_federal_account_object_classes, get_federal_account_program_activities, get_federal_account_fy_snapshot

Autocomplete

  • autocomplete_psc, autocomplete_naics
  • autocomplete_awarding_agency, autocomplete_funding_agency
  • autocomplete_cfda (grants), autocomplete_glossary, autocomplete_recipient

Reference data

  • get_naics_details, get_psc_filter_tree
  • get_award_types_reference - All award type codes (A=BPA Call etc.)
  • get_def_codes_reference - Disaster Emergency Fund codes (COVID, IIJA, IRA)
  • get_glossary - Acquisition/spending vocabulary
  • get_submission_periods - Agency reporting period coverage
  • get_state_profile - State-level spending profile

Workflow convenience

  • lookup_piid - Auto-detects contract vs IDV and returns the matching award

Installation

Via pip

bash
pip install usaspending-gov-mcp

Via uvx (recommended, no venv needed)

bash
uvx --refresh-package usaspending-gov-mcp --from usaspending-gov-mcp usaspending-mcp

The --from is required for this server and only this server. The PyPI package is usaspending-gov-mcp but the console script it installs is usaspending-mcp, so a bare uvx usaspending-gov-mcp fails with "An executable named usaspending-gov-mcp is not provided by package usaspending-gov-mcp".

Do not run uvx usaspending-mcp either. usaspending-mcp is an unrelated third-party package on PyPI, not this project.

From source

bash
git clone https://github.com/1102tools-dev/federal-contracting-mcps.gitcd federal-contracting-mcps/servers/usaspending-gov-mcppip install -e .

Configuration

Use the configuration below as the server definition and adapt its placement to your compatible MCP client. For practical requests using this source, see the prompt library.

json
{  "mcpServers": {    "usaspending": {      "command": "uvx",      "args": ["--refresh-package", "usaspending-gov-mcp", "--from", "usaspending-gov-mcp", "usaspending-mcp"]    }  }}

The --refresh-package flag tells uv to check PyPI for a newer release each time your client launches the server, so fixes arrive automatically; without it, uv keeps serving whatever version it first cached. It adds a moment of network time at startup, so raise your platform's MCP startup timeout if it enforces a short one.

If you installed via pip install -e . or a regular pip install:

json
{  "mcpServers": {    "usaspending": {      "command": "python",      "args": ["-m", "usaspending_gov_mcp.server"]    }  }}

Restart the client and the tools appear.

Tool profiles

Standalone use defaults to USASPENDING_TOOL_PROFILE=full, which exposes all 55 tools. Packaged acquisition agents set USASPENDING_TOOL_PROFILE=acquisition-agent to expose a stable 20-tool subset covering core award search, spending, agency, recipient, NAICS, PSC, transaction, and subaward operations. An unknown profile stops startup with a clear error instead of silently changing the catalog.

Example prompts

Once configured, try:

  • "Show me the top 10 NAVSEA contracts awarded in FY2025 by dollar value."
  • "Find all software development contracts at NASA with sole-source justifications in the last year."
  • "How much has Leidos received in federal awards since 2020? Group by fiscal year."
  • "What are the top 15 recipients of HUBZone set-aside contracts at DoD?"
  • "Pull the full modification history for PIID N00024-24-C-0085."
  • "Compare FFP vs T&M award counts for IT services at Air Force in FY2024."

Design notes

  • No authentication required. USAspending.gov is a free, public API.
  • Fiscal time groups. Fiscal years run October through September; quarter 1 is October–December and month 1 is October. new_awards_over_time combines the source’s fiscal-quarter counts for annual fiscal-year results. A date window that covers only part of a fiscal year returns counts for that requested portion, not the entire year. Quarter and month results retain the source counts.
  • FFATA period scope. spending_by_subaward_grouped ranks cumulative reported subaward totals for matching primes. Its date filters do not trim those totals to subaward actions inside the requested period. For period-specific reports, pass a returned award_generated_internal_id to search_subawards, read every page and filter the records by action_date. Reported amounts can repeat cumulative values; their sum is not net new subcontract spending.
  • Award date windows. By default, a date window matches any award active during it (first signing through latest action), so a match does not prove an action happened inside the window. For actual activity, use spending_by_transaction, read every page and deduplicate award identifiers; get_transactions gives a single award's action dates. Explicit date_type="action_date" bounds the latest action.
  • Federal-account programs. Program lists contain codes and names across all reported years, without dollar amounts or a fiscal-year filter. The tool retrieves source pages internally (up to 2,000 records) and reports completeness and any requested FY that was not applied. Use the numeric account ID with the fiscal-year snapshot for single-year account resources. Agency program totals apply to the whole agency.
  • Available fiscal years. Account listings default to the source's latest available FY; check fy, especially after October rollover. If you ask for a year the source does not have yet, the answer explains which years are available. Agency budgetary resources do not provide a mandatory/discretionary split.
  • Award type groups cannot be mixed. The award_type parameter takes one of: contracts, idvs, grants, loans, direct_payments, other. Use separate calls for separate categories.
  • program_numbers is for assistance only. Use it with award_type set to grants, loans, direct_payments, or other. Contracts and IDVs have no assistance listing, so the server returns a message instead of zero results.
  • Actionable error messages. Common API errors (422 mixed award types, 400 sort field missing, 400 empty keywords) are translated into guidance for the calling LLM.
  • Sort field auto-handling. The USAspending API requires the sort field to appear in the fields array; this server adds it automatically.
  • Sensible defaults. Search limits default to 25 (API max 100). Default fields cover the most common columns for each award category.
  • Flat filter parameters. Most common filters are surfaced as named parameters (keywords, awarding_agency, naics_codes, etc.) rather than a nested filter dict, for better LLM tool discovery.

Data source

All data is sourced from USAspending.gov, which aggregates FPDS-NG contract data, FAADC assistance data, and agency DATA Act submissions. Data freshness varies by agency: non-DoD contract data is typically available within 5 business days, DoD and USACE procurement data has a 90-day reporting delay in FPDS, and financial assistance data is available within 2 days of submission.

License

MIT

Regression tests

Run PYTHONPATH=src uv run --python 3.12 python -m pytest -q from this package directory. Set USASPENDING_LIVE_TESTS=1 to add the live checks against the public API (no key needed). See testing.md for details.

Test fileCoverage
test_v0_3_features.pyTool shapes, filters and expanded API surface
test_density_r5.pyBoundary and semantic regression density
test_live_audit_r6.pyLive endpoint audit
test_live_audit_r7.pyLive parameter and pagination audit
test_content_fixes_1013.pyOctober content fixes, offline and live
test_round_8.pyProperty and validation checks
test_entity_family_fixes.pyAgency, recipient and award semantics
test_validation.pyInput validation
test_search_family_fixes.pySearch and aggregation semantics
test_response_cache_hosted.pyHosted cache behavior
test_audit_r11.pyPaced audit anchors
test_throughput.pyRequest throughput and pacing
test_tool_profiles.pyTool profile selection
test_http.pyHTTP handling
test_content_e2e_1014.pyFull end-to-end audit guidance regressions
test_published_scope_1015.pyPublished tool-selection scope guidance
test_new_awards_fiscal_year_1016.pyCaptured annual fiscal-year correction and unchanged quarter/month samples
test_subaward_period_scope_1017.pyCumulative FFATA scope and complete dated-report recovery
test_federal_account_program_scope_1018.pyCaptured all-year program scope, complete list and single-year financial recovery
test_federal_account_available_fy_1020.pyCurrent-FY source availability, supported recovery and unchanged 503 control
test_naics_current_retired_1021.pyActual retired rows versus active rows omitted by the requested limit
test_award_date_overlap_r6.pyAward interval overlap versus complete dated-transaction recovery
test_sdk23_expected_guidance.pyVisible ordinary recovery hints, no pre-validation source requests, preserved source outputs and unexpected-fault masking
Total2,322

来源:servers/usaspending-gov-mcp/readme.md,提交 b30d160

工具

55

search_awards

Search Awards

Search federal awards (contracts, IDVs, grants, loans, etc.) on USASpending.gov. This is the primary workhorse for finding awards. Returns matching awards with standard fields (Award ID, Recipient, Description, Amount, Agencies, NAICS, PSC, dates). Use get_award_detail() with the generated_internal_id from results to get full award details. Important rules: - award_type groups cannot be mixed; pick one category per call - time_period_start/end use YYYY-MM-DD format - award_amount_min/max are in USD - place_of_performance_state is a 2-letter USPS code (e.g. 'MD', 'VA') - For loans, use award_type='loans' and sort='Loan Value' - def_codes filters to Disaster Emergency Fund codes (COVID-19, IIJA, IRA supplementals); see get_def_codes_reference() for the list Filtering to specific contracting commands (NAVSEA, AFRL, etc.): USASpending's subtier level is at the service branch (Department of the Navy, Army, Air Force), not the contracting command. To filter to a specific command, use keywords with the PIID office prefix instead: - NAVSEA contracts: keywords=['N00024'] - Army Contracting: keywords=['W91CRB'] - AFRL: keywords=['FA8650'] - NAVAIR: keywords=['N00019'] This performs a substring match on the PIID field and is more reliable than the award_ids filter for partial matches. Common filter value references: - set_aside_type_codes: SBA, SBP, 8A, 8AN, HZC, HZS, SDVOSBS, SDVOSBC, WOSB, WOSBSS, EDWOSB, EDWOSBSS, VSA - extent_competed_type_codes: A (Full & Open), B, C, D, E, F, G, CDO, NDO - contract_pricing_type_codes: J (FFP), Y (T&M), Z (LH), U (CPFF), V (CPIF), R (CPAF), L (FP Incentive), M (FP Award Fee) IMPORTANT: awarding_agency/funding_agency must be the FULL TOPTIER NAME, not a slug. Use 'Department of Defense', NOT 'department-of-defense'. Slugs silently return zero results, and so does any name that is n

输入参数pagesortlimitorderkeywordsaward_idsdate_typedef_codespsc_codesaward_typenaics_codesfunding_agency另有 12 个

get_award_count

Get Award Count

Count awards matching filters, broken down by award category. Returns counts grouped by: contracts, idvs, grants, loans, direct_payments, other. Use this for dimensional analysis: how many FFP vs T&M awards, how many competed vs sole-source, how many small business set-asides, etc. Unlike search_awards, this returns total counts across ALL award categories in a single call (not just the one specified in award_type). The award_type parameter is ignored here; filters apply to the count query directly. def_codes filters to Disaster Emergency Fund codes; see get_def_codes_reference(). At least one filter is required (the API rejects empty filter sets with HTTP 400). Typical usage: pass time_period_start + time_period_end, or a keywords/agency filter. date_type controls the award date window. Omitted (the default), the latest action must be on/after the window start and the first signing on/before its end. This interval overlap does NOT prove an action occurred inside the window. For actual dated actions use spending_by_transaction, read every page, and deduplicate award identifiers for distinct awards; get_transactions provides a discovered award's complete action history. 'action_date' bounds the latest action, not any action; 'date_signed' bounds first signing; 'last_modified_date' bounds the latest update. 'new_awards_only' keeps awards first signed in the window. date_type needs time_period_start and/or time_period_end. program_numbers filters assistance awards by assistance listing (CFDA) number, e.g. ['93.778'] for Medicaid; use it with award_type='grants', 'loans', 'direct_payments', or 'other'. autocomplete_cfda() finds numbers by program name.

输入参数keywordsdate_typedef_codespsc_codesaward_typenaics_codesfunding_agencyrecipient_nameawarding_agencyprogram_numberstime_period_endaward_amount_max另有 7 个

spending_over_time

Spending Over Time

Aggregate spending amounts over time, grouped by fiscal year, quarter, or month. Use this to visualize spending trends, identify fiscal-year-end spikes, or compare spending patterns across years. Note: The API returns fiscal_year as a STRING. Cast to int for numeric comparisons. quarter and month are FISCAL periods (month 1 = October, quarter 1 = October-December). Buckets are clipped to the window, so a calendar-2025 window returns a partial fiscal_year '2025' (January- September only) and a partial '2026' (October-December); neither is that whole fiscal year. DoD contract actions are published 90 days late, so when the window reaches into the last 90 days and DoD is in scope the answer carries a data_note: those months are understated, so don't read them as a drop. awarding_agency must be a TOPTIER agency name ('Department of Defense'). Military departments are subtiers: pass awarding_subagency='Department of the Navy'. A non-toptier name in awarding_agency (or a subagency that does not belong to the given toptier) silently returns all-zero aggregates. At least one filter is required (the API rejects empty filter sets with HTTP 400). Typical usage: pass time_period_start + time_period_end. date_type controls the transaction date window. Omitted (the default) or 'action_date', it selects transaction actions inside the window. 'date_signed' selects the associated award's first signing date; 'last_modified_date' selects transaction update dates. 'new_awards_only' retains in-window actions associated with awards first signed in the window. These are transaction obligation totals, not new-award counts: use new_awards_over_time for counts. Award search/count tools use a different default interval-overlap rule. date_type needs time_period_start and/or time_period_end. program_numbers filters assistance awards by assistance listing (CFDA) number, e.g.

输入参数groupkeywordsdate_typedef_codespsc_codesaward_typenaics_codesfunding_agencyrecipient_nameawarding_agencyprogram_numberstime_period_end另有 4 个

spending_by_category

Spending by Category

Aggregate spending by a dimension (top vendors, top agencies, top NAICS, etc.). The 'category' parameter controls the grouping dimension. Common uses: - category='recipient': top vendors for a filter set (vendor landscape analysis) - category='awarding_subagency': which contracting offices within an agency - category='naics': which work categories got the most spending - category='psc': which product/service codes got the most spending - category='state_territory': geographic distribution - category='cfda': grant assistance listings Note: recipient category returns vendor names in ALL CAPS and may contain duplicates (subsidiaries, rebrands, re-registrations). For precise market share, apply name normalization to the returned 'name' field. At least one filter is required. An unfiltered call would silently aggregate the entire USASpending database (all years, all agencies), which is never what a caller wants. date_type controls the transaction date window. Omitted (the default) or 'action_date', it selects transaction actions inside the window. 'date_signed' selects the associated award's first signing date; 'last_modified_date' selects transaction update dates. 'new_awards_only' retains in-window actions associated with awards first signed in the window. These are transaction obligation totals, not new-award counts: use new_awards_over_time for counts. Award search/count tools use a different default interval-overlap rule. date_type needs time_period_start and/or time_period_end. program_numbers filters assistance awards by assistance listing (CFDA) number, e.g. ['93.778'] for Medicaid; use it with award_type='grants', 'loans', 'direct_payments', or 'other'. autocomplete_cfda() finds numbers by program name.

输入参数pagelimitcategory必填keywordsdate_typedef_codespsc_codesaward_typenaics_codesfunding_agencyrecipient_nameawarding_agency另有 7 个

get_award_detail

Get Award Detail

Fetch full details for a single award by its generated_internal_id. Use the generated_internal_id value returned by search_awards to fetch the complete award record. Returns: PIID, full description, total obligation, recipient details, parent award info, latest transaction contract data (competition, set-aside, pricing type), period of performance, place of performance, NAICS hierarchy, PSC hierarchy, base and all options value, and sub-award totals. Award-level outlays and total_account_obligation are partial or lagged File C measures, not a reliable amount paid; compare with total_obligation for coverage. Accepts either a generated award id (CONT_AWD_*, CONT_IDV_*, ASST_NON_*, ASST_AGG_*) or the numeric internal database id from a prior response. Example generated_award_id format: CONT_AWD_N0002424C0085_9700_N0002421D0001_9700

输入参数generated_award_id必填

get_transactions

Get Transactions

Fetch the full transaction (modification) history for an award. Every modification, option exercise, and de-obligation is a transaction. Modification number '0' is the original base award. Use to understand the full lifecycle of a contract including its descriptive text at each point in time. Returns per transaction: id, type, action_date, action_type, modification_number, description, federal_action_obligation.

输入参数pagesortlimitordergenerated_award_id必填

get_award_funding

Get Award Funding

Fetch File C funding data for an award: federal account, object class, program activity. Shows which Treasury accounts, object classes, and program activities funded an award. File C can be partial or lagged; these rows do not establish the full award obligation or amount paid to the contractor. Sort fields: reporting_fiscal_date, account_title, transaction_obligated_amount, object_class.

输入参数pagesortlimitordergenerated_award_id必填

get_idv_children

Get IDV Children

Fetch child awards (task/delivery orders) under an IDV. For a Multiple Award IDV, child_awards returns the task orders or delivery orders placed against it. For a parent IDV, child_idvs returns the downstream IDV structure. grandchild_awards walks the hierarchy. Field name differences from search_awards: children use 'piid' (not 'Award ID'), 'obligated_amount' (not 'Award Amount'), and 'generated_unique_award_id' (not 'generated_internal_id'). An active vehicle can legitimately return zero children here: USASpending's award cross-linking has gaps. Treat an empty result as a reporting gap, not proof that no orders exist. Try get_idv_activity() on the same id. A search_awards call with keywords=['<IDV PIID>'] only finds orders whose description happens to cite the IDV, so it misses orders (often the largest) and is no proof of completeness.

输入参数pagesortlimitorderchild_typegenerated_idv_id必填

lookup_piid

Lookup PIID

Look up awards by their exact PIID, across contracts AND IDVs. Looks for awards whose own PIID is exactly this value (the award_ids filter), in both contracts and IDVs, and says how many share it. match='exact' rows are the awards themselves: an IDV PIID returns the IDV (award_type='idv'; its Award Amount is what was obligated on the IDV record itself, usually 0, so use get_idv_amounts() for the order total). PIIDs are not unique: task and delivery order numbers like '0001' repeat under different parent IDVs, so check 'ambiguous' and tell matches apart by parent_idv_piid and Awarding Agency. Only when nothing has that exact PIID does it fall back to keyword search, and those rows come back as match='fuzzy': keyword search matches the award's own PIID and its description text, NOT its parent IDV, so a vehicle PIID or prefix returns only orders whose description happens to cite it. For the orders under a vehicle use get_idv_activity() or get_idv_children() with the IDV's generated_internal_id; for a contracting-office prefix (N00024, W91CRB, FA8650) use search_awards keywords with a time window. limit applies to contracts and to IDVs separately. Use get_award_detail() with a returned generated_internal_id for the full record. Handy for enriching PRISM, Contract Court, or FPDS exports where you have a PIID but don't know whether it's a contract or IDV.

输入参数piid必填limit

autocomplete_psc

Autocomplete PSC

Autocomplete lookup for Product/Service Codes (PSC). Use exact four-character codes ('R499', 'D302') or description keywords ('professional', 'application'). Returns matching PSC entries with code and description. Two-character families such as 'D3' can return no autocomplete matches even when their descendant codes exist. For partial PSC families or prefix expansion, use get_psc_filter_tree() instead: path='Service/D/D3/' lists the D3 descendants; start with path='Service/A/' to discover and drill into an AJ family. Minimum 2 characters required. Single-character queries return first-N alphabetical results from the upstream API (useless for matching) and empty strings return HTTP 400.

输入参数limitsearch_text必填

autocomplete_naics

Autocomplete NAICS

Autocomplete lookup for NAICS codes. Accepts partial codes ('541') or keywords ('software'). Returns matching NAICS entries with code and description. Minimum 2 characters required. Short queries silently match substrings inside parenthetical notes (e.g. 'x' matches 'except') and produce nonsense results, so we require 2+ chars. exclude_retired defaults to True. The upstream NAICS taxonomy still returns codes retired in 2012/2017/2022; these are almost never what callers want. Set exclude_retired=False to include them.

输入参数limitsearch_text必填exclude_retired

list_toptier_agencies

List Toptier Agencies

List all top-tier federal agencies tracked by USASpending. Returns agency codes, names, abbreviations, and current-year budgetary resources. Use the returned 'toptier_code' values with get_agency_overview().

无需输入参数。

get_agency_overview

Get Agency Overview

Get descriptive information for an agency: name, mission, website, data notes and DEF codes. It has no dollar figures; for spending use get_agency_obligations_by_award_category() (split by award type) or get_agency_budgetary_resources() (obligations and outlays by year). toptier_code is the 3- or 4-digit agency code (e.g. '097' for DoD, '075' for HHS, '080' for NASA). Shorter inputs like '97' are left-padded to '097' automatically. Get valid codes via list_toptier_agencies(). fiscal_year defaults to the last completed fiscal year, not the current one (USAspending's own default). The answer always carries fiscal_year.

输入参数fiscal_yeartoptier_code必填

get_agency_awards

Get Agency Awards

Get one obligation total and transaction count for an agency's awards in a fiscal year. The total covers ALL award types together (contracts, IDVs, grants, loans, direct payments, other), so for most civilian agencies it is far larger than contract spending (VA FY2026: $313B here vs $84B contracts). For the split by award type use get_agency_obligations_by_award_category(). toptier_code is auto-padded to 3 digits if a shorter numeric value is supplied. fiscal_year defaults to the last completed fiscal year, not the current one (USAspending's own default, which right after October 1 holds only a few days of data). The answer always carries fiscal_year.

输入参数fiscal_yeartoptier_code必填

get_naics_details

Get NAICS Details

Get details for a NAICS code (2-6 digits). Returns the NAICS description, parent categories, and child subcategories if applicable.

输入参数code必填

get_psc_filter_tree

Get PSC Filter Tree

Get the PSC hierarchy tree. Pass an empty path for the top-level. Drill down with paths like 'Service/R/' to get the service professional services tree, or 'Product/5' for product codes starting with 5.

输入参数path

get_state_profile

Get State Profile

Get the federal award totals for recipients located in a US state. Examples: '06' = California, '48' = Texas, '24' = Maryland, '51' = Virginia. Returns one summary: state name and code, total_prime_amount and total_prime_awards (all award types together), loan face value, award_amount_per_capita, total_outlays, and population / median household income (older Census vintages: see pop_year and mhi_year). It has no breakdown by agency, recipient or district; for those use spending_by_geography() or spending_by_category() with a time window. year: a fiscal year like 2026, 'all' (every year on file) or 'latest' (USAspending's own default: the current fiscal year to date, which right after October 1 holds only a few days of data). Defaults to the last completed fiscal year. The answer always carries fiscal_year.

输入参数yearstate_fips必填

search_subawards

Search Subawards

Search FFATA subaward reports on USASpending. Returns the FFATA subaward records (subcontracts under prime contracts and subawards under prime grants). Complementary to the SAM.gov FFATA endpoints but expressed at the USASpending data model. award_id: optional generated_internal_id (CONT_AWD_..., ASST_NON_..., etc.) to scope subawards to a single prime award. If omitted, returns subawards across all primes for the page. Pagination uses page (1-indexed) and limit (1-100).

输入参数pagesortlimitorderaward_id

spending_by_subaward_grouped

Spending by Subaward Grouped

Find matching prime awards and their cumulative FFATA report totals. Filters select prime records, but subaward_count and subaward_obligation cover all reported subawards under each prime, not just subaward actions within time_period_start/end. This ranking is not a fiscal-period subaward ranking. For dated reports, pass a returned award_generated_internal_id to search_subawards(award_id=...), read every page, and retain action_date values inside the desired period. sort accepts: award_id, subaward_count, award_generated_internal_id, subaward_obligation. (These differ from search_subawards, which sorts by amount/action_date/etc.) Anything else returns HTTP 400 from the API. page_metadata.hasNext is worked out here: the endpoint itself always says false, even with more pages. Rows include primes with no subawards (subaward_count 0). subaward_obligation sums FFATA reports, which can repeat cumulative amounts, so a subaward_to_award_ratio above 1 is a reporting artefact, not more subcontracting than the prime. program_numbers filters assistance awards by assistance listing (CFDA) number, e.g. ['93.778'] for Medicaid; use it with award_type='grants', 'loans', 'direct_payments', or 'other'. autocomplete_cfda() finds numbers by program name.

输入参数pagesortlimitorderdef_codespsc_codesnaics_codesfunding_agencyawarding_agencyprogram_numberstime_period_endaward_type_codes另有 2 个

search_recipients

Search Recipients

Search USASpending recipients (vendors and grantees) by keyword. Returns paginated recipients with their UEI, DUNS, name, and a recipient 'id' hash for get_recipient_profile() and new_awards_over_time(). For get_recipient_children(), use the UEI (or legacy DUNS) from the parent (-P) row, not a recipient hash. keyword can match recipient name, UEI, or DUNS. If omitted, returns the top recipients ranked by `sort`.

输入参数pagesortlimitorderkeywordaward_type

get_recipient_profile

Get Recipient Profile

Get full profile for a recipient by their USASpending hash. Returns recipient details: name, UEI, DUNS, business categories, location, parent (if any), and lifetime award totals. The hash is the 'id' field returned by search_recipients(). (autocomplete_recipient does NOT return hashes; it is a name lookup only.) year: optional 'all' or a fiscal year like 2026 (int or str both accepted). Default is 'latest' (trailing 12 months). Parent (-P) totals include their children. Profiles use a separate recipient rollup and can differ from transaction searches by recipient_name and award-type scope.

输入参数yearrecipient_hash必填

get_recipient_children

Get Recipient Children

Get the child recipients (subsidiaries) of a parent recipient. Pass the parent recipient's 12-character UEI (or legacy 9-digit DUNS). Do NOT pass a recipient hash: the /recipient/children/ endpoint is the one recipient endpoint keyed by UEI/DUNS, and it rejects hashes with HTTP 400. Get the UEI from search_recipients() results (the 'uei' field of the -P row) or from get_recipient_profile(). Returns the child recipients, each with its own -C suffixed recipient_id hash usable with get_recipient_profile(). Useful for mapping corporate structures (e.g. Lockheed Martin parent -> all its subsidiaries). year: optional 'all', 'latest', or a fiscal year like 2026. The upstream endpoint returns a JSON array; it is wrapped here as {"results": [...], "total": N} to keep the dict-only response invariant.

输入参数yearuei_or_duns必填

autocomplete_recipient

Autocomplete Recipient

Find recipient names by partial name or UEI/DUNS. This is a recipient-name lookup; it does not supply the recipient hash for get_recipient_profile() or new_awards_over_time(), and its UEI/DUNS fields may be null. Pass a returned name to search_recipients(): use its 'id' hash for profiles/trends, and the UEI (or legacy DUNS) from the parent (-P) row for get_recipient_children().

输入参数limitsearch_text必填

list_states

List States

List all states with their FIPS codes and award totals. Returns the full list of US states/territories with FIPS codes you can pass to get_state_profile(). The /recipient/state/ endpoint returns a JSON array (not an object). We wrap it in {"results": [...]} to keep the tool return type consistent with every other endpoint in this MCP.

无需输入参数。

get_agency_budgetary_resources

Get Agency Budgetary Resources

Get an agency's budgetary resources by fiscal year. Returns agency budgetary resources, obligations and outlays for each fiscal year on file, plus government-wide budgetary resources and the agency's obligations by reported fiscal period. This endpoint does not provide a discretionary-versus-mandatory breakdown.

输入参数toptier_code必填

get_agency_sub_agencies

Get Agency Sub-Agencies

List the subordinate (subtier) organizations of a toptier agency. Returns each sub-agency with its obligations, transaction count, and new-award count for the given fiscal year. Useful for finding the canonical subtier name to pass into search_awards() awarding_subagency. sort accepts name, total_obligations, transaction_count, or new_award_count (this endpoint has no outlay column; a former 'total_outlays' option was rejected by the API with HTTP 400). fiscal_year defaults to the last completed fiscal year, not the current one (USAspending's own default, which right after October 1 holds only a few days of data). The answer always carries fiscal_year.

输入参数pagesortlimitorderfiscal_yeartoptier_code必填

get_agency_federal_accounts

Get Agency Federal Accounts

List the Treasury Account Symbols (federal accounts) used by an agency. Returns each federal account with its obligated amount and gross outlay for the given fiscal year. Useful for understanding how an agency's money flows through Treasury. fiscal_year defaults to the last completed fiscal year, not the current one (USAspending's own default, which right after October 1 holds only a few days of data). The answer always carries fiscal_year.

输入参数pagesortlimitorderfiscal_yeartoptier_code必填

get_agency_object_classes

Get Agency Object Classes

List the object class breakdown (what an agency spends money on). Object classes are OMB categories: Personnel Compensation, Travel, Contractual Services, Equipment, Grants, etc. Useful for understanding what types of expenditures an agency makes. fiscal_year defaults to the last completed fiscal year, not the current one (USAspending's own default, which right after October 1 holds only a few days of data). The answer always carries fiscal_year.

输入参数pagesortlimitorderfiscal_yeartoptier_code必填

get_agency_program_activities

Get Agency Program Activities

List the program activities (specific programs) within an agency. Program activities are the specific named programs that obligate funds (e.g., 'Cybersecurity and Infrastructure Security Agency'). Useful for pinpointing which program funds a specific activity. fiscal_year defaults to the last completed fiscal year, not the current one (USAspending's own default, which right after October 1 holds only a few days of data). The answer always carries fiscal_year.

输入参数pagesortlimitorderfiscal_yeartoptier_code必填

get_agency_obligations_by_award_category

Get Agency Obligations by Award Category

Get an agency's obligation breakdown by award category. Returns total obligated dollars split by category: contracts, IDVs, grants, loans, direct payments, other. Quick way to see what mix of award types an agency uses (heavy contractor agency vs grant-issuing agency vs mixed). For DoD ('097') a fiscal year whose last 90 days are not yet published (DoD's 90-day delay) carries a data_note saying the total is understated. fiscal_year defaults to the last completed fiscal year, not the current one (USAspending's own default, which right after October 1 holds only a few days of data). The answer always carries fiscal_year.

输入参数fiscal_yeartoptier_code必填

get_award_funding_rollup

Get Award Funding Rollup

Get a rollup of an award's funding totals. Returns total transaction obligated amount, awarding agency count, funding agency count, and federal account count for a single award. Useful for a one-line summary of an award's funding picture.

输入参数award_id必填

get_award_subaward_count

Get Award Subaward Count

Count of subawards (FFATA subcontracts/subawards) reported on an award.

输入参数award_id必填

get_award_federal_account_count

Get Award Federal Account Count

Count of distinct federal accounts (TAS) funding an award.

输入参数award_id必填

get_award_transaction_count

Get Award Transaction Count

Count of transactions (modifications) on an award.

输入参数award_id必填

awards_last_updated

Awards Last Updated

Get the timestamp of the last USASpending award data refresh. Use this to determine data freshness when comparing to other sources (SAM.gov Contract Awards API for example).

无需输入参数。

spending_by_transaction

Spending by Transaction

Search at the transaction (modification) level. Unlike search_awards which returns one row per award, this returns one row per transaction (initial action plus every modification). Useful for tracking obligation events over time, ceiling adjustments, deobligations, and admin mods. recipient_uei is matched through the API's recipient text search (which covers name, UEI, and DUNS), so pass the plain 12-character UEI. Returns standard transaction fields: Action Date, Mod, Award ID, Action Type, Awarding Agency, Recipient Name. program_numbers filters assistance awards by assistance listing (CFDA) number, e.g. ['93.778'] for Medicaid; use it with award_type='grants', 'loans', 'direct_payments', or 'other'. autocomplete_cfda() finds numbers by program name.

输入参数pagesortlimitorderkeywordspsc_codesaward_typenaics_codesrecipient_ueifunding_agencyawarding_agencyprogram_numbers另有 5 个

spending_by_geography

Spending by Geography

Geographic breakdown of spending. scope: 'recipient_location' (where the recipient is) or 'place_of_performance' (where the work happens). geo_layer: 'state', 'county', or 'district'. At least one filter is required. The API returns HTTP 500 on an empty filter set, so the requirement is enforced here with a clear error. program_numbers filters assistance awards by assistance listing (CFDA) number, e.g. ['93.778'] for Medicaid; use it with award_type='grants', 'loans', 'direct_payments', or 'other'. autocomplete_cfda() finds numbers by program name.

输入参数scopedef_codesgeo_layerpsc_codesaward_typenaics_codesfunding_agencyawarding_agencyprogram_numberstime_period_endtime_period_start

new_awards_over_time

New Awards Over Time

Pipeline trend of new awards to a recipient over time. REQUIRES recipient_id (the recipient hash with -P suffix for parent-level rollup, or -R for a single recipient). Returns counts of new awards grouped by month, quarter, or fiscal year. The endpoint rejects calls without recipient_id with HTTP 422, and it also requires a time_period. When you omit the dates, a default range covering all searchable data (2007-10-01 through 2099-09-30) is sent automatically.

输入参数grouprecipient_id必填time_period_endtime_period_start

get_idv_amounts

Get IDV Amounts

Top-line amounts for an Indefinite Delivery Vehicle (IDV). Returns child IDV count, child award count, child award total obligation, and base/option values rolled up across all task/delivery orders under the IDV. Pass a CONT_IDV_* generated_internal_id.

输入参数award_id必填

get_idv_funding

Get IDV Funding

List File C funding records associated with an IDV. Rows can identify the IDV itself as well as associated awards; they are not a complete list of child orders. File C coverage can be partial or lagged and does not establish the full child-order obligation or amount paid. Use get_idv_amounts() for reported child-order obligation totals and get_idv_activity() or get_idv_children() for child-order records.

输入参数pagesortlimitorderaward_id必填

get_idv_funding_rollup

Get IDV Funding Rollup

Funding rollup totals for an IDV (single dict, not paginated).

输入参数award_id必填

get_idv_activity

Get IDV Activity

List child task/delivery orders awarded under an IDV. Results are ALWAYS sorted by obligated amount, descending; the endpoint accepts no sort or order parameters. (Earlier releases exposed sort/order here, but the API silently ignored them: the advertised default of period_of_performance_start_date was never the actual ordering. Round 10 audit finding.) For date-ordered children use get_idv_children(), whose endpoint does honor sort/order. hide_edge_cases=True filters out child awards missing obligated/awarded amounts or end dates.

输入参数pagelimitaward_id必填hide_edge_cases

autocomplete_awarding_agency

Autocomplete Awarding Agency

Find awarding agency names by partial match. USASpending search filters require the EXACT awarding agency name (slugs return zero). Use this to resolve a partial name to the canonical one before passing to search_awards() awarding_agency parameter.

输入参数limitsearch_text必填

autocomplete_funding_agency

Autocomplete Funding Agency

Find funding agency names by partial match (companion to awarding agency).

输入参数limitsearch_text必填

autocomplete_cfda

Autocomplete CFDA

Find CFDA (Catalog of Federal Domestic Assistance) program numbers by partial title or program number. CFDA codes are used in grants.

输入参数limitsearch_text必填

autocomplete_glossary

Autocomplete Glossary

Find glossary terms (acquisition + spending vocabulary) by partial match.

输入参数limitsearch_text必填

get_award_types_reference

Get Award Types Reference

Return the full mapping of award type codes to descriptions. Returns the canonical reference: contracts (A=BPA Call, B=Purchase Order, C=Delivery Order, D=Definitive Contract), IDVs, grants, loans, etc. Authoritative source if you're unsure what a code letter means.

无需输入参数。

get_def_codes_reference

Get DEF Codes Reference

Return all Disaster Emergency Fund (DEFC) codes with public laws. DEFCs are used to filter awards funded by specific supplemental appropriations (COVID-19, IIJA, IRA, etc.).

无需输入参数。

get_glossary

Get Glossary

Get the full USASpending glossary of acquisition + spending terms.

输入参数pagelimit

get_submission_periods

Get Submission Periods

List the reporting calendar and submission/certification deadlines. Returns available fiscal reporting periods and their scheduled start, due, certification and reveal dates. These are global calendar periods, not records of when individual agencies actually submitted or certified data. A listed period does not establish complete agency data coverage.

无需输入参数。

list_federal_accounts

List Federal Accounts

List Treasury federal accounts (TAS) with budgetary resources. keyword filters by account name or AID. fiscal_year controls the reported budgetary-resource values, not which account rows are included. When omitted, the source uses its latest available fiscal year, which may differ from the current fiscal year; check the returned fy value. sort is a dict like {'field':'budgetary_resources','direction':'desc'}.

输入参数pagesortlimitkeywordfiscal_year

get_federal_account_detail

Get Federal Account Detail

Get an individual federal account's metadata + budgetary resources.

输入参数account_code必填

get_federal_account_object_classes

Get Federal Account Object Classes

Get the object class breakdown of obligations for a federal account. IMPORTANT: the returned obligations are CUMULATIVE across all reported fiscal years (FY2017 onward, the DATA Act window), not a single year. They are NOT comparable to get_federal_account_fy_snapshot(), which is single-year (verified live: account 021-0725 summed to $3.38B here vs $0.42B obligated in its FY2024 snapshot). The upstream endpoint has no year control: a fiscal_year body parameter is accepted but ignored, so none is exposed here. Note: this endpoint requires POST (not GET like the other federal account sub-endpoints). Live audit caught this; the body is empty.

输入参数account_code必填

get_federal_account_program_activities

Get Federal Account Program Activities

List program activity codes and names associated with a federal account. The source lists distinct programs across all reported fiscal years; it has no fiscal-year filter and includes no dollar amounts. fiscal_year is retained for compatibility, but does not filter this list. The response explicitly discloses any requested year that was not applied. Retrieves source pages internally, up to 2,000 records, and reports whether the list is complete. For single-year account resources and obligations, use get_federal_account_fy_snapshot with the numeric account_id returned by list_federal_accounts. get_agency_program_activities provides fiscal-year program amounts for an agency, not for this individual federal account.

输入参数fiscal_yearaccount_code必填

get_federal_account_fy_snapshot

Get Federal Account Fiscal Year Snapshot

Get a single-fiscal-year snapshot of a federal account's resources. Important: this endpoint takes the numeric `account_id` (e.g. 4595), NOT the alphanumeric `account_number` (e.g. "027-5183") used by the other federal-account endpoints. The list_federal_accounts response includes both fields per record. Pass the integer account_id here.

输入参数account_id必填fiscal_year

版本历史

11
  1. v1.0.29最新Nov 3, 2026
  2. v1.0.28Oct 29, 2026
  3. v1.0.27Oct 21, 2026
  4. v1.0.26Oct 12, 2026
  5. v1.0.25Oct 12, 2026
  6. v1.0.24Oct 11, 2026
  7. v1.0.22Oct 10, 2026
  8. v1.0.15Oct 10, 2026
  9. v1.0.12Oct 10, 2026
  10. v1.0.10Oct 9, 2026
  11. v1.0.9Sep 16, 2026

评分

已满足适用检查项的 100%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

其他 1102tools 集成