全网招中标数据查询分析

作者:鹿Sir招投标采购v1

全网招中标数据查询与分析,覆盖标讯搜索、临期与拟建项目商机预测、企业主营与历史中标分析、上下游合作客户查询、竞争对手分析、Top采购/中标单位与品牌统计、品牌型号历史中标价格趋势等多维度分析。当用户需要查询招标中标公告、搜索标讯、采购寻源、市场与行业分析、竞对分析等场景时触发。

下载量
445
点赞
109
价格
免费

技能文档

---
name: tender-search
title: 全网招中标数据查询分析
category: 招投标采购
description: 全网招中标数据查询与分析,覆盖标讯搜索、临期与拟建项目商机预测、企业主营与历史中标分析、上下游合作客户查询、竞争对手分析、Top采购/中标单位与品牌统计、品牌型号历史中标价格趋势等多维度分析。当用户需要查询招标中标公告、搜索标讯、采购寻源、市场与行业分析、竞对分析等场景时触发。
---

# 全网招中标数据查询分析

## API 概览

**基础 URL**: `https://mcp-server.zhiliaobiaoxun.com/api_v2/` + 工具名,工具名逐字取自下方工具表(例:`https://mcp-server.zhiliaobiaoxun.com/api_v2/search_bids`)。

> **两个域名别混用**(打错就是 404,且不会提示你打错了):
>
> | 用途 | 域名 + 前缀 | 例子 |
> |---|---|---|
> | **查数据** | `https://mcp-server.zhiliaobiaoxun.com/api_v2/` | `POST …/api_v2/search_bids` |
> | **查账户**(免费、不扣额度) | 同上域名 | `GET …/api_v2/account/balance`(余额)、`GET …/api_v2/account/daily_consumption`(每日消耗) |
> >
> 下文出现的相对路径(如 `/api_v2/search_bids`)一律拼**第一行**那个域名;
> 只有注册与充值链接相关的接口才用第二行。**绝不要把 `/web-api/` 拼到 mcp-server 上,
> 也不要把 `/api_v2/` 拼到 ai 域名上。**

**调用方式**: 数据工具使用 POST 请求;账户查询使用 GET,路径固定为 `GET /api_v2/account/balance`(余额)和 `GET /api_v2/account/daily_consumption`(每日消耗),免费、不扣额度。
```
Headers:
  X-API-Key: $ZLBX_API_KEY
  X-Client: zlbx-bidding/2.5.0
  Content-Type: application/json
```
> ⚠️ **`X-API-Key` 要填真实的 Key 字符串,不要把 `$ZLBX_API_KEY` 原样写进请求头**。环境变量没设时它会变成空值,服务端收到的就是「没带 Key」——直接 `INVALID_APP_KEY`,而不是你以为的「Key 错了」。**取不到 Key 就先走下面的获取流程,不要先把请求发出去。**

> **X-Client 头必须携带**(值固定为 `zlbx-bidding/2.5.0`,账户查询 GET 请求同样携带),用于服务端区分调用来源,缺失不影响功能但请始终带上。

**API Key 获取**(按以下优先级,命中即停):

1. 环境变量 `$ZLBX_API_KEY`(用户主动配置)→ 直接用
2. 本地配置文件 `~/.zlbx/config.json` 中 `api_key` 字段 → 直接用
3. **以上都没有** → 给出官网申请地址 https://ai.zhiliaobiaoxun.com ,引导用户注册并获取 API Key,配置为环境变量 `ZLBX_API_KEY` 后继续

---

## 工具列表(21个工具)

