关于 citeguard
citeguard 用于核验 AI 生成文本中的引文是否支持对应论断,也可处理论断与 URL 对。它抓取来源并返回判定和证据引文,帮助审阅者核查引用,但不判断论断本身是否属实。
主要功能
- 01逐条核验引文论断
- 02抓取来源并检查状态
- 03提取文章文本和 PDF
- 04提供原文证据与置信度
- 05计算文档引文完整性分数
适用场景
- 01审查 AI 报告中的引文
- 02核对论断与指定 URL
- 03查找文档中的失效链接
MCP 相关
MCP 服务向 MCP 客户端提供 `verify_claims`、`check_document` 和 `check_links`。`check_links` 可在不配置 LLM 密钥的情况下检查链接状态。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://citeguard.boundy.workers.dev/mcpclaude mcp add --transport http franksterino-citeguard https://citeguard.boundy.workers.dev/mcp{"mcpServers":{"franksterino-citeguard":{"type":"http","url":"https://citeguard.boundy.workers.dev/mcp"}}}在 Cursor 中打开{"servers":{"franksterino-citeguard":{"type":"http","url":"https://citeguard.boundy.workers.dev/mcp"}}}在 VS Code 中打开{"mcpServers":{"franksterino-citeguard":{"type":"http","url":"https://citeguard.boundy.workers.dev/mcp"}}}{"mcpServers":{"franksterino-citeguard":{"serverUrl":"https://citeguard.boundy.workers.dev/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
3| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| claims | array | 是 |
详细介绍
CiteGuard
对 AI 生成文本进行逐条主张引用核验。 CiteGuard 会获取每个引用的来源,并告知其是否确实支持相关主张——同时提供引用的证据片段,让你能在几秒内自行核实判定结果。
为 vibe citing 时代打造:AI 起草的报告引用满篇,链接都能指向真实网址,内容却并不像文中声称的那样。
功能
向 CiteGuard 提供文档(Markdown 或纯文本),或明确的主张 + URL 对。它会对每条主张:
- 获取引用来源——处理超时、跟踪重定向、限制文件大小为 5 MB,并在链接失效时自动回退到 archive.org。
- 检查来源是否可访问——明确标记失效 URL、DOI 重定向,以及“软 404”(重定向到主页的链接)。
- 提取实际内容——通过 Readability 提取去除模板内容后的文章文本;支持 PDF。
- 判断蕴含关系——大模型只阅读获取到的来源文本(绝不使用自身的世界知识),并返回六种判定结果之一。
| 判定结果 | 含义 |
|---|---|
supported | 来源明确陈述或直接蕴含该主张 |
partially_supported | 来源包含部分主张,但有实质性内容不同或缺失 |
contradicted | 来源陈述了相反内容 |
unsupported | 来源真实存在,但未包含该主张 |
uncertain | 来源文本过于零碎或含糊,无法判断 |
could_not_fetch | 无法访问来源,且没有存档快照——绝不猜测 |
每项判定都附有原文证据引用、置信度分数和完整的来源状态。文档审查还会返回引用完整性评分(0–100)。
CiteGuard 绝不夸大结论:如果无法获取来源,它会如实说明,而不是盲目判断;对于难以确定的情况,则会给出 uncertain。它的目标是让人工核验速度提升 10 倍,而不是取而代之。
快速开始(MCP)
添加到 Claude Code / Claude Desktop / 任意 MCP 客户端:
{
"mcpServers": {
"citeguard": {
"command": "npx",
"args": ["-y", "citeguard-mcp"],
"env": {
"CITEGUARD_JUDGE_PRESET": "qwen",
"CITEGUARD_JUDGE_KEY": "sk-..."
}
}
}
}
提供的工具:verify_claims、check_document、check_links(仅检查可访问性,无需 LLM 密钥)。
快速开始(CLI)
npm install -g citeguard
citeguard extract report.md # show extracted claim/source pairs (no network)
citeguard links report.md # dead-link check (no LLM needed)
citeguard check report.md # full audit (needs judge configured)
判定器配置
CiteGuard 与模型无关——任何提供 OpenAI 兼容聊天端点的服务都能使用:
# Preset providers
export CITEGUARD_JUDGE_PRESET=qwen # or: openai, anthropic
export CITEGUARD_JUDGE_KEY=sk-...
# Or any OpenAI-compatible endpoint
export CITEGUARD_JUDGE_URL=https://your-endpoint/v1
export CITEGUARD_JUDGE_MODEL=your-model
export CITEGUARD_JUDGE_KEY=sk-...
托管 API
Cloudflare Workers 上提供免费的托管端点(每个 IP 每天 50 次请求):
curl -X POST https://citeguard.YOUR-SUBDOMAIN.workers.dev/api/verify \
-H "content-type: application/json" \
-d '{"claims":[{"text":"The Eiffel Tower is 330 m tall.","source":"https://en.wikipedia.org/wiki/Eiffel_Tower"}]}'
远程 MCP 端点:POST /mcp(可流式传输的 HTTP,无状态)。
CiteGuard 不是什么
- 不是 AI 文本检测器。 它不关心文本是谁写的——它检查引用来源是否支持相关主张。
- 不是事实判断工具。
supported判定表示引用的来源如此说,而不是事实确实如此。来源质量差,得到的支持也会很差。 - 不是搜索引擎。 它会核验你已有的引用,但不会替你寻找更好的引用(暂时不会)。
提取格式
Markdown 行内链接、引用式链接、脚注、裸 DOI(通过 doi.org 解析)和裸 URL。APA 格式解析和 PDF 输入文档已列入开发计划。
开发
git clone https://github.com/Franksterino/citeguard
cd citeguard
npm install
npm run typecheck
npx tsx src/cli.ts extract test/fixtures/sample.md
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。