MatchAwards
Search US government contracts, grants and jobs from matchawards.com. Read-only, no key.
¿Debería usar esto?
Calidad y seguridad
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": {
"matchawards-mcp": {
"command": "uvx",
"args": [
"matchawards-mcp"
]
}
}
}Paquetes ejecutables
0.3.0stdioPuntos de conexión remotos
https://matchawards.com/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (6)
🟢search_contracts(naics, state, keyword, set_aside, type, ...)
Search US federal and state government contract opportunities (bids, RFPs, solicitations). Use this when the user wants contracts to bid on. Returns {as_of, results, has_more, next_cursor}; each result has id, type, title, agency, office, naics {code, title}, set_aside, state, city, posted_at, response_deadline, url (matchawards.com), sam_url and solicitation_number. Filters: naics, state, keyword, set_aside (federal only), type (federal or state), posted_within_days, open (default true), limit, cursor. If has_more is true, call again with cursor=next_cursor and the same filters. Example: naics="238160", state="VA", keyword="roof". For grants use search_grants, for jobs search_jobs.
Esquema de entrada
{
"type": "object",
"properties": {
"naics": {
"anyOf": [
{
"pattern": "^\\s*\\d{6}(\\s*,\\s*\\d{6}){0,9}\\s*$",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Up to 10 six-digit NAICS codes, comma-separated, e.g. '236220' or '541511,541512'. Unknown codes are ignored.",
"title": "Naics"
},
"state": {
"anyOf": [
{
"pattern": "^[A-Za-z]{2}$",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Two-letter US state code, e.g. 'VA'. Many federal notices have no state, so this filter skips them.",
"title": "State"
},
"keyword": {
"anyOf": [
{
"maxLength": 100,
"minLength": 2,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "2 to 100 characters matched against the title only.",
"title": "Keyword"
},
"set_aside": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Set-aside code, e.g. 'SBA' or 'SDVOSBC'. Federal contracts only.",
"title": "Set Aside"
},
"type": {
"anyOf": [
{
"enum": [
"federal",
"state"
],
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Narrow to federal or to state contracts. Leave empty for both.",
"title": "Type"
},
"posted_within_days": {
"anyOf": [
{
"maximum": 180,
"minimum": 1,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Only items posted in the last N days, 1 to 180 (default 180).",
"title": "Posted Within Days"
},
"open": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"description": "true (the default): only items with a response deadline of today or later, US Eastern; an item with no deadline counts as closed. false: include closed ones.",
"title": "Open"
},
"limit": {
"default": 20,
"description": "Number of results to return, 1 to 50.",
"maximum": 50,
"minimum": 1,
"title": "Limit",
"type": "integer"
},
"cursor": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "next_cursor from the previous response. Pass it with the same filters to get the next page.",
"title": "Cursor"
}
},
"title": "search_contractsArguments"
}Esquema de salida
{
"type": "object",
"additionalProperties": true,
"title": "search_contractsDictOutput"
}🟢search_grants(naics, keyword, posted_within_days, open, limit, ...)
Search US federal grant and funding opportunities. Use this when the user wants grants or funding, not contracts. Returns {as_of, results, has_more, next_cursor}; each result has id, title, agency, naics, posted_at, response_deadline and a matchawards.com url. Filters: naics, keyword, posted_within_days, open (default true: open grants of any age), limit, cursor. Grant notices carry no state, so there is no state filter. If has_more is true, call again with cursor=next_cursor and the same filters. Example: keyword="broadband" or naics="541715".
Esquema de entrada
{
"type": "object",
"properties": {
"naics": {
"anyOf": [
{
"pattern": "^\\s*\\d{6}(\\s*,\\s*\\d{6}){0,9}\\s*$",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Up to 10 six-digit NAICS codes, comma-separated, e.g. '236220' or '541511,541512'. Unknown codes are ignored.",
"title": "Naics"
},
"keyword": {
"anyOf": [
{
"maxLength": 100,
"minLength": 2,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "2 to 100 characters matched against the title only.",
"title": "Keyword"
},
"posted_within_days": {
"anyOf": [
{
"maximum": 180,
"minimum": 1,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Only items posted in the last N days, 1 to 180 (default 180).",
"title": "Posted Within Days"
},
"open": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"description": "true (the default): only items with a response deadline of today or later, US Eastern; an item with no deadline counts as closed. false: include closed ones.",
"title": "Open"
},
"limit": {
"default": 20,
"description": "Number of results to return, 1 to 50.",
"maximum": 50,
"minimum": 1,
"title": "Limit",
"type": "integer"
},
"cursor": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "next_cursor from the previous response. Pass it with the same filters to get the next page.",
"title": "Cursor"
}
},
"title": "search_grantsArguments"
}Esquema de salida
{
"type": "object",
"additionalProperties": true,
"title": "search_grantsDictOutput"
}🟢search_jobs(naics, state, keyword, posted_within_days, limit, ...)
Search job postings from the last 30 days listed on MatchAwards. Use this when the user is looking for a job or for hiring signals, not for contracts or grants. Returns {as_of, results, has_more, next_cursor}; each result has id, title, agency (the employer), state, city, posted_at and a matchawards.com url; other fields are null. Filters: naics, state, keyword, posted_within_days (up to 30), limit, cursor. If has_more is true, call again with cursor=next_cursor and the same filters. Example: keyword="electrician", state="TX", posted_within_days=7.
Esquema de entrada
{
"type": "object",
"properties": {
"naics": {
"anyOf": [
{
"pattern": "^\\s*\\d{6}(\\s*,\\s*\\d{6}){0,9}\\s*$",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Up to 10 six-digit NAICS codes, comma-separated, e.g. '236220' or '541511,541512'. Unknown codes are ignored.",
"title": "Naics"
},
"state": {
"anyOf": [
{
"pattern": "^[A-Za-z]{2}$",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Two-letter US state code, e.g. 'VA'. Many federal notices have no state, so this filter skips them.",
"title": "State"
},
"keyword": {
"anyOf": [
{
"maxLength": 100,
"minLength": 2,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "2 to 100 characters matched against the title only.",
"title": "Keyword"
},
"posted_within_days": {
"default": 30,
"description": "Only jobs posted in the last N days, 1 to 30.",
"maximum": 30,
"minimum": 1,
"title": "Posted Within Days",
"type": "integer"
},
"limit": {
"default": 20,
"description": "Number of results to return, 1 to 50.",
"maximum": 50,
"minimum": 1,
"title": "Limit",
"type": "integer"
},
"cursor": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "next_cursor from the previous response. Pass it with the same filters to get the next page.",
"title": "Cursor"
}
},
"title": "search_jobsArguments"
}Esquema de salida
{
"type": "object",
"additionalProperties": true,
"title": "search_jobsDictOutput"
}🟢search_by_naics(naics, type, cursor)
List the newest opportunities for one or more NAICS industry codes. Use this when the user gives NAICS codes and nothing else. Returns up to 20 results, {as_of, results, has_more, next_cursor}, each with a matchawards.com url. Filters: naics (required), type (contract, federal, state, grant or job), cursor (next_cursor of the previous call, same naics and type). For keyword, state or other filters use search_contracts, search_grants or search_jobs. Example: naics="541511,541512", type="federal".
Esquema de entrada
{
"type": "object",
"properties": {
"naics": {
"description": "Up to 10 six-digit NAICS codes, comma-separated, e.g. '236220' or '541511,541512'. Unknown codes are ignored.",
"pattern": "^\\s*\\d{6}(\\s*,\\s*\\d{6}){0,9}\\s*$",
"title": "Naics",
"type": "string"
},
"type": {
"default": "contract",
"description": "contract = federal and state contracts; federal or state = one level only; grant; job.",
"enum": [
"contract",
"federal",
"state",
"grant",
"job"
],
"title": "Type",
"type": "string"
},
"cursor": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "next_cursor from the previous response. Pass it with the same filters to get the next page.",
"title": "Cursor"
}
},
"required": [
"naics"
],
"title": "search_by_naicsArguments"
}Esquema de salida
{
"type": "object",
"additionalProperties": true,
"title": "search_by_naicsDictOutput"
}🟢get_opportunity(id)
Get the full record of one opportunity by its id from a search result. Use this when the user wants details on one result. Returns the search row plus description (up to 2000 characters) and contacts [{name, title}], with the matchawards.com url. Example: id="abc123".
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"description": "The id field of a search result.",
"pattern": "^[A-Za-z0-9_-]{1,128}$",
"title": "Id",
"type": "string"
}
},
"required": [
"id"
],
"title": "get_opportunityArguments"
}Esquema de salida
{
"type": "object",
"additionalProperties": true,
"title": "get_opportunityDictOutput"
}🟢find_contacts(id)
Get only the published points of contact for one opportunity by its id. Use this when the user asks who to contact about a result. Returns {id, title, url, contacts}, where contacts is [{name, title}] as the public matchawards.com page shows them; an empty list means none are published. Example: id="abc123".
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"description": "The id field of a search result.",
"pattern": "^[A-Za-z0-9_-]{1,128}$",
"title": "Id",
"type": "string"
}
},
"required": [
"id"
],
"title": "find_contactsArguments"
}Esquema de salida
{
"type": "object",
"additionalProperties": true,
"title": "find_contactsDictOutput"
}Comunidad
Evidencia