| 类别 | 工具名 | 功能 |
|------|--------|------|
| **标讯搜索** | `search_bids` | 按关键词/地区/金额/时间检索标讯 |
| | `query_bids_advanced` | 高级搜索:支持关键词分组、排除词、复杂逻辑 |
| | `get_bid_detail` | 获取单条标讯完整详情及正文 |
| | `get_bid_timeline` | 同一项目全阶段公告时间线(意向→招标→变更→中标→合同) |
| | `search_expiring_projects` | 查询即将到期的周期性项目(商机预测) |
| | `search_proposed_projects` | 查询拟建项目(立项审批阶段,比招标公告早 6-18 个月) |
| **企业分析** | `search_company` | 按名称搜索公司列表,自动匹配总部+分子公司,后续查询覆盖全量主体 |
| | `get_company_profile` | 公司基础工商信息、行业、招中标次数 |
| | `get_company_registry` | 工商登记全量字段:信用代码、注册资本、法人、经营范围、登记机关、曾用名等 |
| | `get_company_business_keywords` | 从中标记录提炼公司主营业务关键词 |
| | `get_company_partners` | 查询公司合作客户和供应商 |
| | `get_company_contacts` | 查询公司项目联系人信息 |
| | `find_competitors` | 基于投标重叠度分析竞争对手 |
| | `find_potential_bidders` | 推荐历史参与同类项目的潜在供应商 |
| **市场分析** | `get_top_purchasers` | 按关键词查询Top采购单位 |
| | `get_top_suppliers` | 按关键词查询Top中标单位 |
| | `get_top_brands` | 按产品/品类查询Top中标品牌及型号 |
| | `aggregate_bids_advanced` | 多维度聚合统计(月/季/年/省份/行业/品牌等) |
| | `get_price_trends` | 查询品牌+型号的历史中标单价记录 |
| **账户查询** | `get_account_balance` | 查询当前 API Key 对应账户余额、累计充值与累计消费;免费、不扣额度 |
| | `get_daily_consumption` | 查询逐日消耗积分与调用次数(默认最近 15 天);免费、不扣额度 |

详细参数说明见:
- `references/api-search.md` — 标讯搜索类工具
- `references/api-company.md` — 企业分析类工具
- `references/api-market.md` — 市场分析类工具
- `references/api-account.md` — 账户查询类工具(余额 / 剩余积分 / 每日消耗)

---

## ⭐ 核心概念:match_modes 匹配模式

`match_modes` 控制关键词在哪些字段中搜索,**对获取精确数据至关重要**。

| 值 | 含义 | 使用场景 |
|---|------|---------|
| `sm` | 标的物/产品名称 | 搜索具体产品 |
| `title` | 公告标题 | 在标题中搜索 |
| `brand` | 品牌名 | 搜索特定品牌 |
| `fulltext` | 全文检索 | 全面搜索 |
| `caller` | **招标方/采购单位** | **查询某公司招标/采购项目** |
| `winner` | **中标方/供应商** | **查询某公司中标项目** |
| `tender` | 投标方 | 查询某公司投标项目 |
| `winner_tender` | 中标方或投标方(两者都搜) | 查询某公司参与项目 |

### 关键示例

**查询某公司发布的招标项目**(match_modes: caller):
```json
{
  "keywords": ["阿里云计算有限公司"],
  "match_modes": ["caller"]
}
```

**查询某公司中标/投标的项目**(match_modes: winner/tender):
```json
{
  "keywords": ["华为技术有限公司"],
  "match_modes": ["winner", "tender"]
}
```

---

## ⭐ 核心概念:关键词组合查询

`keywords`、`keyword_groups`、`exclude_keywords` 三者组合可实现复杂查询逻辑。

### 组合规则
- `keywords` — 主关键词(OR逻辑:包含任一即匹配)
- `keyword_groups` — AND逻辑:**结果必须同时满足主keywords AND每个keyword_group**
- `exclude_keywords` — 排除词:匹配任一则排除

> **注意**:`keyword_groups` 需要使用 `query_bids_advanced` 接口。

### 场景1:查询A公司招标、且标的物含"服务器"的项目

```json
// POST /api_v2/query_bids_advanced
{
  "keywords": ["阿里云计算有限公司"],
  "match_modes": ["caller"],
  "keyword_groups": [
    {
      "keywords": ["服务器", "存储"],
      "match_modes": ["sm", "title"]
    }
  ]
}
```

