Skip to main content

How to check federal exclusions with AI

Checking a subrecipient the manual way means opening SAM.gov, running the search, saving a screenshot, filing it where the auditor can find it, and repeating for every vendor you monitor. The check itself is free and always sufficient. The repetition is what costs you the afternoon. With MCP, you ask your AI assistant instead, and every answer comes back with a sealed verification record.

What is MCP?

Model Context Protocol is an open standard that lets AI assistants call external tools. federal.contractors serves a hosted MCP endpoint at https://federal.contractors/mcp, so Claude, Cursor, or any MCP-compatible assistant can run exclusion checks through the same verification API your systems would call. There is nothing to install for HTTP-capable clients; you point the client at the URL with your API key.

What backs each answer

An assistant asserting that a vendor is clear is just model output. Here, every check creates a format 2 record with the input, result, separate check and source times, source artifact and completeness facts, method versions, identity basis, candidate state, and limitations. Its SHA-256 seal can be recomputed from the RFC 8785 canonical payload. A matching checksum alone shows byte consistency. New production records add an RFC 9943 SCITT issuer signature over those exact bytes and a DigiCert RFC 3161 timestamp over the RFC 9921 signature imprint. The timestamp proves that issuer signature existed no later than the Timestamp Authority's time. Neither mechanism proves source truth, matching correctness, identity, check execution time, or a legal outcome. No independent Transparency Service receipt is attached. The assistant returns a permanent record URL you can file or share. The record is evidence of diligence, not a verdict.

Read What is SCITT? for the Signed Statement, receipt, and verification layers.

The tools

  • verify_entity

    Runs an exclusion check on one entity by UEI, CAGE code, or legal name and seals a verification record.

    "Check RZK2AJC7QGA3 against the exclusion list and give me the record link."

  • verify_batch

    Checks up to 100 entities in one call, one sealed record each.

    "Here are our 40 subrecipient UEIs. Check all of them and list any with exclusion matches."

  • get_record

    Fetches an existing sealed record by id. Included without charge and does not reduce the record-credit balance.

    "Pull up record vr_abc123 and summarize what was checked."

Setup

Create an API key on the API keys page. Every account receives a one-time allowance of 50 API-created verification records without charge. Additional credits are purchased upfront in $50 packs of 100 records. No monitoring subscription is required.

Any MCP client that speaks streamable HTTP connects the same way: point it at https://federal.contractors/mcp and send the key as an Authorization: Bearer header. In Cursor, Windsurf, VS Code, and most other clients that is one entry in the MCP config file (the file name and top-level key vary by client; the endpoint and header never do):

{
  "mcpServers": {
    "federal-contractors": {
      "type": "http",
      "url": "https://federal.contractors/mcp",
      "headers": { "Authorization": "Bearer fc_your_key" }
    }
  }
}

Claude Code registers the same endpoint with one command:

claude mcp add --transport http federal-contractors \
  https://federal.contractors/mcp \
  --header "Authorization: Bearer fc_your_key"

Clients without native HTTP support, Claude Desktop among them, connect through the mcp-remote stdio bridge (requires Node.js 18+). Add to claude_desktop_config.json and restart the app:

{
  "mcpServers": {
    "federal-contractors": {
      "command": "npx",
      "args": [
        "-y", "mcp-remote", "https://federal.contractors/mcp",
        "--header", "Authorization: Bearer fc_your_key"
      ]
    }
  }
}

Or hand the setup to a coding agent. Paste this prompt into Claude Code, Cursor, or any agent with web access, and it follows the plain-markdown instructions at /agent-setup.md:

Follow the instructions at https://federal.contractors/agent-setup.md to add federal.contractors exclusion checks to this project.

What to ask

"Check this vendor before I sign the subaward." "Check this list of UEIs and flag anything with matches." "Re-check the three vendors we onboarded last quarter and give me fresh record links." Each answer cites the record it sealed, with the extract date it was checked against.

Full request and response formats, record balance fields, and key management are on the API page.