PluginWorld
Zh

zhiyan-detective

MCP

Enables agents to verify AI product claims through Tencent Yuanbao search with cited evidence and authenticity verdicts, find dramas or songs from quoted lines, and check search quota usage via five MCP tools.

@harveyzhang · MIT License · updated today

SECURITY

B

SCORE

60

STARS

▲ 0

PLUG IN

git clone https://github.com/harveyzhang/zhiyan-detective.git

See the README to configure this MCP server

README

侦探社 · 查得到,信得过

先查证,再下结论。贴一条 AI 圈的消息,侦探社用腾讯元宝搜索去官网、官方仓库和媒体多轮取证,给出能点开的来源和「属实 / 不实 / 未证实」;查不到就说查不到。关掉元宝搜索,它就不下任何结论。

  • 在线试用: https://zt.wan7426.top (网页,不用登录)
  • 接进你的 Agent: MCP 服务(5 个工具)加 Skill,Claude Code、Codex、Cursor 都能用
  • 1024 超能 Coding 周末 · 侦探赛道作品

能做什么

  • AI 快讯查证: 查一条 AI 产品消息(发布日期、是否开源、哪家发布、是否发布)。
    • 按官网、厂商在 Hugging Face 或 GitHub 的官方仓库、独立媒体的顺序取证,判属实、不实或未证实。
    • 标出山寨「官网」,生成每句都带出处的公众号查证稿和一页可打印的调查报告。
  • 只言片语: 凭一句台词、歌词或剧情找剧和歌。两个独立来源对上才结案,附正版链接(腾讯视频、QQ 音乐);对不上就给假说并追问一句。
  • 持续盯梢: 每天定时扫 8 家 AI 厂商最近 7 天的消息,查证被提到最多的产品,标出新出现的和结论变了的,可以推送到飞书群。
  • 截图查证: 上传一张截图,先认出文字,再查里面的说法。

不认人脸、不查个人信息、不碰时政。

快速开始

只需要一个元宝搜索 key。

  1. 拿到 key: 在腾讯云元宝搜索控制台开通服务,按服务 API KEY 方式创建一个 key。元宝搜索按调用次数后付费;侦探社每条消息最多搜 4 次,同一查询 24 小时内复用结果,每天、每月都有上限,到上限就停。

  2. 装 uv。

  3. 装 Skill,并拿到接入命令:

    uvx --from git+https://github.com/harveyzhang/zhiyan-detective zhiyan-detective-install
    

    它把 Skill 拷进 ~/.claude/skills/ 和 ~/.codex/skills/(本机装了哪个就拷哪个),再打印下面这些命令。

  4. 把 MCP 服务接进 Agent(<你的 key> 换成自己的):

    Agent 命令或配置
    Claude Code claude mcp add --scope user zhiyan-detective -e TENCENTCLOUD_WSA_APIKEY=<你的 key> -- uvx --from git+https://github.com/harveyzhang/zhiyan-detective zhiyan-detective-mcp
    Codex codex mcp add zhiyan-detective --env TENCENTCLOUD_WSA_APIKEY=<你的 key> -- uvx --from git+https://github.com/harveyzhang/zhiyan-detective zhiyan-detective-mcp
    Cursor 写进 ~/.cursor/mcp.json,见下面
    其他 Agent 用 stdio 方式启动 uvx --from git+https://github.com/harveyzhang/zhiyan-detective zhiyan-detective-mcp,环境变量里给 TENCENTCLOUD_WSA_APIKEY
    {
      "mcpServers": {
        "zhiyan-detective": {
          "command": "uvx",
          "args": ["--from", "git+https://github.com/harveyzhang/zhiyan-detective", "zhiyan-detective-mcp"],
          "env": {"TENCENTCLOUD_WSA_APIKEY": "<你的 key>"}
        }
      }
    }
    
  5. 试一下: 对 Agent 说「用侦探社查一下:DeepSeek V3.2 正式版于 2025 年 6 月发布」。正确结果是「不实」:官网显示 2025 年 12 月 1 日发布,回答里附官网链接。