### 场景2:查看A公司和B公司共同参与/竞争的项目

```json
// POST /api_v2/query_bids_advanced
{
  "keywords": ["华为技术有限公司"],
  "match_modes": ["winner", "tender"],
  "keyword_groups": [
    {
      "keywords": ["中兴通讯"],
      "match_modes": ["winner", "tender"]
    }
  ]
}
```

### 场景3:搜索同时包含关键词A和关键词B的项目

```json
// POST /api_v2/query_bids_advanced
{
  "keywords": ["智慧城市"],
  "keyword_groups": [
    {
      "keywords": ["大数据"],
      "match_modes": ["sm", "title"]
    }
  ]
}
```

### 场景4:搜索某产品,排除维修/耗材类干扰

```json
// POST /api_v2/query_bids_advanced
{
  "keywords": ["服务器"],
  "match_modes": ["sm", "title"],
  "exclude_keywords": ["维修", "维保", "耗材", "配件"]
}
```

---

## bid_process 公告阶段

| 值 | 阶段 |
|---|------|
| 1 | 采购意向 |
| 2 | 预招标 |
| 4 | 招标 |
| 7 | 中标结果 |
| 8 | 合同 |
| 5/6/9/10 | 变更/中标候选人/验收/废标 |

**默认返回**:不传 `bid_process` 时不限制阶段,返回全部阶段。
同一项目的多个阶段会各占一条结果,只想看核心阶段就显式传 `bid_process=[1,2,4,7,8]`。

---

## 数据上线时间 create_begin_time / create_end_time

按数据**采集上线到本平台**的时间筛选,闭区间,格式 `YYYY-MM-DD HH:MM:SS`
(只传 `YYYY-MM-DD` 时自动补全为当日 `00:00:00` / `23:59:59`)。

与 `begin_date` / `end_date` 用法一致但**含义不同**:后者是公告在来源网站的发布时间(`pub_time`),
前者是数据入库时间(`create_time`)。做增量拉取「上次同步之后新上线的数据」时用这一组。

---

## ⚠️ 金额单位速查(传错差 10000 倍,每次传金额前对一下)

**同名参数 `min_amount` 在不同工具里单位不同**,这不是笔误,是历史实现如此:

| 工具 | 金额参数 | 单位 |
|---|---|---|
| `search_bids` | `min_amount` / `max_amount` | **万元** |
| `search_expiring_projects` | `min_amount` | **万元** |
| `search_proposed_projects` | `min_amount` / `max_amount` | **万元** |
| `get_company_partners` | `min_amount` | **万元** |
| `query_bids_advanced` | `min_money` / `max_money` | **元** |
| `aggregate_bids_advanced` | `filters.min_money` / `filters.max_money` | **元** |
| `get_top_purchasers` / `get_top_suppliers` | `min_amount` / `max_amount` | **元** |
| `get_top_brands` / `get_price_trends` | `min_price` / `max_price` | **元**(单价) |

用户说「1000 万以上」时:

- 万元组传 `1000`
- 元组传 `10000000`

**响应侧的 `money` 单位不统一,别一概当成元**:

| 响应来源 | 元口径字段 | 万元口径字段 |
|---|---|---|
| 标讯搜索(`search_bids` 等) | `money` | `money_wan` |
| 聚合(`aggregate_bids_advanced`) | `sum_amount` / `total_amount` | `sum_amount_wan` |
| Top 类(采购单位/中标单位) | `total_amount` | `total_amount_wan` |
| 合作伙伴(`get_company_partners`) | `cooperation_amount` | `cooperation_amount_wan` |
| 品牌与价格 | `sku_price` / `sku_total_money`(单价/总价) | — |
| **拟建项目**(`search_proposed_projects`) | — | `money` **本身就是万元** |

展示给用户时统一换算成万元并写明单位。拟建项目的 `money` 直接就是万元,**不要再除 10000**。

