mcpField
L
Lenz Fact-Check

Lenz Fact-Check

远程服务
lenz.io生产力0今天更新

关于 Lenz Fact-Check

Lenz Fact-Check 是一项托管服务,可依据独立网络来源核查草稿和回答中的事实主张。它通过 MCP 工具提供快速评估和带来源的深入核验。

主要功能

  1. 01快速评估最多 20 条主张
  2. 02提供链接与引文的深入核验
  3. 03检查引文是否支持对应陈述
  4. 04针对已完成核验提出后续问题
  5. 05支持 OAuth 或 API 密钥认证

适用场景

  1. 01审查草稿中的事实主张
  2. 02依据来源调查某项主张
  3. 03核对引文是否支持陈述
  4. 04追问已完成的核验结果

MCP 相关

远程 MCP 服务 https://lenz.io/mcp 向 MCP 客户端提供主张评估、深入核验、引文检查等工具。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://lenz.io/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

详细介绍

Lenz

Lenz 事实核查

Lenz MCP 服务:通过任意 MCP 客户端,使用独立来源核查草稿或回答中的事实性主张。

网站 · 获取 API 密钥 · 开发者文档

将 Lenz 添加到 Claude   将 Lenz 添加到 Cursor   在 VS Code 中安装 Lenz

一键安装(OAuth — 无需 API 密钥)。


Lenz 是一个事实核查平台。它会接收事实性主张,通过多模型流水线(阅读主张 → 调查研究 → 辩论 → 专家组审查 → 得出结论)对照独立来源进行核查,并返回带有置信度的判定结果。这是官方的远程 MCP 服务——一个托管的 Model Context Protocol 端点,将 Lenz 的事实核查功能作为工具提供,供 AI 助手调用。

它会对照开放网络核查主张,不受模型所获上下文的影响,因此可与检索/依据性检查器互为补充,而非取而代之。

  • **托管服务,无需安装:**将客户端指向 https://lenz.io/mcp 即可。无需在本地运行任何程序。
  • **身份验证:**使用 OAuth(无需密钥,适用于支持 OAuth 的客户端)或免费的 Lenz API 密钥(Authorization: Bearer lenz_…)。
  • **传输方式:**无状态 Streamable HTTP。支持 2025-11-25 和 2026-07-28 协议修订版。

工具

