Back to skills
extension
Category: Productivity & OfficeNo API key required

中国招投标信息查询

中国招投标信息查询技能。通过托管的招标查询 MCP 服务,搜索全国招标公告与中标结果、分析企业中标情况、获取公告详情。技能包含 MCP 接入配置、三个工具的参数规范、搜索策略与关键约束。

personAuthor: jiefengshujuhubModelScope

中国招投标信息查询技能

本技能教你如何使用「招标信息查询 MCP」服务,搜索中国全国的招标公告中标结果,分析企业中标情况,获取公告完整详情。

适用场景:用户想了解某领域/某地区在招什么项目、某公司中标了哪些项目、竞争对手分析、政府采购情报等。

本技能面向托管服务,无需自行部署。第一步先接入 MCP,第二步即可用自然语言查询。


第一步:接入 MCP 服务

这是一个云端托管的 MCP 服务,在你的 MCP 客户端中添加以下配置即可连接(当前无需认证 Token):

{
  "mcpServers": {
    "bid-tender-search": {
      "type": "streamable-http",
      "url": "https://mcp.jiefengnews.com/mcp"
    }
  }
}

各客户端接入方式

| 客户端 | 接入步骤 | | ------ | -------- | | Claude Desktop | 编辑 claude_desktop_config.json,加入上述 mcpServers 配置后重启 | | Claude Code | 运行 claude mcp add --transport http bid-tender-search https://mcp.jiefengnews.com/mcp | | Cursor | Settings → MCP → Add Server,类型选 Streamable HTTP,填入 URL | | Cherry Studio | 设置 → MCP 服务器 → 添加,类型选 Streamable HTTP,填入 URL | | 其他 MCP 客户端 | 参考客户端文档,使用 Streamable HTTP(http)类型接入上述 URL |

接入成功后,客户端会列出 3 个工具:search_bid_noticessearch_bid_resultsget_bid_detail


第二步:认识三个工具

1. search_bid_notices — 搜索招标公告

查"谁在采购、采购什么"。

| 参数 | 类型 | 必填 | 说明 | | ---- | ---- | ---- | ---- | | keyword | string | ✅ | 搜索关键词,匹配公告标题 | | start_date | string | | 开始日期,格式 YYYY-MM-DD | | end_date | string | | 结束日期,格式 YYYY-MM-DD | | province | string | | 项目所在省份,中文全称(如 广东省) | | city | string | | 项目所在城市,中文全称(如 深圳市) | | page | int | | 页码,从 1 开始(默认 1) | | page_size | int | | 每页条数(默认 20,最大 100) |

2. search_bid_results — 搜索中标结果

查"谁中标了、中标金额"。参数同上,额外支持

| 参数 | 类型 | 必填 | 说明 | | ---- | ---- | ---- | ---- | | company_name | string | | 中标公司名称过滤 |

3. get_bid_detail — 获取公告详情

查单条公告的完整内容(正文已去 HTML 标签,截断至 2000 字符)。

| 参数 | 类型 | 必填 | 说明 | | ---- | ---- | ---- | ---- | | doc_id | string | ✅ | 文档 ID,取自搜索结果的 _id 字段 | | index_type | string | ✅ | notice(招标公告)或 result(中标结果) |


搜索策略:三步走

遵循「先宽后窄、先公告后结果」的流程:

graph LR
    A[1. search_bid_notices] -->|了解市场在招什么| B[2. search_bid_results]
    B -->|了解谁中标了| C[3. get_bid_detail]
    C -->|查看完整内容| D[分析决策]
  1. 先搜招标公告:用宽泛关键词了解市场上有哪些项目
  2. 再搜中标结果:了解竞争格局,谁中标、金额多少
  3. 最后看详情:对感兴趣的公告,用搜索结果的 _id 获取完整内容

逐步缩小范围:宽泛关键词 → 加日期 → 加地区 → 加公司名。


关键约束(务必遵守)

这些约束直接决定查询成败,调用前必须检查:

| 约束 | ✅ 正确 | ❌ 错误 | | ---- | ------ | ------ | | 日期格式 | 2026-09-01(YYYY-MM-DD) | 2026/09/01202609019月1日 | | 省份名称 | 广东省北京市(中文全称) | 广东北京 | | 城市名称 | 深圳市杭州市(中文全称) | 深圳杭州 | | 每页条数 | page_size ≤ 100 | page_size=500 | | 详情 ID | 用搜索结果的 _id 字段 | 用 id 字段、标题或序号 | | index_type | 只能是 noticeresult | 其他值会报错 |

