SpendQuery
US federal spending, contracts, SAM.gov notices, FAR clauses and SBIR awards, in plain English.
¿Debería usar esto?
Calidad y seguridad
Hallazgos (6)
- HIGH
- LOWen size_standard
- LOWen naics_finder
- LOWen get_far_section
- LOWen get_notice
- LOWen browse_codes
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"spendquery": {
"url": "https://api.spendquery.com/mcp"
}
}
}Puntos de conexión remotos
https://api.spendquery.com/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (13)
🟢get_catalog(section)
What SpendQuery can answer: data coverage, metrics, dimensions (with examples and whether they apply to contracts or assistance), analyses, the QueryPlan JSON schema, planning rules and example question -> plan pairs. Call this first (no arguments): the federal catalog. section: "states" (state, county and city checkbooks in brief: each jurisdiction, their dimensions, rules and examples), "state:<CODE>" (one jurisdiction in full, e.g. "state:MA"), "rules" (every planning rule), "examples" (every worked example) or "full" (everything).
Esquema de entrada
{
"type": "object",
"properties": {
"section": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Omit for the federal catalog. \"states\" (state, county and city checkbooks in brief), \"state:<CODE>\" for one jurisdiction in full (e.g. \"state:MA\"), \"rules\", \"examples\" or \"full\".",
"title": "Section"
}
},
"title": "get_catalogArguments"
}🟢run_plan(plan)
Run a QueryPlan (see get_catalog.plan_schema). Returns status (ok | clarify | unsupported | error), a one-paragraph answer, columns, rows (max 100), the SQL that ran, caveats and how names were resolved to codes.
Esquema de entrada
{
"type": "object",
"properties": {
"plan": {
"additionalProperties": true,
"description": "A QueryPlan object in business terms, following get_catalog's plan_schema, e.g. {\"intent\": \"aggregate\", \"metric\": \"obligations\", \"group_by\": [\"agency\"], \"fiscal_years\": [2025], \"filters\": [{\"dimension\": \"award_category\", \"values\": [\"contract\"]}]}.",
"title": "Plan",
"type": "object"
}
},
"required": [
"plan"
],
"title": "run_planArguments"
}🟢search_codes(kind, query, limit)
Look up codes and official names. kind: agency | bureau | state | county | naics | psc | program. Matches names (substring, case-insensitive) or code prefixes. Plans can use either the names or the codes.
Esquema de entrada
{
"type": "object",
"properties": {
"kind": {
"description": "What to look up: agency, bureau (sub-agency), state, county, naics (industry), psc (product or service code) or program (Assistance Listing).",
"enum": [
"agency",
"bureau",
"state",
"county",
"naics",
"psc",
"program"
],
"title": "Kind",
"type": "string"
},
"query": {
"description": "Words in the name, or the code itself, e.g. \"veterans affairs\", \"541511\", \"D302\".",
"title": "Query",
"type": "string"
},
"limit": {
"default": 20,
"description": "Most rows to return, 1-50.",
"title": "Limit",
"type": "integer"
}
},
"required": [
"kind",
"query"
],
"title": "search_codesArguments"
}🟢search_recipients(query, limit)
Find award recipients (companies, universities, governments) by name or UEI. Returns each registration's UEI, parent, listed-company ticker (if matched) and its OWN obligations across loaded years, largest first. A parent's money sits on its units, so a parent UEI's own obligations can be small or negative: for a company's total use run_plan with a company filter (name or ticker). A UEI that is a parent also returns parent_rollup (its units).
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"description": "A company or recipient name, or a 12-character UEI, e.g. \"booz allen\" or \"ZFN2JJXBLZT3\".",
"title": "Query",
"type": "string"
},
"limit": {
"default": 10,
"description": "Most rows to return, 1-50.",
"title": "Limit",
"type": "integer"
}
},
"required": [
"query"
],
"title": "search_recipientsArguments"
}🟢browse_codes(kind, group, query, fiscal_year, limit)
Browse what the government buys, with contract spend. kind: psc (products and services) | naics (industries). No group and no query -> the groups (PSC: services by letter, e.g. D = IT services, R = professional support; products by 2 digits, e.g. 84 = clothing and individual equipment; NAICS: 2-digit sectors), largest first. group -> the codes in it. query -> codes whose name contains the words. Default year: last complete fiscal year. Use a code or its name in a plan's psc / naics filter.
Esquema de entrada
{
"type": "object",
"properties": {
"kind": {
"default": "psc",
"description": "psc (products and services) or naics (industries).",
"enum": [
"psc",
"naics"
],
"title": "Kind",
"type": "string"
},
"group": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "A group to list the codes in: a PSC letter or 2-character group (e.g. \"D\", \"84\") or a 2-digit NAICS sector (e.g. \"54\").",
"title": "Group"
},
"query": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Words in a code's name, e.g. \"body armor\", \"janitorial\".",
"title": "Query"
},
"fiscal_year": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Federal fiscal year (October-September), e.g. 2025; default the last complete one.",
"title": "Fiscal Year"
},
"limit": {
"default": 50,
"description": "Most rows to return, 1-200.",
"title": "Limit",
"type": "integer"
}
},
"title": "browse_codesArguments"
}🟢get_notice(notice_id)
One SAM.gov contract notice as SpendQuery's brief sees it, no AI: the decision card (what the buyer needs, blockers, unknowns, a next step; each line labelled record / files / unknown), the timeline of the buy (planned buy, the contract it follows, earlier and newer notices, the award and the contract it became, each link confirmed / likely / possible) and what changed between versions of its public files. notice_id: from run_plan lists of contract_opportunities, or the id in a SAM.gov notice URL.
Esquema de entrada
{
"type": "object",
"properties": {
"notice_id": {
"description": "A SAM.gov notice id: the 32-character hex id in a SAM.gov notice URL (sam.gov/opp/<id>/view) or from run_plan's contract_opportunities rows, e.g. \"0a1b2c3d4e5f60718293a4b5c6d7e8f9\".",
"title": "Notice Id",
"type": "string"
}
},
"required": [
"notice_id"
],
"title": "get_noticeArguments"
}🟢size_standard(query)
SBA small business size standards (13 CFR 121.201, the eCFR table): a NAICS code, a code prefix (5415) or industry words -> receipts ($ millions) or employees, exceptions and footnotes, and the programs that use them.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"description": "A 6-digit NAICS code (e.g. \"541511\"), a code prefix (e.g. \"5415\") or industry words (e.g. \"custom software\").",
"title": "Query",
"type": "string"
}
},
"required": [
"query"
],
"title": "size_standardArguments"
}🟢naics_finder(description)
Describe the work in plain words -> the NAICS codes buyers actually use for it (codes on SAM.gov notices whose titles have the words and on federal contracts described with them), each with its SBA size standard.
Esquema de entrada
{
"type": "object",
"properties": {
"description": {
"description": "The work in plain words, e.g. \"commercial janitorial and floor care\" or \"drone mapping surveys\".",
"title": "Description",
"type": "string"
}
},
"required": [
"description"
],
"title": "naics_finderArguments"
}🟢vehicle_match(naics, agency)
For 6-digit NAICS codes (and an optional agency): the shared contract vehicles (GWACs, multiple-award IDIQs, GSA Schedule, BPAs) carrying last complete year's contract money in those codes, the share through each and who each is reserved for (read from its name).
Esquema de entrada
{
"type": "object",
"properties": {
"naics": {
"description": "One or more 6-digit NAICS codes, e.g. [\"541511\", \"541512\"].",
"items": {
"type": "string"
},
"title": "Naics",
"type": "array"
},
"agency": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "An agency to limit to, by name or code, e.g. \"Department of Veterans Affairs\" or \"036\".",
"title": "Agency"
}
},
"required": [
"naics"
],
"title": "vehicle_matchArguments"
}🟢search_far(query, reg)
Search the FAR and the DFARS (48 CFR chapters 1 and 2, as codified in the eCFR): sections whose title or text has every word, or a section number (e.g. 52.219-14) straight to it. reg: FAR | DFARS to limit. Returns section numbers, titles and a snippet; read one with get_far_section. The codified text lags the Revolutionary FAR Overhaul's class deviations.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"description": "Words that must all appear in the section's title or text (e.g. \"limitations on subcontracting\"), or a section number (e.g. \"52.219-14\").",
"title": "Query",
"type": "string"
},
"reg": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Limit to one regulation: FAR or DFARS; omit for both.",
"enum": [
"FAR",
"DFARS",
null
],
"title": "Reg"
}
},
"required": [
"query"
],
"title": "search_farArguments"
}🟢get_far_section(section)
One FAR or DFARS section's full text (paragraphs), its part and subpart, the sections it refers to and the ones referring to it, and Federal Register rules changing its part. Cite it as FAR <section> (or DFARS) with the as-of date in source.
Esquema de entrada
{
"type": "object",
"properties": {
"section": {
"description": "A FAR or DFARS section number, e.g. \"52.204-21\", \"19.502-2\" or \"252.204-7012\".",
"title": "Section",
"type": "string"
}
},
"required": [
"section"
],
"title": "get_far_sectionArguments"
}🟢search_local_bids(q, state, kind, source, limit)
State, county and city government bids and contracts (not federal awards), from the governments that publish them as open data: Los Angeles (the City, LA County, LADWP, LAUSD, airports, port, Metro), New York City, San Francisco, Washington DC, Chicago, Cook County, Austin, Detroit, Richmond, Sacramento, Baton Rouge, Montgomery County MD, Delaware, Texas DOT, California state departments (Cal eProcure), SUNY construction, E-Rate and others. kind: "open" (taking responses, soonest due first), "planned" (forecasts: TxDOT's planned lettings, Illinois CDB, San Diego County), "awarded" (contracts first awarded in the last year: who won, net amounts) or "current" (in force today, soonest ending first: the re-bids). q: words in the title or description; state: two-letter code (open and planned bids); source: one source key from the reply's sources. Coverage is partial: no tool has every state, county and city; say so when the place asked about isn't covered. Each row links to the government's own record (source_url).
Esquema de entrada
{
"type": "object",
"properties": {
"q": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Words in the title or description, e.g. \"roofing\" or \"janitorial\".",
"title": "Q"
},
"state": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Two-letter state code, e.g. \"TX\" (open and planned bids).",
"title": "State"
},
"kind": {
"default": "open",
"description": "open (taking responses, soonest due first), planned (forecasts), awarded (contracts first awarded in the last year) or current (in force today, soonest ending first).",
"enum": [
"open",
"planned",
"awarded",
"current"
],
"title": "Kind",
"type": "string"
},
"source": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "One source key from the reply's sources, e.g. \"txdot\", \"nyc\", \"lacity\".",
"title": "Source"
},
"limit": {
"default": 25,
"description": "Most rows to return, 1-50.",
"title": "Limit",
"type": "integer"
}
},
"title": "search_local_bidsArguments"
}🟢sbir_awards(agency, phase, program, state, q, ...)
SBIR and STTR awards since 1983 from SBA's SBIR.gov records, and who received them: totals, awards by year (Phase I / II), by agency, the companies with the most, and the latest awards (company, title, agency, phase, amount, year). Filters: agency (as SBIR.gov names it, e.g. "Department of Defense"), phase ("Phase I" or "Phase II"), program ("SBIR" or "STTR"), state (the winner's), q (words in the award title), company_uei, since (first award year). open_topics: also the SBIR/STTR solicitations open now (SAM.gov and Grants.gov). SBIR.gov counts awards by award year; USAspending (run_plan) counts money by fiscal year, so the two differ.
Esquema de entrada
{
"type": "object",
"properties": {
"agency": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "The awarding agency as SBIR.gov names it, e.g. \"Department of Defense\", \"National Science Foundation\".",
"title": "Agency"
},
"phase": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "The award phase: Phase I or Phase II.",
"enum": [
"Phase I",
"Phase II",
null
],
"title": "Phase"
},
"program": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "The program: SBIR or STTR.",
"enum": [
"SBIR",
"STTR",
null
],
"title": "Program"
},
"state": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "The winner's two-letter state code, e.g. \"VA\".",
"title": "State"
},
"q": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Words in the award title, e.g. \"hypersonic\" or \"battery\".",
"title": "Q"
},
"company_uei": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "A winner's 12-character UEI, e.g. \"ZFN2JJXBLZT3\".",
"title": "Company Uei"
},
"since": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "First award year to count, e.g. 2020.",
"title": "Since"
},
"open_topics": {
"default": false,
"description": "Also list the SBIR/STTR solicitations open now (SAM.gov and Grants.gov).",
"title": "Open Topics",
"type": "boolean"
}
},
"title": "sbir_awardsArguments"
}Comunidad
Evidencia