工具功能
assess_claim快速核查,也是核查单条主张或整段文本的默认第一步。由 3 个模型组成的评审组会为每条主张返回一行:判定结果(True / Mostly True / Mixed / Mostly False / False;如果评审员没有找到能够证明该主张的公开记录,则为 No Public Record:表示未经证实,并非错误)、分档置信度,以及在可用时提供的简短 rationale(认同该判定的评审员给出的推理):这是评审员的说明,并非经过核实的来源。置信度较低的行会包含 recommend_verify: true 和一句 next_step。对于判定为错误的主张,该行还可能包含 suggested_rewrite(修正错误部分后的主张)和 suggested_rewrite_note:它根据评审员的推理生成,而非来源内容,且本身未经核实,因此仅作为建议提供;用户提出要求后,可对新句子进行深入核查。某行还可能包含 searched_pages(标题和链接):评审员查阅过的页面,仅作为可供查阅的页面提供,绝不作为证实判定的来源;这些页面的标题是第三方页面中的文本。通过助手约需 15 秒。将未经删改的完整文本传入 claim(Lenz 会从中找出最多 20 条主张),或使用 claims 传入用户单独列出的最多 20 条主张。
verify_claim深入核查:阅读主张 → 调研 → 辩论 → 评审组审查 → 得出结论,针对一条主张。返回判定结果和 1–10 的评分(如果没有任何公开记录记载该主张,则返回 No Public Record,不附评分)、关键发现、摘要、可修正时提供的主张改写建议(未经核实)、警告,以及附有各来源所依据引文的主要来源,并附来源总数。深入核查约需 90 秒。此调用会等待核查完成,等待时长取决于客户端允许的时间:在 Claude 和 ChatGPT 应用中,结果通常会在同一次调用中返回;在工具调用时限较短的客户端(Claude Code、Cursor、VS Code、OpenAI 的 Responses API)中,通常会返回 status: submitted 和 task_id,之后由 get_verification 等待并获取其余结果。已完成的深入核查会取代同一主张此前的任何快速判定。费用是 assess_claim 单行的 10 倍,因此助手会先询问用户是否同意,再运行核查;或者在用户要求提供来源时运行。depth: "low" 会使用相同模型调研较少的来源,消耗一半额度。
get_verification通过 task_id 等待正在运行的 verify_claim,或通过 8 个字符的 verification_id 获取已完成的结果。返回 processing、needs_input、failed、not_found 或 completed。
select_claims处理状态为 needs_input 的核查:当文本中包含多条主张时,选择要核查的主张文本。
ask_followup针对已完成的 verify_claim(通过其 verification_id),提出有依据的后续问题。答案基于完整的调研、辩论和评审组审查,而不仅是摘要。答案为 Markdown,链接指向该核查本身的来源;助手会保留这些链接。费用与 assess_claim 的一行相同。
list_verifications列出账户最近完成的深入核查,按时间从新到旧排列。用于找回对话继续进行后才完成的结果。只读且免费;快速核查不会保存。
check_citations检查草稿所引用的来源是否确实支持草稿中的说法:Lenz 会读取每个链接、DOI 或编号参考文献,并逐条引用报告来源是否支持引用它的句子,同时附上从来源中读取的段落。只有在用户询问草稿中的来源、链接、参考文献或引文时,助手才会使用此工具;一般的事实核查请求应使用 assess_claim。将草稿传入 text,或传入最多 20 组由陈述和 url/doi 组成的 pairs;每次请求最多检查 20 条引文,若草稿中的引文更多,剩余项会列为候选项,可作为 pairs 发回。引文检查最多可能需要两分钟。此调用会等待检查完成,等待时长取决于客户端允许的时间;否则会返回带有 citecheck_id 的 status: running。每检查一条引文消耗一个额度;Lenz 无法读取的引文不收费。无法运行的检查(例如文本中没有引文)会以 status: failed 返回说明,而不是报错。
get_citation_check通过 citecheck_id 等待正在运行的 check_citations,并以相同方式返回结果。可选参数 offset(默认值为 0)会重新读取已完成的检查,并返回下一批最多 20 条尚未检查的草稿引文作为候选项,可将其作为 pairs 发回,同时返回 remaining 和 next_offset。只读;免费。
check_usage剩余额度、各工具的价格列表(costs,以及参数(如 depth)会影响价格时的 cost_options)和当前套餐。核查前无需调用。
语言。 Lenz 会使用收到文本的语言作答,因此请用用户自己的措辞和语言传入主张,不要翻译。只有当用户明确要求使用其他语言作答时,才设置 language 参数(可选值为 en、es、de、fr、it、pt、nl、sv、da、no、fi、bg);其他情况请留空。判定结果和书面结果会使用相应语言,快速核查的审核者备注则会使用审核者所看到文本的语言。未设置时,连接器会发送 language: "auto",由 API 根据文本选择语言;因此,可自托管的连接器需要使用接受 auto 的 API。

提示词。 显示 MCP 提示词的客户端(Claude 会在 + 下显示提示词)会提供两个选项:用 Lenz 核查这段文本和用 Lenz 核查你的上一条回答。两者都会接收待核查文本并启动快速核查。Lenz 无法查看对话,因此使用核查你的上一条回答时,需要粘贴该回答。

判定结果是方向性的,而非绝对的:置信度以分档语言呈现,并附有注意事项,而非经过校准的概率。快速判定是初步结果;如果深度核查与之不一致,应以深度核查为准,因为它会展示来源和推理过程。

结果卡片

在 Claude 和 ChatGPT 应用中,核查结果除了以文本形式返回,也会以卡片形式显示在对话中。你可以通过卡片对某项主张进行深度核查(对照来源核查,即标准深度的 verify_claim),打开来源,或选择草稿中要深入核查的主张。通过卡片启动的深度核查完成后,助手会收到结果:在 Claude 中静默显示,在 ChatGPT 中则会在聊天中显示一条简短消息。其他所有客户端都会以文本形式收到相同结果;功能不依赖卡片。

快速入门

根据你的客户端,有两种连接方式:

  • OAuth — 适用于支持 OAuth 的客户端(例如 Claude 连接器)。无需粘贴密钥;只需登录 Lenz 并授权连接。
  • API 密钥 — 可通过 Authorization 标头与任何 MCP 客户端配合使用。
使用 OAuth 连接(无需 API 密钥)

