关于 SAM.gov
SAM.gov 是面向联邦承包商和采购团队的 MCP 服务,处理注册、排除名单、商机、合同授予及相关记录。托管版提供 6 个免密钥工具,本地版提供 20 个工具,涵盖更多授标、分包和组织数据。
主要功能
- 01搜索合同商机和公告
- 02查询实体注册及排除记录
- 03获取合同授予记录和修改信息
- 04浏览联邦组织层级
- 05搜索采购及援助分包数据
- 06执行供应商责任检查
适用场景
- 01按机构和预留类别查找招标
- 02核查供应商注册状态及排除记录
- 03审阅承包商授标历史和变更
- 04追踪联邦组织及申报的分包记录
MCP 相关
它通过 MCP 工具提供 SAM.gov 数据。托管版有 6 个免密钥工具,涵盖商机、公开实体注册和排除记录;本地完整版本有 20 个工具,需要 SAM.gov API 密钥。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://sam.1102tools.com/mcpclaude mcp add --transport http com-1102tools-sam-gov https://sam.1102tools.com/mcp{"mcpServers":{"com-1102tools-sam-gov":{"type":"http","url":"https://sam.1102tools.com/mcp"}}}在 Cursor 中打开{"servers":{"com-1102tools-sam-gov":{"type":"http","url":"https://sam.1102tools.com/mcp"}}}在 VS Code 中打开{"mcpServers":{"com-1102tools-sam-gov":{"type":"http","url":"https://sam.1102tools.com/mcp"}}}{"mcpServers":{"com-1102tools-sam-gov":{"serverUrl":"https://sam.1102tools.com/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
20此工具无需参数。
详细介绍
sam-gov-mcp
免费开源的 MCP 服务,提供 SAM.gov 实体注册、排除/取消资格、合同机会、合同授予、联邦层级结构和 FFATA 分包数据。
概览、演示视频和托管设置:https://1102tools.com/mcp/sam-gov
提供两个版本:托管版,包含 6 个无需密钥的工具,用于查询合同机会、公开实体注册信息和排除信息;以及本地版,包含完整的 20 个工具,需使用免费的 SAM.gov 密钥。请参阅本地版或托管版。
回归测试包括对 SAM.gov API 的实时检查。2026 年 10 月发布的版本还根据 SAM.gov 官方记录,使用贴近实际的合同问题进行了检查。请参阅 testing.md。
本地版或托管版
SAM.gov 提供两个版本。托管版是唯一无需密钥的版本。
| 本地版(完整版本) | 托管版 | |
|---|---|---|
| 安装 | 安装在你的电脑上。将此页面链接发给 AI 并让它帮你设置,或从安装开始 | 从 Claude 或 ChatGPT 目录添加 |
| API 密钥 | 免费的 SAM.gov 密钥,每 90 天过期 | 无 |
| 工具 | 20 | 6 |
| 覆盖范围 | 合同机会,以及实体注册、SBA 认证、排除信息、陈述与证明、诚信记录、合同授予记录、联邦层级结构和分包 | 合同机会、授予公告、理由说明、公开实体注册信息、企业/SBA 认证代码以及排除信息 |
| 数据 | SAM.gov 实时 API 数据,受密钥每日限额约束 | SAM.gov 的公开文件:合同机会和排除信息每日更新,实体注册信息每月更新;结果附带源文件名和日期 |
| 适用平台 | Claude 或 ChatGPT 桌面应用及其他 AI 应用,可在台式机或笔记本电脑上使用 | Claude 或 ChatGPT 网页版、桌面版和手机版 |
| 更新 | 手动更新。本地安装不会自动更新。请 AI 帮你更新 | 自动更新。始终运行最新版本 |
| 本地版(桌面端) | Claude(托管版) | ChatGPT(托管版) |
|---|---|---|
| 本地设置 | 安装 | 安装 |
托管版:6 个工具,无需密钥
托管版可查找并读取合同机会、公共实体注册信息和排除记录。它提供 SAM.gov 发布供公众下载的文件副本,因此无需 API 密钥,也无需本地设置。机会和排除记录每日发布;公共实体注册信息每月发布。服务每两小时检查一次机会文件,每四小时检查一次公共实体和排除文件,并会在通常的排除记录发布时间之后额外检查一次。刷新仍受现有运行预算限制;未更改的文件不会写入任何行。每条结果中显示的日期表示实际加载文件的日期;文件发布并不意味着会立即刷新。刷新尚未完成时,受影响的公共工具会提示数据正在刷新,并请你重试。
| 工具 | 功能 |
|---|---|
search_opportunities | 按关键词(标题和完整描述)、NAICS、PSC、预留类别、公告类型、机构、州以及发布日期或响应日期搜索公告。授标公告和理由说明均属于公告类型。 |
get_opportunity | 完整公告:描述、联系人、授标详情和 sam.gov 链接 |
summarize_opportunities | 按机构、NAICS、预留类别或公告类型统计数量 |
search_entities | 通过 UEI 或 CAGE 查询公共注册信息,或按名称、NAICS、州、企业类型 / SBA 认证代码以及注册状态(有效)搜索 |
search_exclusions | 按 UEI、CAGE 或名称查询公共排除记录 |
get_data_status | 机会、实体和排除记录的源文件名称与日期、加载时间及行数 |
只要仍然有效,较早的公告也可能出现在结果中,包括在较早财年发布的公告。这并非完整的历史档案;不包含归档公告及附件(结果会链接到 sam.gov 上的公告)。如需更全面的授标历史记录,可与 USAspending MCP 配合使用。
每条实体和排除记录结果都包含其源文件名称和日期。选择不公开显示的实体不会包含在托管公共镜像中;搜索不到结果并不能证明该实体未注册。依赖注册查询结果前,请在 SAM.gov 上确认当前注册状态。排除记录结果是基于有日期标注的公共文件进行的查询;如发现重要信息,请在 SAM.gov 上核实。
有效注册并不代表当前拥有 SBA 认证。公共 8(a) 代码在记录的认证退出日期之后仍可能保留;请检查 certificationExitDate,并向 SBA 确认当前认证状态。
本地完整版:满足更多需求时使用
完整版包含托管版的所有功能,另外还包括合同授标、分包授标、陈述与认证,以及以往的终止和法律诉讼记录。
完整版仅支持本地使用。将本页链接提供给你的 AI,并请它帮你设置;也可以从安装开始。它需要你自己的免费 SAM.gov 密钥,且受该密钥的每日限额约束;请参阅身份验证。
功能
将七个 SAM.gov REST API 以及凭据就绪状态检查封装为 20 个 MCP 工具:
实体管理(v3)
lookup_entity_by_uei- 查询单个 UEI,并可配置响应部分lookup_entity_by_cage- 查询 CAGE 代码search_entities- 灵活的实体搜索(NAICS、PSC、企业类型、州、名称等)get_entity_reps_and_certs- FAR/DFARS 陈述与认证(必须明确请求)get_entity_integrity_info- FAPIIS 诉讼程序数据
排除名单(v4)
check_exclusion_by_uei- 检查单个 UEI 是否被列入除名名单search_exclusions- 按名称、分类、计划、机构和日期进行更广泛的排除名单搜索
合同机会(v2)
search_opportunities- 使用完整可用筛选条件集搜索合同机会get_opportunity_description- 按公告 ID 获取 HTML 描述
合同授予(v1)——FPDS 替代方案
search_contract_awards- 搜索合同授予记录(供应商、机构、NAICS、日期、金额、预留类别等)lookup_award_by_piid- 查询单个 PIID 的所有修改记录search_deleted_awards- 搜索已删除的授予记录以供审计追踪
联邦层级结构(v1)
search_federal_organizations- 搜索联邦层级结构(FH)中的部门、机构、下属机构和办公室(按 FH 组织 ID、名称、类型、状态、机构代码、CGAC 筛选)get_organization_hierarchy- 遍历联邦组织的下属组织
采购分包报告(FFATA 分包)
search_acquisition_subawards- 搜索 FFATA 分包报告(主承包商/分包商关系、机构、日期、状态)
援助分包报告(FFATA 资助分包)
search_assistance_subawards- 搜索 FFATA 资助分包报告(FAIN、主授予密钥、机构、日期)
PSC 查询
lookup_psc_code- 查询 PSC 代码的完整记录search_psc_free_text- 通过自由文本查找 PSC
组合工作流
vendor_responsibility_check- 一次性执行 FAR 9.104-1 检查(通过一次工具调用同时检查实体和排除名单)
身份验证
需要通过 SAM_API_KEY 环境变量设置 SAM.gov API 密钥。
登录后,按照 SAM.gov 帮助 中的 Public API Key 说明获取免费的个人 API 密钥。
| 账户类型 | 每日限额 |
|---|---|
| 非联邦账户,无 SAM 角色 | 10/天 |
| 非联邦账户,有 SAM 角色 | 1,000/天 |
| 联邦个人账户 | 1,000/天 |
| 联邦系统账户 | 10,000/天 |
重要提示:SAM.gov API 密钥每 90 天过期一次。 请使用 SAM.gov 帮助验证或重新生成密钥,并更新环境变量。如果遇到 401/403 错误,此服务会返回清晰且可执行的错误信息,并附上重新生成密钥的说明。
安装
通过 uvx
uvx --refresh-package sam-gov-mcp --from sam-gov-mcp sam-gov-mcp
通过 pip
pip install sam-gov-mcp
从源代码安装
git clone https://github.com/1102tools-dev/federal-contracting-mcps.git
cd federal-contracting-mcps/servers/sam-gov-mcp
pip install -e .
配置
使用以下配置作为服务定义,并根据兼容的 MCP 客户端调整其放置位置。有关使用此服务的实际请求,请参阅 提示词库。
{
"mcpServers": {
"sam-gov": {
"command": "uvx",
"args": ["--refresh-package", "sam-gov-mcp", "--from", "sam-gov-mcp", "sam-gov-mcp"],
"env": {
"SAM_API_KEY": "SAM-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}
}
}
}
--refresh-package 标志会指示 uv 在客户端每次启动服务时检查 PyPI 是否有更新版本,以便自动获取修复;如果不使用该标志,uv 会一直运行首次缓存的版本。此操作会在启动时增加少量网络耗时,因此如果你的平台设置了较短的 MCP 启动超时时间,请适当延长。
重启客户端后,即可使用这些工具。
示例提示词
配置完成后,以下示例展示了该服务高级的独立用法。维护中的 面向 MCP 的请求库包含更全面的内容:
- “针对 [UEI] 进行供应商责任检查,查看注册状态和排除记录,然后单独调取 FAPIIS 诚信记录;一次性检查不包含这些内容。”
- “调取 [COMPANY] 的注册状态、社会经济类别和任何排除记录。如果 SAM 针对一个 UEI 返回了多个注册记录,请说明这一点,并在选择其中一条之前列出它们。”
- “以摘要模式获取 [COMPANY] 的 FAR 52.212-3 和 DFARS 252.204-7016 代表声明与认证答复,并标出合同官可能需要阅读全文的内容。”
- “[COMPANY] 的联邦授标历史实际上可以追溯到多久以前?按十年检查合同授标记录,从 FY1970 起;1980 年之前的数据量较少,因此应将个位数年份的记录视为档案痕迹,而非数据缺失。”
- “查找 [STATE] 中符合 NAICS [NAICS] 的有效 8(a) 认证企业(由 SBA 认证,而非自行认定)。”
- “搜索过去 30 天内按 NAICS [NAICS] 发布的征求意向通知,并按回复截止日期从最近到最晚排序。”
- “显示本季度发布的 IT 服务 SDVOSB 保留项目招标。”
- “获取通知 ID [paste ID] 的完整描述,并总结 SOW。”
- “搜索 [NAME] 的排除记录:提供分类(企业、个人、船舶)、排除机构,以及每条记录是否有效。”
- “搜索 [COMPANY] 在 2026 财年的合同授标记录,然后查询找到的最大 PIID 的所有修改记录。”
- “显示本财年国防部已删除的合同授标记录。”
- “查找财政部的 Federal Hierarchy ID,并向下遍历一层子级。”
- “显示主 PIID 为 [PIID] 的 FFATA 分包合同,并汇总子授标金额。”
- “调取在拨款 FAIN [FAIN] 下报告的所有子授标。”
- “列出 CGAC 075(HHS)中的机构级组织。”
设计说明
- 仅通过环境变量进行身份验证。 每次调用时都会从环境中读取
SAM_API_KEY。密钥不会进入模型的对话上下文。 - 关注 90 天的有效期。 401/403 错误会转换为可执行的重新生成提示,并附上当前的 SAM.gov 帮助链接。
- 将 API 特性内置为安全防护措施。
- 在客户端强制执行 Entity Management 的大小上限为 10,并给出明确错误
- Exclusions 使用
size而非limit(与其他 SAM 端点不同) - 国家/地区代码必须是 3 个字符的 ISO alpha-3 代码(2 字符代码会被静默地返回为 0)
- 不设置
Accept: application/json标头(如果设置,Exclusions 会返回 406) - 在多值参数的查询字符串中保留方括号、波浪号和感叹号
- 对有问题的参数进行后置筛选。 Opportunities API 会静默忽略
deptname和subtier筛选条件。search_opportunities提供了agency_keyword参数,通过匹配fullParentPathName子字符串对结果进行后置筛选。 includeSections默认值。 实体查询默认包含entityRegistration,coreData。除其他部分外,始终要包含entityRegistration,否则响应中不会包含身份信息。repsAndCerts和integrityInformation需要显式调用工具(get_entity_reps_and_certs、get_entity_integrity_info),因为即使设置includeSections=All也不会包含这些内容。- Contract Awards 响应规范化。 Contract Awards API 对有结果和无结果的响应使用不同的 JSON 包装结构。所有工具都会将其规范化为一致的
{"awardSummary": [...], "totalRecords": int}结构。错误响应为纯文本(而非 JSON),会被检测到并作为可执行错误抛出。 - Contract Awards 分页。 使用
limit/offset(而非 Entity Management 使用的page/size)。limit最大为 100。日期必须采用 MM/dd/yyyy 格式,并使用方括号范围[MM/dd/yyyy,MM/dd/yyyy]。 - 组合工作流。
vendor_responsibility_check将常见的 FAR 9.104-1 检查(实体注册 + 排除项查询)合并为一次工具调用,并返回结构化的标志列表,供后续推理使用。 - 将 Federal Hierarchy 的特性内置为安全防护措施。
- 键名
totalrecords和orglist使用小写(SAM.gov 的其他部分使用 camelCase);规范化器会保留这两种写法 - 默认响应仅包含 ACTIVE 项;传入
status=ACTIVE与不加筛选条件的调用效果相同。传入INACTIVE可将已退役的机构纳入结果 - 实际的
fhorgtype值类似Department/Ind. Agency,但 API 也接受简写(DEPARTMENT、AGENCY),且匹配时不区分大小写
- 键名
- 将 Subaward Reporting 的特性内置为安全防护措施。
- 日期使用 ISO
yyyy-MM-dd格式(而非 Contract Awards 使用的MM/dd/yyyy)。混用格式会在发起网络请求前触发明确的验证错误 - 分页使用
pageNumber/pageSize(而非page/size或limit/offset) - 实时审计(2026 年 4 月)发现有 3 个文档记录的参数大小写会被静默忽略:
PIID会被丢弃(应使用小写的piid),referencedIdvPIID会被丢弃(应使用referencedIDVPIID),referencedIDVAgencyID会被丢弃(应使用referencedIDVAgencyId)。服务中的网络传输层参数名称现已修正
- 日期使用 ISO
所属项目
federal-contracting-mcps:包含 9 个联邦合同数据 MCP 服务的单体仓库。将这些数据源与 MCP 提示词库配合使用。
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。