Claude Code 插件: 先在环境变量里设好 TENCENTCLOUD_WSA_APIKEY,再在 Claude Code 里运行下面两行,Skill 和 MCP 服务会一起装上:

/plugin marketplace add harveyzhang/zhiyan-detective
/plugin install zhiyan-detective@zhiyan-detective

还没有 key: 可以先连线上的远程 MCP 试用,用的是侦探社服务器的额度,有上限:

claude mcp add --transport http zhiyan-detective https://zt.wan7426.top/mcp   # Claude Code
codex mcp add zhiyan-detective --url https://zt.wan7426.top/mcp               # Codex

从源码运行(离线安装)

clone 下来、uv sync 之后,代码全在本机,不依赖我们的服务器(元宝搜索本身仍要联网):

git clone https://github.com/harveyzhang/zhiyan-detective
cd zhiyan-detective
uv sync
export TENCENTCLOUD_WSA_APIKEY=<你的 key>
uv run zhiyan-detective          # 网页:http://127.0.0.1:8024
uv run zhiyan-detective-mcp      # MCP 服务(stdio),给 Agent 用
uv run zhiyan-detective-install  # 装 Skill,打印指向这份源码的接入命令
DETECTIVE_SEARCH_DISABLED=1 uv run zhiyan-detective   # 只看页面,不调用搜索

在源码目录里运行 zhiyan-detective-install,打印出来的是 uv run --directory <源码路径> zhiyan-detective-mcp,Agent 直接用本机这份代码。在 macOS 和 Linux 上测过;Windows 没有实测(截图识别需要另装 Tesseract)。

变量 作用
TENCENTCLOUD_WSA_APIKEY 元宝搜索 API key。也可以用 DETECTIVE_WSA_KEY_FILE 指向含 TENCENTCLOUD_WSA_APIKEY= 一行的私有文件
DETECTIVE_HOME 账本和缓存的默认目录,默认 ~/.zhiyan-detective
DETECTIVE_LEDGER 调用账本(JSON),每次真实调用前先记账,超过上限就不发请求;几个入口要共用一本账时,指向同一个文件
DETECTIVE_CACHE_DIR 同一查询 24 小时内复用结果,不花额度;默认 $DETECTIVE_HOME/cache
DETECTIVE_MONTH_CAP / DETECTIVE_DAY_CAP 每月、每天的搜索上限,只能调低(默认 5000 / 1200)
DETECTIVE_CASES_DIR 可选;结案的案卷存成 JSON(最多 500 份),服务重启后报告链接照样能打开;截图里认出的文字不存
DETECTIVE_HOST / DETECTIVE_PORT 网页地址,默认 127.0.0.1:8024

不要把 key、账本或缓存放进仓库。

MCP 工具

工具 作用
verify_claim 查证一条 AI 消息:结论、证据、山寨站提醒、查证稿
verify_digest 一次最多 5 条,返回统一编号出处的快讯合集
find_work / answer_follow_up 找剧找歌,以及回答追问
usage 本月和今天的额度用量,不含 key

MCP 服务和网页用同一个引擎,账本按入口记账(mcp、web、agent、watch)。每个进程每天最多 60 案(DETECTIVE_MCP_DAILY_CASES 只能调低)。线上的远程 MCP 地址是 https://zt.wan7426.top/mcp(Streamable HTTP)。

Skill 在 skills/zhiyan-detective/SKILL.md,包里带着同样的一份(测试保证两份一致)。它规定 Agent 只转述工具结论,并把公众号写作改成「选题 → 去重 → 查证 → 带编号写作 → 自查」。

Agent 对话(网页)

网页的「Agent 对话」页让大模型自己决定调用哪个侦探社工具,页面逐条显示思考、调用参数、工具返回和最终回答;工具结果里的案卷可以点开看完整证据。