Claude(网页版、桌面版和移动版): Lenz 是官方 Claude 连接器。打开 Lenz 连接器页面,然后点击连接到 Claude;也可以在应用中依次选择设置 → 扩展 → 浏览扩展,搜索 Lenz 并点击 +。无论使用哪种方式,都只需进行一次 OAuth 登录,无需进行任何配置,一个账号即可用于这三种客户端。

对于其他支持 MCP OAuth 的客户端,只需使用服务器 URL 添加服务器,无需设置标头:

{
  "mcpServers": {
    "lenz": {
      "type": "http",
      "url": "https://lenz.io/mcp"
    }
  }
}

首次使用时,客户端会引导你完成一次性登录:在 Lenz 自有页面上进行身份验证并授权连接,无需在配置中存储密钥。之后,助手会代表你使用 Lenz 账号的额度进行事实核查。你可以随时撤销连接;请参阅隐私政策。

使用 API 密钥连接

1. 获取免费 API 密钥,网址为 lenz.io/api-credentials(格式为 lenz_…)。

2. 将服务器添加到客户端(示例如下)。使用 Authorization: Bearer <your-key> 进行身份验证。

Claude Code

作为插件使用(包括连接器和 lenz-fact-check 技能;首次使用时通过 /mcp 登录):

claude plugin marketplace add lenzhq/lenz-mcp
claude plugin install lenz@lenz

或者仅使用连接器,并提供 API 密钥:

claude mcp add --scope user --transport http lenz https://lenz.io/mcp \
  --header "Authorization: Bearer ${LENZ_API_KEY}"

--scope user 会让所有项目都能使用 Lenz;不加此参数时,Claude Code 只会将服务器添加到你运行命令所在的目录。

Claude Desktop / 任何可读取 .mcp.json 的客户端
{
  "mcpServers": {
    "lenz": {
      "type": "http",
      "url": "https://lenz.io/mcp",
      "headers": {
        "Authorization": "Bearer ${LENZ_API_KEY}"
      }
    }
  }
}
Cursor

一键安装: 使用上方的 将 Lenz 添加到 Cursor 按钮,即可添加服务并通过 OAuth 登录(无需粘贴密钥)。

手动设置:Settings → MCP → Add new MCP server → 输入 HTTP,URL https://lenz.io/mcp,并添加请求头 Authorization: Bearer <your-key>。(或者将上方的 JSON 放入 .cursor/mcp.json。)

VS Code

一键安装: 使用上方的 在 VS Code 中安装 按钮(通过 OAuth,无需密钥)。手动设置(使用密钥):

code --add-mcp '{"name":"lenz","type":"http","url":"https://lenz.io/mcp","headers":{"Authorization":"Bearer ${LENZ_API_KEY}"}}'
ChatGPT

目前,ChatGPT 通过 OpenAI 的开发者模式将 Lenz 作为自定义应用连接,使用 OAuth,因此无需粘贴 API 密钥。此设置需要在 chatgpt.com 上完成;ChatGPT 桌面应用和移动应用无法创建自定义应用。

个人账户(Plus 或 Pro)。 Settings → Plugins → 在底部开启 Developer mode → Plugins → Browse plugins → 点击 Search 旁边的 + → 将名称设为 Lenz,URL 填写 https://lenz.io/mcp,Authentication 选择 OAuth → 勾选 I understand and want to continue → Create → Sign in with Lenz → Try in Chat。

Business、Enterprise 或 Edu 工作区。 所有者或管理员只需发布一次:Workspace settings → Apps → + Create,确认启用开发者模式,使用 OAuth 填写相同的表单,然后前往 Drafts → Publish,设置可使用此应用的人员,再次点击 Publish。之后,每位成员都可以前往 Settings → Plugins → Lenz → Connect 并登录。

每个新聊天中默认都会关闭自定义应用:点击 + 并勾选 Lenz。在问题中提到 Lenz,ChatGPT 才会调用它,而不是依赖记忆作答。

MCP Inspector(手动试用工具)
npx @modelcontextprotocol/inspector
# Transport: Streamable HTTP · URL: https://lenz.io/mcp
# Header: Authorization: Bearer <your-key>

示例

你: 请 Lenz 核实,初创公司是否真的有 90% 会在成立后的第一年内失败。