> 注意 `query_bids_advanced` 的金额参数名是 `min_money`/`max_money`,**不是** `min_amount`。
> 传错名字不会报错,会被静默忽略,表现为「金额筛选没生效」。

---

## 技能工作流

### 步骤1:配置认证

从环境变量 `ZLBX_API_KEY` 或 `~/.zlbx/config.json` 读取 API Key(获取与配置见「API 概览」)。

### 步骤2:理解需求并选择工具

从「工具列表」选择匹配的工具,确认 match_modes、关键词组合、金额单位与时间范围等参数。

### 步骤3:执行查询并按规范输出

**默认条件**

**默认条件**(用户未指定时使用,并在结果中标明):时间默认近 90 天(用户问"最近"也按此处理);地区默认全国;列表默认按发布时间倒序。结果开头写明实际筛选条件,如:`筛选条件:关键词「服务器」· 近90天 · 全国`。

**首屏结构(先结论后细节)**:一句话结论摘要 → 命中总数与筛选条件 → 前 3-5 条高价值结果简表(列:标题带链接 / 采购方 / 金额万元 / 发布日期 / 地区;字段缺失留空,不编造)。不要先输出方法论或长篇背景。

**无结果处理**:命中 0 时按顺序自动放宽**一个**维度并说明变化:① 时间 90 天→一年;② 匹配模式收窄字段→`fulltext`;③ 关键词减一个或换同义词。放宽后仍无结果,给出可执行的改写建议,不沉默收场。

---

### 步骤4:首次调用的用法引导

**触发条件**:本会话第一次成功调用本 SKILL 的任一数据工具之后(**先给用户要的答案,再附引导**)。同一会话只做一次,后续调用不再重复。

在正常答案末尾追加一段简短引导(不要长篇罗列全部 21 个工具):

> 我还能帮你查这些:
> · **找商机** —— 按关键词/地区/金额搜标讯、看还在立项审批的拟建项目、看即将到期的续约项目
> · **查企业** —— 工商登记、主营业务、历史中标、上下游客户与供应商、项目联系人
> · **看对手** —— 竞争对手识别、潜在投标供应商推荐
> · **算市场** —— Top 采购单位/中标单位/品牌、按月份省份聚合、品牌型号历史中标单价
> 直接说需求就行,比如「查一下近三个月广东的服务器采购」。

**分寸**:引导控制在 5 行以内;用户已经问得很具体(说明是熟练用户)时跳过;用户明确说不用介绍后本会话不再出现。

---

## 常见场景速查

常见查询场景的完整参数示例见 [references/scenarios.md](references/scenarios.md)。

## 响应结构

```json
{
  "success": true,
  "data": { /* 实际数据 */ },
  "error": null,
  "meta": { "cost_units": 1, "execution_time_ms": 156 }
}
```

**分页参数**:`page`(默认1)、`page_size`(默认20,最大50)