变量 作用
DETECTIVE_LLM_BASE_URL OpenAI 兼容接口地址,比如 https://api.minimax.cn/v1
DETECTIVE_LLM_MODEL 模型名,比如 MiniMax-M3.1-Flash
DETECTIVE_LLM_KEY_FILE 含 LLM_API_KEY= 或 MINIMAX_API_KEY= 一行的私有文件
  • 限额: 每天最多 30 次对话(DETECTIVE_AGENT_DAILY_RUNS),每天最多 30 案(DETECTIVE_AGENT_DAILY_CASES),都只能调低;每次对话最多调用 4 次工具、5 轮模型请求;账本里记为 agent。
  • 没配模型时: 页面播放一段真实录制的 Claude Code 会话(static/agent-replay.json,通过远程 MCP 调用)。

飞书机器人

走飞书的长连接:程序跑在本机,只向外连接飞书,不开公网端口,元宝 key 不离开本机。

  • 群里 @机器人发一条 AI 消息,它回一张查证卡片,包含结论、证据链接、山寨站提醒和查证稿。
  • 发一句台词、歌词或剧情,它回找剧找歌的结果;需要追问时,回复「补充 + 线索」。
  • 发「额度」可以看用量,账本里记为 feishu。

启动前把凭据文件路径放进 DETECTIVE_FEISHU_ENV,文件里写 FEISHU_APP_ID=… 和 FEISHU_APP_SECRET=…,然后运行 uv run zhiyan-detective-feishu。

飞书开放平台上要做的设置:

  1. 建企业自建应用并开启机器人能力。
  2. 开通三个权限:以应用身份发消息、读取用户发给机器人的单聊消息、接收群聊中 @ 机器人的消息事件。
  3. 等程序连上后,在事件订阅里选「使用长连接接收事件」,并添加「接收消息」事件。
  4. 发布一个版本。

部署

[LLM_KEY_FILE=<模型 key 文件>] deploy/deploy.sh <ssh 主机别名> <本机 key 文件> [月上限] [日上限] 会做这几件事:

  1. 把已提交的代码打包传到服务器的 /opt/zhiyan-detective。
  2. 构建 Docker 镜像,用主机网络启动容器,只监听 127.0.0.1:8024。
  3. key 只在第一次部署时复制到服务器的 secrets/(权限 600),以只读方式挂进容器;账本、缓存和确认记录放在 data/。
  4. 给了 LLM_KEY_FILE 时,只把其中的 key 那一行复制成 secrets/llm.env,打开网页的 Agent 对话;模型和地址默认是 MiniMax-M3.1-Flash 和 https://api.minimax.cn/v1,可用 LLM_MODEL、LLM_BASE_URL 覆盖。

对外访问交给服务器上已有的反向代理,比如在 1Panel 里新建一个反向代理网站,指向 http://127.0.0.1:8024,再申请 HTTPS 证书。

  • 限额: DETECTIVE_MONTH_CAP 和 DETECTIVE_DAY_CAP 只能调低。服务器和本机的上限加起来,要低于每月 6000 次免费额度。
  • 代理识别: 程序只信任 DETECTIVE_TRUSTED_PROXY(默认 127.0.0.1)转发来的访客地址,所以「每个访客每小时 20 案」在代理后面也按真实访客计算。

接口

  • POST /api/check,JSON 或表单:{"text": "…", "desk": "ai", "no_search": false},返回 {"id", "status": "processing"}。desk 为 ai 时走 AI 快讯查证,省略时找剧找歌
  • GET /api/check/{id}:进度,或完整结论(overall、hypotheses、question、searches、search_stats…)
  • POST /api/check/{id}/answer:{"answer": "若曦"},每案只能追问一次
  • POST /api/check/{id}/confirm:用户确认「就是它」,写入本机 DETECTIVE_USAGE_LOG(JSON Lines),作为真实使用记录
  • GET /api/agent/status:Agent 对话是否接上模型、模型名、今天还剩几次;POST /api/agent:{"message": "…"},返回 {"id"};GET /api/agent/{id}:已发生的步骤(user、load、thinking、call、result、assistant)
  • GET /skill:下载 SKILL.md;/mcp:远程 MCP(Streamable HTTP)
  • 网页路由:#/ai、#/works、#/watch、#/agent、#/connect、#/archive;带 #case=<id> 时直接打开这个案件(包括 Agent 对话里查过的案件)
  • GET /r/{id}:可打印的结案报告;GET /:手机网页

