budget_vs_actual
Pack: budget-resolutions · Connect: https://pipeworx.io/mcp (see Connect below for a single-pack URL)
No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/budget_vs_actual for the schema, then POST the same URL with its arguments for the data.
A fiscal year’s congressional budget-resolution targets next to what the U.S. Treasury actually reported: revenues, total outlays, the implied deficit, and outlays by budget function, each with budget, actual and the difference. Totals are compared on the on-budget basis the resolutions use (Social Security’s off-budget part excluded), with unified totals beside them. Actuals come from the Monthly Treasury Statement (net outlays, nominal dollars) and say whether the year is complete; the budget side says whether the resolution was adopted. A year with no resolution still returns the actuals plus a named reason for the missing budget side. Use for “how did FY2025 outlays compare to the budget resolution?”, “defense spending vs budget plan”. Sources: U.S. Congress (as published by the U.S. Government Publishing Office) and U.S. Treasury.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
fiscal_year | number | yes | Federal fiscal year (Oct-Sep) to compare, e.g. 2025. |
function | string | no | Limit to one budget function (substring or three-digit code). Totals are always included. |
adopted_only | boolean | no | true: compare only against a resolution adopted by both chambers. |
Example call
Arguments
{
"fiscal_year": 2025,
"function": "Defense"
}
curl
curl -X POST https://gateway.pipeworx.io/budget-resolutions/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"budget_vs_actual","arguments":{"fiscal_year":2025,"function":"Defense"}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('budget_vs_actual', {
"fiscal_year": 2025,
"function": "Defense"
});
Response shape
| Field | Type | Description |
|---|---|---|
found | boolean | |
fiscal_year | number | |
budget | object | null | |
budget_reason | string | |
budget_reason_code | string | |
actual | object | null | |
actual_reason | string | |
comparable | boolean | |
totals | object | |
outlays_by_function | array | |
treasury_lines_without_budget_line | array | |
other_candidates | array | |
candidates | array | |
data_as_of | string | null | |
sources | array |
Full JSON Schema
{
"type": "object",
"properties": {
"found": {
"type": "boolean"
},
"fiscal_year": {
"type": "number"
},
"budget": {
"type": [
"object",
"null"
],
"additionalProperties": true
},
"budget_reason": {
"type": "string"
},
"budget_reason_code": {
"type": "string"
},
"actual": {
"type": [
"object",
"null"
],
"additionalProperties": true
},
"actual_reason": {
"type": "string"
},
"comparable": {
"type": "boolean"
},
"totals": {
"type": "object",
"additionalProperties": true
},
"outlays_by_function": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
}
},
"treasury_lines_without_budget_line": {
"type": "array",
"items": {
"type": "string"
}
},
"other_candidates": {
"type": "array",
"items": {
"type": "object",
"properties": {
"resolution": {
"type": "string"
},
"package_id": {
"type": "string"
},
"status": {
"type": "string"
},
"adopted": {
"type": "boolean"
},
"status_note": {
"type": "string"
},
"title": {
"type": "string"
},
"date_issued": {
"type": [
"string",
"null"
]
},
"versions_seen": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
}
}
},
"additionalProperties": true
}
},
"candidates": {
"type": "array",
"items": {
"type": "object",
"properties": {
"resolution": {
"type": "string"
},
"package_id": {
"type": "string"
},
"status": {
"type": "string"
},
"adopted": {
"type": "boolean"
},
"status_note": {
"type": "string"
},
"title": {
"type": "string"
},
"date_issued": {
"type": [
"string",
"null"
]
},
"versions_seen": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
}
}
},
"additionalProperties": true
}
},
"data_as_of": {
"type": [
"string",
"null"
]
},
"sources": {
"type": "array",
"items": {
"type": "string"
}
}
},
"additionalProperties": true
}
Connect
Add this to your MCP client config — every tool in the catalog, including this one — or use one-click install buttons:
{
"mcpServers": {
"pipeworx": {
"url": "https://pipeworx.io/mcp"
}
}
}
Connect to just the budget-resolutions pack
{
"mcpServers": {
"budget-resolutions": {
"url": "https://gateway.pipeworx.io/budget-resolutions/mcp"
}
}
}
See Getting Started for client-specific install steps.