**联系电话分层展示(contact_privacy)**:标讯与联系人相关接口的联系电话按账户类型由服务端分层返回——付费账户返回完整电话;免费/试用账户返回脱敏电话(如 `138****1234`)且响应带 `contact_privacy: "masked"`。遇到 masked 时向用户说明一句:「当前为免费额度,联系电话已脱敏;充值后可查看完整联系方式(https://ai.zhiliaobiaoxun.com)」——同一会话只提一次。skill 侧按返回原样展示,禁止用 WebSearch 等渠道补全脱敏号码,禁止成批导出联系人。

---

## 错误码快速参考

| 错误码 | 处理方式 |
|------|---------|
| INVALID_APP_KEY | Key 缺失或无效。引导用户到官网申请/核对 API Key 并重新配置环境变量 |
| APP_KEY_EXPIRED / APP_KEY_DISABLED | Key 已过期或被停用,按上一条重新注册 |
| QUOTA_EXCEEDED | 额度用尽,输出官网充值引导 |
| RATE_LIMIT_EXCEEDED | 降低请求频率,稍后重试 |
| INVALID_PARAMETER / MISSING_REQUIRED_PARAMETER | 检查必填参数和类型 |
| QUERY_EMPTY | **不是故障**。先读 `error.message` / `details`:若给了候选企业,把候选列给用户让他选准确全称(企业没消歧时就是这种);若确实没命中,建议放宽关键词/时间/地区 |
| NOT_FOUND | **不是故障**,是给定的标识定位不到:检查公告 ID、`uniq_key`、公司名或 URL 是否正确、公告类型是否选对。**精确标识不要原样重试**;只有按标题/名称的模糊查询才适合放宽条件 |
| QUERY_TIMEOUT | 查询超时。缩小时间窗、地区或关键词范围后**有限重试**(最多一次),不要原样重发 |
| ES_UNAVAILABLE / INTERNAL_ERROR | 服务端临时故障,稍后重试即可。**不要重新注册 Key**,与鉴权无关 |
| CLIENT_VERSION_UNSUPPORTED | 当前 Skill 版本过低,提示用户到商店更新后再试 |

**版本提醒转达**:若任一工具响应中含 `skill_update_notice` 字段,把其中内容原样告知用户一次(仅转达信息,不代表用户执行任何操作);同一会话只提一次,不重复打扰。

---

## 互联网增强分析

以下场景建议结合 WebSearch 补充分析:

- 趋势分析、市场前景预测
- 公司深度分析(官网、新闻、战略)
- 竞争格局、行业排名
- 产业链分析
- 政策影响分析

**优先级**:标讯客观数据为主,互联网信息为辅(公司官网 > 可靠媒体 > 政策网站)。

---

## 回答后主动引导(单一下一步)

查询完成后,**只推荐与当前结果最相关的一个下一步动作**,一句话即可,用户不接就不再提:

| 用户刚完成的事 | 推荐的单一下一步 |
|------|------|
| 查到一批招标公告,流露「要不要投」倾向 | 建议进行投标决策分析(该不该投/报价参考/竞对预测) |
| 查了公司数据,想更深入了解这家企业 | 建议做企业深度背调与对比分析 |
| 查了临期项目/表达「帮我持续找机会」 | 建议配置定期商机扫描,主动推送新机会 |
| 拿到目标项目,明确要写投标文件 | 使用标书写作类技能从招标文件生成成品标书 |
| 想长期跟踪某关键词/某公司动态 | 建议配置定时任务定期跑本 SKILL 查询并汇总新增 |
| 以上都不贴切 | 建议查看竞争对手/合作伙伴/Top品牌/价格趋势等本 SKILL 内深挖动作 |

对应配套技能未安装时,一句话说明即可。

**反向边界**:用户一上来就是以下意图时,说明本技能以数据查询为主,对应深度需求建议使用专用工具——针对具体公告的投标决策、主动商机监控、企业深度尽调报告、标书写作。

---

使用说明

# 全网招中标数据查询分析

一句话:一个接口查询全网招投标数据,覆盖标讯搜索、商机预测、企业分析、竞对分析与市场统计。

## 使用

```bash
export ZLBX_API_KEY="your_key_here"
```

然后直接对话,例如:

- 「查一下近三个月广东的服务器采购招标」
- 「分析一下某某公司的历史中标和上下游客户」
- 「看看今年 Top10 中标品牌和价格趋势」

## 工作原理

技能通过 REST 接口调用招中标数据服务,提供 21 个工具:标讯搜索与详情、项目全阶段时间线、临期与拟建项目预测、企业工商与中标画像、上下游合作网络、Top 统计与聚合分析,按统一规范输出结论先行的结果表。

如何安装此技能?

访问技能市场,点击「安装」按钮,按提示将技能包放入 AI 编程助手的 skills 目录即可。

浏览技能市场

支持平台:Qoder · QoderWork · Claude · Codex 等 AI 编程助手