Search / io.github.matchawards/matchawards-mcp
MatchAwards
R0· no sign-inSearch US government contracts, grants and jobs from matchawards.com. Read-only, no key.
v1.0.4 · active · repository · website · descriptor JSON · versions
Search / io.github.matchawards/matchawards-mcp
R0· no sign-inSearch US government contracts, grants and jobs from matchawards.com. Read-only, no key.
v1.0.4 · active · repository · website · descriptor JSON · versions
{
"mcpServers": {
"matchawards-mcp": {
"type": "http",
"url": "https://matchawards.com/mcp"
}
}
}claude mcp add --transport http matchawards-mcp https://matchawards.com/mcp[mcp_servers.matchawards-mcp]
url = "https://matchawards.com/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"matchawards-mcp": {
"type": "remote",
"url": "https://matchawards.com/mcp",
"enabled": true
}
}
}{
"mcpServers": {
"matchawards-mcp": {
"type": "http",
"url": "https://matchawards.com/mcp"
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=matchawards-mcp&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vbWF0Y2hhd2FyZHMuY29tL21jcCJ9"
}{
"servers": {
"matchawards-mcp": {
"type": "http",
"url": "https://matchawards.com/mcp"
}
}
}{
"mcpServers": {
"matchawards-mcp": {
"httpUrl": "https://matchawards.com/mcp"
}
}
}extensions:
"matchawards-mcp":
enabled: true
name: "matchawards-mcp"
type: streamable_http
uri: "https://matchawards.com/mcp"
timeout: 300
protocol.modernsupports 2026-07-28 (server/discover)protocol.statelessanswers without a sessionprotocol.transportstreamable HTTPprotocol.list_ttltool list is cacheable (ttlMs 86400000)auth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptionsevery tool has a descriptiontools.description_length1 tools have descriptions over 1,024 characters, which crowds the contexttools.schemasevery tool has an object input schematools.annotations10 of 10 tools declare readOnlyHint or destructiveHinttools.directory_hintsevery tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHinttools.token_costabout 4,462 tokens to load every tooltools.api_dumptools are not a one-to-one API dumpstability.changes12 tool changes in 30 daysstability.rug_pull1 tools kept their name but changed most of their description in 30 days; review before trusting themfind_contactsremovedGet 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".
search_by_naicsremovedList 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".
show_resultsaddedUse this last, after searching, to show the user the opportunities you picked as a card. Pass up to 10 ids from search_contracts or search_grants results, best first. Keep your reply to a short summary; the card shows the rows. Ids from search_jobs or search_awards are not shown. Do not use to search (search_contracts, search_grants) or for one result's details (get_opportunity).
find_teaming_partnersaddedUse this when the user wants possible teaming partners, subcontractors or primes for one opportunity: firms that won similar awards in the same state or at the same agency. Pass the id from a search result, and optionally role (sub, prime or any). Returns up to 10 firms from MatchAwards' award records (same NAICS in the opportunity's state, then at its agency, else anywhere; sample gives the dates covered and whether every matching record was read), ranked by how many similar awards they won, each with a why line; get_company(uei) shows the history of a firm with a uei. No contact details. Award records may be incomplete, so say so; ai_subcontracting is AI-generated, so label it. Never call a firm the incumbent. Example: id="117412688283576625". Print the opportunity's url and sam_url as markdown links. Do not use for searching awards in general (search_awards), for one firm's history (get_company) or for job postings.
assess_opportunityaddedUse this when the user asks whether to bid on one opportunity, or wants a qualification brief on it: days left, set-aside, AI fit notes, similar past awards, the firms that typically win such work and the usual award value. Pass the id from a search result, and optionally my_naics (up to 10 codes) and my_set_aside to check the fit. Similar awards come from MatchAwards' award records for the same NAICS at the same agency, or at all agencies when that agency has none (basis says which); sample gives the dates covered and whether every matching record was read, so state that span rather than a longer one. Award records may be incomplete, so say so; ai text is AI-generated, so label it. Never call a firm the incumbent: these are firms that won similar work. Example: id="117412688283576625". Print url, sam_url and each award's url and source_url as markdown links. Do not use for searching (search_contracts, search_grants), for finding partners (find_teaming_partners) or for job postings.
get_companyaddedUse this when the user wants one firm's government award history and its UEI is known, e.g. from a search_awards row. Returns the firm's name and other spellings, location (city, state, country), totals for contract and grant awards, first and last award dates, top NAICS codes and agencies, and its 10 most recent awards. No contact details. Award records may be incomplete, so say so. Example: uei="C3KXNLTAAY98". Print each recent award's url and source_url as markdown links. Do not use for finding firms by name or NAICS (search_awards) or for contact details (none are available).
search_awardsaddedUse this when the user asks who won government contracts or grants: past awards by NAICS, agency, state, awardee name or UEI, with amounts and dates. Filters: type (contract_award, grant_award or any), naics (up to 10 codes), agency (a name; the note says which agency it matched), state, awardee (part of a name), uei, keyword (matched in the title; a grant award's title is its recipient's name), awarded_within_days (1 to 1095, default 365), limit (1 to 50, default 20). If has_more is true, call again with cursor=next_cursor and the same filters. Example: naics="541512", agency="Department of Veterans Affairs". Pass several NAICS codes in one call. Award records may be incomplete, so say so. Head a grant award with its awardee name and CFDA number, not its title. Pass an awardee's uei to get_company for its full history. Print each award's url and source_url as markdown links. Do not use for open opportunities to bid on (search_contracts, search_grants) or for one firm's history when its UEI is known (get_company).
lookup_naicsaddedUse this when the user describes a line of work in words and a NAICS code is needed, or asks what a code or code prefix covers. query is words (2 to 100 characters; common terms such as cybersecurity or janitorial list their usual codes first) or 2 to 6 digits (every six-digit code starting with them). limit is 1 to 25, default 10. Pass the codes as naics to search_contracts, search_grants, search_jobs or search_awards. Print each opportunities_url that is set as a markdown link. Do not use for searching opportunities or awards themselves (the search tools take the codes).
get_opportunitychangedtitle, description, output schema, annotationsmeaning changedGet 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".
Use this when the user wants the details of one search result, or who to contact about it. Pass the id from a search result. Returns the result's row plus its description (up to 2000 characters), published points of contact (name and title only) and, when MatchAwards has them, ai: AI-generated notes on fit, subcontracting and large-prime angles and a summary. AI text is AI-generated: label it as such whenever you quote it. Example: id="117402307943537453". Print url, and sam_url for federal notices, as markdown links. Do not use for searching (search_contracts, search_grants, search_jobs) or for contact details beyond the published names and titles.
search_jobschangedtitle, description, input schema, output schema, annotationsSearch 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.
Use this when the user is looking for a job, or for hiring signals, among postings from the last 30 days. Filters: naics (up to 10 codes), state, keyword (title only), posted_within_days (posted within the last 1 to 30 days, default 30), limit (1 to 50, default 20). Rows carry title, agency (the employer), state, city, posted_at and url. If has_more is true, call again with cursor=next_cursor and the same filters. Example: keyword="electrician", state="TX". Pass several NAICS codes in one call. Print each result's url as a markdown link. Do not use for contracts (search_contracts) or grants (search_grants).
Showing the latest 10. Full history: list_changes · trend: quality JSON.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+repository +namespace-matches-repo +website +reachable +uptime-100% +updated-7d-ago
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
[email protected] PyPIthis version is not known to the dependency resolver
Dependency graphs from deps.dev; advisories from OSV.dev, including the GitHub Advisory Database and the PyPI Advisory Database; all CC BY 4.0. The graph is what a clean install of this version resolves today; nothing was installed or run. How it is checked.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://matchawards.com/mcp streamable-http | none | yes | 100% | 255 ms | 2026-07-28 | 2026-10-20 |
| package | registry | version | runtime | secrets |
|---|---|---|---|---|
matchawards-mcp | pypi | 1.0.4 | uvx |
assess_opportunityread-only | Use this when the user asks whether to bid on one opportunity, or wants a qualification brief on it: days left, set-aside, AI fit notes, similar past awards, the firms that typically win such work and the usual award value. Pass the id from a search result, and optionally my_naics (up to 10 codes) and my_set_aside to check the fit. Similar awards come from MatchAwards' award records for the same NAICS at the same agency, or at all agencies when that agency has none (basis says which); sample gives the dates covered and whether every matching record was read, so state that span rather than a longer one. Award records may be incomplete, so say so; ai text is AI-generated, so label it. Never call a firm the incumbent: these are firms that won similar work. Example: id="117412688283576625". Print url, sam_url and each award's url and source_url as markdown links. Do not use for searching (search_contracts, search_grants), for finding partners (find_teaming_partners) or for job postings. |
find_teaming_partnersread-only | Use this when the user wants possible teaming partners, subcontractors or primes for one opportunity: firms that won similar awards in the same state or at the same agency. Pass the id from a search result, and optionally role (sub, prime or any). Returns up to 10 firms from MatchAwards' award records (same NAICS in the opportunity's state, then at its agency, else anywhere; sample gives the dates covered and whether every matching record was read), ranked by how many similar awards they won, each with a why line; get_company(uei) shows the history of a firm with a uei. No contact details. Award records may be incomplete, so say so; ai_subcontracting is AI-generated, so label it. Never call a firm the incumbent. Example: id="117412688283576625". Print the opportunity's url and sam_url as markdown links. Do not use for searching awards in general (search_awards), for one firm's history (get_company) or for job postings. |
get_companyread-only | Use this when the user wants one firm's government award history and its UEI is known, e.g. from a search_awards row. Returns the firm's name and other spellings, location (city, state, country), totals for contract and grant awards, first and last award dates, top NAICS codes and agencies, and its 10 most recent awards. No contact details. Award records may be incomplete, so say so. Example: uei="C3KXNLTAAY98". Print each recent award's url and source_url as markdown links. Do not use for finding firms by name or NAICS (search_awards) or for contact details (none are available). |
get_opportunityread-only | Use this when the user wants the details of one search result, or who to contact about it. Pass the id from a search result. Returns the result's row plus its description (up to 2000 characters), published points of contact (name and title only) and, when MatchAwards has them, ai: AI-generated notes on fit, subcontracting and large-prime angles and a summary. AI text is AI-generated: label it as such whenever you quote it. Example: id="117402307943537453". Print url, and sam_url for federal notices, as markdown links. Do not use for searching (search_contracts, search_grants, search_jobs) or for contact details beyond the published names and titles. |
lookup_naicsread-only | Use this when the user describes a line of work in words and a NAICS code is needed, or asks what a code or code prefix covers. query is words (2 to 100 characters; common terms such as cybersecurity or janitorial list their usual codes first) or 2 to 6 digits (every six-digit code starting with them). limit is 1 to 25, default 10. Pass the codes as naics to search_contracts, search_grants, search_jobs or search_awards. Print each opportunities_url that is set as a markdown link. Do not use for searching opportunities or awards themselves (the search tools take the codes). |
search_awardsread-only | Use this when the user asks who won government contracts or grants: past awards by NAICS, agency, state, awardee name or UEI, with amounts and dates. Filters: type (contract_award, grant_award or any), naics (up to 10 codes), agency (a name; the note says which agency it matched), state, awardee (part of a name), uei, keyword (matched in the title; a grant award's title is its recipient's name), awarded_within_days (1 to 1095, default 365), limit (1 to 50, default 20). If has_more is true, call again with cursor=next_cursor and the same filters. Example: naics="541512", agency="Department of Veterans Affairs". Pass several NAICS codes in one call. Award records may be incomplete, so say so. Head a grant award with its awardee name and CFDA number, not its title. Pass an awardee's uei to get_company for its full history. Print each award's url and source_url as markdown links. Do not use for open opportunities to bid on (search_contracts, search_grants) or for one firm's history when its UEI is known (get_company). |
search_contractsread-only | Use this when the user wants US federal or state government contract opportunities to bid on: bids, RFPs, solicitations, set-asides. Filters: naics (up to 10 codes), state, keyword (title only), set_aside (federal only), type (federal or state), posted_within_days (1 to 180), open (default true), agency (a name; the note says which agency it matched), limit (1 to 50, default 20). If has_more is true, call again with cursor=next_cursor and the same filters. Example: naics="238160", state="VA", keyword="roof". Pass several NAICS codes in one call. Print each result's url, and sam_url for federal notices, as markdown links. Do not use for grants (search_grants), jobs (search_jobs) or one result's details (get_opportunity). When you are done searching, call show_results once with the best ids; it shows them as a card the user can pick from. |
search_grantsread-only | Use this when the user wants US federal grants or funding opportunities. Filters: naics (up to 10 codes), keyword (title only), posted_within_days (1 to 180), open (default true: open grants of any age), limit (1 to 50, default 20). Grant notices carry no state. If has_more is true, call again with cursor=next_cursor and the same filters. Example: keyword="broadband". Pass several NAICS codes in one call. Open status may lag for grants that closed recently, so check response_deadline. Print each result's url as a markdown link. Do not use for contracts to bid on (search_contracts) or jobs (search_jobs). When you are done searching, call show_results once with the best ids; it shows them as a card the user can pick from. |
search_jobsread-only | Use this when the user is looking for a job, or for hiring signals, among postings from the last 30 days. Filters: naics (up to 10 codes), state, keyword (title only), posted_within_days (posted within the last 1 to 30 days, default 30), limit (1 to 50, default 20). Rows carry title, agency (the employer), state, city, posted_at and url. If has_more is true, call again with cursor=next_cursor and the same filters. Example: keyword="electrician", state="TX". Pass several NAICS codes in one call. Print each result's url as a markdown link. Do not use for contracts (search_contracts) or grants (search_grants). |
show_resultsread-only | Use this last, after searching, to show the user the opportunities you picked as a card. Pass up to 10 ids from search_contracts or search_grants results, best first. Keep your reply to a short summary; the card shows the rows. Ids from search_jobs or search_awards are not shown. Do not use to search (search_contracts, search_grants) or for one result's details (get_opportunity). |
Schemas: list_tools.
{
"name": "io.github.matchawards/matchawards-mcp",
"title": "MatchAwards",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://matchawards.com/mcp",
"type": "streamable-http"
}
],
"version": "1.0.4",
"packages": [
{
"version": "1.0.4",
"transport": {
"type": "stdio"
},
"identifier": "matchawards-mcp",
"runtimeHint": "uvx",
"registryType": "pypi",
"registryBaseUrl": "https://pypi.org",
"environmentVariables": [
{
"name": "MATCHAWARDS_API_BASE",
"default": "https://matchawards.com",
"description": "Base URL of the MatchAwards API. Leave unset to use https://matchawards.com; set only for development."
}
]
}
],
"repository": {
"url": "https://github.com/matchawards/matchawards-mcp",
"source": "github"
},
"websiteUrl": "https://matchawards.com",
"description": "Search US government contracts, grants and jobs from matchawards.com. Read-only, no key."
}