# Usaspending (npm · @pipeworx/mcp-usaspending)

USAspending MCP — Federal spending data from USAspending.gov API

- Trust score: 79/100 (medium)
- Change this week: 0
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-11-05

## Components

- remote · `gateway.pipeworx.io`: 63/100, [markdown](https://verifymcp.io/servers/pipeworx-io-usaspending/usaspending-mcp.md), [page](https://verifymcp.io/servers/pipeworx-io-usaspending/usaspending-mcp)
- npm · `@pipeworx/mcp-usaspending`: 79/100 (this document), [markdown](https://verifymcp.io/servers/pipeworx-io-usaspending/pipeworx-mcp-usaspending.md), [page](https://verifymcp.io/servers/pipeworx-io-usaspending/pipeworx-mcp-usaspending)

## Channel facts

- Registry: `npm`
- Package: `@pipeworx/mcp-usaspending`
- Version: `0.2.0`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-11-05.

- **Supply Chain Security**: 100/100
  - No malware found by supply-chain analysis.
  - No known CVEs affecting this package version or its production dependencies.
  - No install/post-install scripts declared.
  - No production dependencies, so there is no dependency health to assess.
- **Provenance & Transparency**: 97/100
  - Source repository is publicly reachable at the declared URL.
  - Cryptographically verified build provenance (signed, bound to pipeworx-io/mcp-usaspending).
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 6 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 62/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 1964 tokens (~280/item across 7 items; 7 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 0/100
  - Stability not yet verified: not enough scan history yet (needs a 30-day window).
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 7 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 8 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

**Unverified: 1 category.** A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.

## Install

### How do I install the Usaspending MCP server?

Usaspending runs locally as an npm package, launched with npx -y @pipeworx/mcp-usaspending. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add pipeworx-io-usaspending -- npx -y @pipeworx/mcp-usaspending
```

### Cursor

```json
{
  "mcpServers": {
    "pipeworx-io-usaspending": {
      "command": "npx",
      "args": [
        "-y",
        "@pipeworx/mcp-usaspending"
      ]
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "pipeworx-io-usaspending": {
      "command": "npx",
      "args": [
        "-y",
        "@pipeworx/mcp-usaspending"
      ]
    }
  }
}
```

### Codex

```bash
codex mcp add pipeworx-io-usaspending -- npx -y @pipeworx/mcp-usaspending
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "pipeworx-io-usaspending": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@pipeworx/mcp-usaspending"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add pipeworx-io-usaspending --command npx --arg -y --arg @pipeworx/mcp-usaspending
```

### Hermes

```yaml
mcp_servers:
  pipeworx-io-usaspending:
    command: "npx"
    args: ["-y", "@pipeworx/mcp-usaspending"]
```

### Netclaw

```json
{
  "McpServers": {
    "pipeworx-io-usaspending": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "@pipeworx/mcp-usaspending"
      ]
    }
  }
}
```

### Vellum

```bash
assistant mcp add pipeworx-io-usaspending -t stdio -c npx -a -y @pipeworx/mcp-usaspending
```

### Other

```json
{
  "mcpServers": {
    "pipeworx-io-usaspending": {
      "command": "npx",
      "args": [
        "-y",
        "@pipeworx/mcp-usaspending"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-11-02 (score 79, 0)

- [functional regression] Security disclosure: unverified → fail

### 2026-10-29 (score 79)

First indexed and scored.

## MCP tools (7)

### `usa_spending_by_agency` (~98 tokens)

Break down US federal contract spending by agency for a given fiscal year (default: current year) and optional quarter (1-4). Returns agency names, abbreviations, and dollar amounts from USAspending.gov.

Input parameters:

- `fiscal_year` (string): Four-digit fiscal year (e.g., "2025"). Defaults to current year.
- `quarter` (number): Fiscal quarter (1-4). Omit for full year.

### `usa_award_search` (~778 tokens)

Search US federal PROCUREMENT CONTRACTS / government contract awards for goods and services. Use recipient_name for "contracts won by Lockheed Martin"; keywords searches award descriptions/topics, not contractor identity. Dates are optional and default to the last 12 months for "recent" questions. Dates select awards ACTIVE in the window (not signed in it) and award_amount is the award's LIFETIME obligation, so do not sum it as spending for the period. Results are paged: 100 per page max — pass `page` (and read `page_metadata.has_next`) to reach the rest. Returns recipient, award amount, outlays (with an outlays_reported flag, since DoD awards usually report none), dates, and contract type. Umbrella contracts (IDVs — CRS-2, NASA Launch Services II, CCtCap) are a SEPARATE result set in `idvs`, not in `awards`: read both, and `idv_status` says which you got. IDV and child-order amounts are disjoint, so `totals.combined_amount` is the correct total.

Input parameters:

- `agency` (string): Awarding agency — full toptier name ("Department of Defense") or the common abbreviation (DOD, DHS, VA, HHS, DOE, NASA, GSA, USDA, EPA…), which is expanded for you.
- `end_date` (string): End date in YYYY-MM-DD format
- `include_idvs` (boolean): Include umbrella contracts (indefinite delivery vehicles) as a separate `idvs` array. Default true. Leave it on: these are often a recipient's largest awards, and excluding them understates a total s…
- `keywords` (array): Search keywords (e.g., ["cybersecurity", "cloud"] or ["goods", "services"])
- `limit` (number): Number of results per page (1-100, default 10)
- `naics` (string): NAICS code to filter by (e.g., "541512")
- `page` (number): 1-based page number (default 1). total_results can exceed limit; page through with this and read page_metadata.has_next / total_pages to reach every row. The `idvs` array is served on page 1 only.
- `recipient_name` (string): Contractor/recipient name (e.g., "Lockheed Martin"). Use for awards won by a company; do not put company names in keywords. Matched as a SUBSTRING of the registered legal name, so a brand name can mi…
- `set_aside` (string): Small-business set-aside filter. Accepts a family name ("HUBZone", "8(a)", "WOSB", "EDWOSB", "SDVOSB", "Veteran", "Small business", "Indian"), a FAR code ("HZC", "8AN", "SDVOSBC"), or the literal USA…
- `start_date` (string): Start date in YYYY-MM-DD format
- `state` (string): Place-of-performance US state, 2-letter code (e.g., "MD", "TX"). Filters to contracts performed in that state.

### `usa_spending_by_category` (~140 tokens)

Analyze federal spending by industry, product/service, recipient, or agency. Returns spending totals per category. Use for market research and identifying government contracting opportunities.

Input parameters:

- `agency` (string): Optional awarding agency name filter
- `category` (string, required): Category to group by: naics, psc, recipient, awarding_agency, awarding_subagency
- `end_date` (string, required): End date in YYYY-MM-DD format
- `keywords` (array): Optional keywords to filter spending
- `limit` (number): Number of results (1-100, default 10)
- `start_date` (string, required): Start date in YYYY-MM-DD format

### `usa_recipient_profile` (~168 tokens)

Answer "what federal contracts did [company] win recently?" and get a contractor's federal contract awards. Dates are optional and default to the last 12 months; the response always states the window used.

Input parameters:

- `end_date` (string): End date in YYYY-MM-DD format
- `limit` (number): Number of results (1-100, default 10)
- `recipient_name` (string, required): Recipient/contractor name to search for (e.g., "Lockheed Martin"). Matched as a substring of the registered legal name; a known brand name that matches nothing is retried under its legal name (`recip…
- `start_date` (string): Start date in YYYY-MM-DD format

### `usa_spending_trends` (~250 tokens)

"How has [agency] contract spending trended over the last N fiscal years?" / "is [agency] spending on X growing?" / "federal spending history for [topic]" — US FEDERAL contract/award spending over time from USAspending.gov, grouped by fiscal year, quarter, or month. Filter by keywords or by federal agency (DHS/Homeland Security, DOD/Defense, HHS, VA, DOE, NASA, State, Treasury). Returns the historical dollar amount per period for trend and budget-forecasting questions. Federal only — for state & county award data use gov_contracts_search.

Input parameters:

- `agency` (string): Awarding agency name. Use instead of, or alongside, keywords.
- `end_date` (string): End date YYYY-MM-DD. Optional — defaults to today.
- `group` (string): Time grouping: fiscal_year, quarter, or month (default fiscal_year)
- `keywords` (array): Keywords to track spending for (e.g., ["artificial intelligence"])
- `start_date` (string): Start date YYYY-MM-DD. Optional — defaults to five years ago; the window actually used comes back under `period`.

### `usa_expiring_awards` (~343 tokens)

Federal contracts EXPIRING soon -- the recompete calendar. "Which VA IT contracts over $10M expire in the next 12 months?" / "what is up for recompete at DHS next year" / "find follow-on opportunities in NAICS 5415" / "whose contract is ending". Returns the incumbent holding each award, its period of performance, obligated dollars, agency, NAICS/PSC, and a usaspending.gov link. Filter by agency, sub-agency, NAICS or PSC prefix, incumbent name, and minimum obligated dollars. Covers awarded CONTRACTS already held by a vendor; for open solicitations still accepting bids use samgov/govcon tools.

Input parameters:

- `agency` (string): Awarding agency, substring match (e.g. "Department of Veterans Affairs", "Defense").
- `limit` (number): Max awards to return (default 25, max 200).
- `min_amount` (number): Minimum total OBLIGATED dollars on the award (not the ceiling). 10000000 for "over $10M".
- `months_ahead` (number): Window size in months from today (default 12).
- `naics` (string): NAICS code or prefix. Hierarchical: "5415" matches all 6-digit computer-services codes beneath it.
- `psc` (string): Product/Service Code or prefix (e.g. "D3" for IT services).
- `recipient` (string): Incumbent contractor name, substring match.
- `sub_agency` (string): Awarding sub-agency, substring match (e.g. "Veterans Health Administration").

### `usa_incumbent_profile` (~133 tokens)

Federal contract portfolio for one contractor -- "what does Leidos hold and when does it expire", "which of Booz Allen's contracts come up for recompete", incumbent research before a bid. Returns active award count, total obligated, ceiling, expirations at 6/12/18 months, top agencies and NAICS, and the next awards to expire with dates.

Input parameters:

- `limit` (number): How many upcoming expirations to list (default 10, max 100).
- `recipient` (string, required): Contractor name, substring match (e.g. "Leidos", "Booz Allen").

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/pipeworx-io-usaspending/pipeworx-mcp-usaspending#diagnostics

## Score history

- 2026-11-05: 79
- 2026-11-04: 79
- 2026-11-03: 79
- 2026-11-02: 79
- 2026-11-01: 79
- 2026-10-31: 79
- 2026-10-30: 79
- 2026-10-29: 79

## Common questions

### What is the Usaspending MCP server?

Usaspending is an MCP server listed in the public MCP registry as io.github.pipeworx-io/usaspending. USAspending MCP, Federal spending data from USAspending.gov API. This page covers its npm package (@pipeworx/mcp-usaspending).

### Is the Usaspending MCP server safe to use?

Usaspending scores 79 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 5 November 2026. It declares no install or post-install scripts. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the Usaspending MCP server expose?

Usaspending exposes 7 tools: usa_spending_by_agency, usa_award_search, usa_spending_by_category, usa_recipient_profile, usa_spending_trends, and 2 more. Their descriptions and schemas cost roughly 1,910 tokens of context every time the server is loaded.

### Is the Usaspending MCP server still maintained?

Usaspending is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

### What licence is the Usaspending MCP server under?

Usaspending declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.

### What did VerifyMCP test on the Usaspending MCP server?

VerifyMCP ran 15 checks on Usaspending, covering Malware scan, Known CVEs, Install scripts, Dependency health and 11 more. One item could not be completed, a gap on our side rather than a finding about Usaspending: Stability. One category scores 0 for that reason, because we only credit what we can confirm. Endpoint Security and Transport & Reachability do not apply to an npm package, so they were not tested. The score does not measure everything, and the scoring documentation lists what it leaves out.

## Links

- npm package: https://www.npmjs.com/package/@pipeworx/mcp-usaspending
- Socket report: https://socket.dev/npm/package/@pipeworx/mcp-usaspending
- Repository: https://github.com/pipeworx-io/mcp-usaspending
- Website: https://pipeworx.io/packs/usaspending
- Changelog RSS feed: https://verifymcp.io/servers/pipeworx-io-usaspending/pipeworx-mcp-usaspending.xml
- Changelog JSON feed: https://verifymcp.io/servers/pipeworx-io-usaspending/pipeworx-mcp-usaspending/changelog.json
- Trust report (JSON): https://verifymcp.io/servers/pipeworx-io-usaspending/pipeworx-mcp-usaspending.json
- HTML version of this page: https://verifymcp.io/servers/pipeworx-io-usaspending/pipeworx-mcp-usaspending