字段沿用队内《接口约定》v0;hypotheses[].images 是新增的作品海报和剧照。

判定规则

  • 候选: 只从搜索结果里的书名号作品名产生。繁简体统一;同一发布方的镜像站和子域名只算一个来源。
  • 结案: 至少两个独立发布方几乎逐字出现这句线索(字二元组重合 ≥ 0.8),且没有接近的对手。
    • 对手的定义:来源数和页面数都超过领先者的一半。
    • 同一篇文章被几个网站转载,不算对手。
  • 假说: 剧情转述只算一条线索,给出假说并追问一句。
    • 追问后重新搜索(最多 4 次)。
    • 只有一部作品被两个发布方同时和新线索关联,才结案。
    • 新出现的作品还要能对上原线索。
  • 未破案: 没有作品被两个来源支持。
  • 证据: 先列引用原句的页面,每个发布方先出一条。
    • 只有 404、410 和域名不存在算失效。
    • 403 和超时标「未自动验证」。
  • 正版链接: 在 v.qq.com 或 y.qq.com 站内搜索作品页,排除合集、颁奖片段和其他作品;找不到时给平台站内搜索链接。
  • 图片: 只取搜索说明里点名这部作品、并且看得出是歌(专辑、封面、MV……)或剧(海报、剧照、动画……)的图,每部最多 2 张;直接引用原图并注明出处,不转存。

额度保护

  • 调用上限: 每案最多 8 次搜索,追问再加 4 次。
  • 频率上限: 每个来源每小时 20 案。
  • 总量上限: 账本按月 5000 次、按日 1200 次硬上限。
  • 故障处理: 欠费或限流错误码直接停下,返回「今天查案的人太多了,明天再来。」上游错误文本不展示,因为可能带出 key。

测试

uv run python -m unittest discover -s tests -t .

AI 快讯判定规则

  • 发布日期: 以官网发布页的日期为准;没有官网时,两家独立来源日期一致(允许差 1 天)才成立。「-Exp」这类后缀算另一个产品。
  • 是否开源: 要看到厂商自己账号下的 Hugging Face 或 GitHub 仓库,第三方转存不算;没有仓库时,需要两家来源说法一致。
  • 发布方: 以厂商官网的发布页为准,其次看两家以上来源的多数说法。云平台上架别家模型的文档不算发布方证据。
  • 山寨站: 域名里带厂商名、但不在官方域名清单里的网站(如 kimi-k2.org、suno.hk),单独列出,不作为证据。

已知限制

  • 内容农场网站也会被计为独立来源。
  • 对比类文章会让追问后仍停在几个假说。
  • AI 快讯目前只查四类说法;评测数字、价格还不支持。官方域名清单需要人工维护。
  • 还不支持截图和视频输入,也没有给 SPS 语音用的 /v1/chat/completions。

来源与致谢

  • 方向和探案流程来自队友的《PRD_只言片语侦探社》。网页界面基于队友的《只言片语侦探社》互动原型(配色、布局、探案流程),接入真实接口时把拼接 HTML 改成了逐个创建节点,并只放行 http(s) 链接。
  • 公众号写作流程参考了老金公众号写作助手的流程,只保留了扫描、日期核验和去重这几个查证相关步骤;AI 厂商清单参考了 wechatwriter 的 hotspot_brands.json。
  • 依赖:FastAPI、Uvicorn、httpx、MCP Python SDK、zhconv、lark-oapi;截图识别用 macOS Vision 或 Tesseract。

许可证

MIT

SIMILAR PLUGINS