分页限制

  • 深度分页有上限:from + size ≤ 10000(最多翻到第 10000 条)
  • 超出会报错,应改用更精确的过滤条件(关键词、日期、地区)缩小结果集,而非无限翻页
  • 当结果总数被截断时,响应含 total_note 提示,说明实际结果数 ≥ 显示值,需缩小范围

关键词技巧

  • 先用宽泛关键词(如 信息化),再逐步精确(如 智慧城市 建设
  • 关键词匹配公告标题,为空或过长(> 200 字符)会报错
  • 搜某公司中标时,用 search_bid_resultscompany_name 参数,不要把公司名塞进 keyword

调用示例

示例 1:搜索某地区某时间的招标公告

用户:"帮我找最近一个月广东省智慧城市的招标"

{
  "tool": "search_bid_notices",
  "arguments": {
    "keyword": "智慧城市",
    "province": "广东省",
    "start_date": "2026-08-08",
    "end_date": "2026-09-08",
    "page_size": 20
  }
}

示例 2:分析某公司中标情况

用户:"华为今年中标了哪些项目?"

{
  "tool": "search_bid_results",
  "arguments": {
    "keyword": "信息化",
    "company_name": "华为技术有限公司",
    "start_date": "2026-01-01",
    "page_size": 50
  }
}

示例 3:获取公告详情

用户:"把第一条公告的完整内容给我看看"

先从搜索结果取第一条的 _id,再调用:

{
  "tool": "get_bid_detail",
  "arguments": {
    "doc_id": "<搜索结果中的 _id 值>",
    "index_type": "notice"
  }
}

结果解读

搜索响应结构

search_bid_noticessearch_bid_results 返回:

{
  "total": 1234,
  "page": 1,
  "page_size": 20,
  "items": [
    {
      "_id": "文档ID(用于 get_bid_detail)",
      "title": "公告标题",
      "publish_time": "2026-09-01 10:00:00",
      "project_money": 5000000.0,
      "owner": {"name": "采购人名称"},
      "project_province": "广东省",
      "project_city": "深圳市"
    }
  ]
}

向用户汇报时:

  • 优先展示 title(标题)、publish_time(发布时间)、project_money(项目金额)、采购人/中标公司
  • total 是结果总数;若含 total_note 说明结果被截断,需提示用户缩小范围
  • 中标结果中 bid_company 是中标公司名列表(字符串数组),bid_candidate_company 是候选公司列表

详情响应

get_bid_detail 返回公告全部字段,其中 html_text 为去标签后的正文(截断至 2000 字符)。


错误处理

工具返回 {"error": "..."} 时,按提示修正后重试:

| 错误信息 | 原因 | 修正方法 | | -------- | ---- | -------- | | keyword 不能为空 | 关键词为空 | 提供有效关键词 | | 格式错误 | 日期非 YYYY-MM-DD | 改用 2026-09-01 格式 | | page 必须 >= 1 | 页码非法 | page 从 1 开始 | | 分页过深 | from + size > 10000 | 用更精确的过滤条件缩小范围 | | 不支持的 index_type | index_type 非 notice/result | 改用 noticeresult | | 未找到 ID 为 xxx 的文档 | doc_id 错误 | 用搜索结果的 _id 字段值 | | Elasticsearch 连接失败 | 后端服务临时异常 | 稍后重试 | | Rate limit exceeded | 超出每日请求限额 | 减少请求频率,次日恢复 |


进阶:辅助资源与提示词

服务器还提供以下资源,可按需使用:

  • 资源 bid://schema:索引字段结构说明。不确定有哪些可用过滤字段时,读取此资源
  • 资源 bid://stats/overview:返回两个索引的文档总数,了解数据规模
  • 提示词 bid_search_guide(keyword, region?):生成招标搜索策略引导
  • 提示词 competitor_analysis(company_name):生成公司中标分析引导

使用限额

为保证服务稳定,对每个接入 IP 有请求频率限制(默认每日 50 次,具体以服务端配置为准)。超出会返回 Rate limit exceeded,次日自动恢复。如有更高用量需求,请联系服务提供方。


速查清单

使用本技能时牢记:

  1. 先接入:在客户端配置 https://mcp.jiefengnews.com/mcp(streamable-http,无需 Token)
  2. 三步流程:招标公告 → 中标结果 → 公告详情
  3. 格式严格:日期 YYYY-MM-DD,省市用中文全称(广东省深圳市
  4. 详情用 _idget_bid_detaildoc_id 取自搜索结果的 _id 字段
  5. 避免深翻页:用精确过滤代替翻到 10000 条以后
  6. 公司搜索用 company_name:不要把公司名塞进 keyword