io.github.matchawards/matchawards-mcp

MatchAwards

Search US government contracts, grants and jobs from matchawards.com. Read-only, no key.

0.3.0
Version
remote + pypi
Transport
6
Tools

Security review

Review passed

Reviewed 1d ago.

  • tools: 6 tools scanned
  • metadata: scanned
  • packages: 1 checked

No findings.

Tools (6)

  • search_contracts

    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.

  • search_grants

    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".

  • search_jobs

    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.

  • search_by_naics

    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".

  • get_opportunity

    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".

  • find_contacts

    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".