助手调用 assess_claim,返回的结果为 False,置信度高,并附有审核人员的推理:大多数新企业都能存续一年,官方数据显示,第一年倒闭的企业约占五分之一。助手会将此作为初步判断,并提议进行深入核查。你同意后,它会调用 verify_claim(对于工具调用次数有限的客户端,还会调用 get_verification 以获取结果),然后返回判定结果、评分、关键发现、警示信息及相关来源。

积分

每次运行检查或回答问题的工具调用,都会消耗你 Lenz 账户中同一笔积分;查看先前结果、列出检查项和使用 check_usage 均不收费。在重放窗口内重复检查时,会直接返回首次调用的结果,且只收费一次。各工具没有单独的额度:在 assess_claim 上的花费会减少 verify_claim 可用的积分,反之亦然。check_usage 会返回余额(credits_remaining)以及实时价格列表 costs——请从中读取权重,不要自行假设。

verify_claim 的费用高出一个数量级;assess_claim 和 ask_followup 则较便宜。verify_claim 还接受可选参数 depth:"low" 会运行较浅的研究流程(来源更少,使用相同模型,只是稍快一些),费用为默认 "standard" 的一半。该价格位于 check_usage 的 cost_options.verify.depth.low 下。收费依据是你请求的深度;已完成结果中的 depth 表示结论实际生成时使用的深度,因此,若 "low" 请求由已有的更深层检查结果作答,返回的值会是 "standard"——回显描述的是证据,收费则依据请求。

check_usage 还会报告 assess_remaining 和 verify_remaining,它们是将同一笔余额换算成各工具自己的计量单位——即“我还可以用这个工具做多少次检查”——而不是独立额度。

免费密钥包含每月额度,每个周期重置;赠送积分和充值会在此基础上增加不会过期的额外积分,只有额度用完后才会消耗。请查看 lenz.io/plans 上的套餐。

积分用尽时,工具会返回 status: "quota_exhausted",并附带 message;除 ChatGPT 外,还会附带指向套餐页面的 manage_url。此状态无法通过重试解决——余额会一直耗尽,直到你充值或每月额度重置。Agent 应明确说明这一点,而不是重试或悄悄跳过检查。

status: "rate_limited" 则是另一回事:这是速率限制,不代表余额耗尽。该限制会自行解除,结果中会附带 retry_after_seconds,告知你何时可以重试。

技能

想要使用引导式工作流,而不是亲自调用工具?lenz-fact-check 技能会把“这是真的吗?”转化为结构化流程:它会对文本进行快速检查,针对重要主张建议进行深入的 verify_claim,并报告结论及其置信度,以及运行了深入检查时所用的来源(同时内置方向性而非绝对性的注意事项)。请让你的 Agent 参阅 plugins/lenz/skills/lenz-fact-check/SKILL.md。

自行运行服务

托管端点已能满足大多数客户端的需求。如果你想运行自己的副本或参与贡献,可以在此仓库中找到服务的源代码。

**要求:**Python 3.11 或 3.12,以及 uv。 目前尚不支持 Python 3.13:它会改变模型读取的工具描述的格式,因此我们会等到有版本能够检查相关措辞后再支持。

uv sync --group dev
uv run pytest
docker build --build-arg LENZ_MCP_VERSION=dev -t lenz-mcp .

自行运行的副本使用你自己的 Lenz API 密钥进行身份验证,密钥通过 Authorization: Bearer lenz_… 发送(必须使用 Bearer 方案;任何其他值都会像缺少密钥一样被拒绝)。OAuth 登录仅适用于托管端点 https://lenz.io/mcp。

**最低 API 版本。**服务通过官方 Python SDK lenz-io 调用 Lenz API,该 SDK 只读取一个 API 版本:2026-10-11。因此,自行运行的副本需要使用提供 2026-10-11 的 API(MCP_API_BASE_URL);https://lenz.io/api/v1 符合要求。对结果的版本限制非常严格:如果其他版本返回成功答复,该答复将被拒绝,工具会提示 API“以此连接器无法读取的版本作出了答复”。错误答复(如额度不足、速率限制或服务中断)则会原样显示,不受其版本影响。

CONTRIBUTING.md 介绍了测试、结果卡片和拉取请求规则。

链接

支持

有问题或遇到故障?提交 issue或联系我们。

许可证

Apache-2.0 © lenzhq。Lenz 名称和徽标(assets/)是 lenzhq 的商标,不在许可证授予范围内,详见 NOTICE。

维护者

@paveljor

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。