关于 Scholar Sidekick Mcp
Scholar Sidekick MCP 帮助研究者和写作者核验引文、解析学术标识符并整理参考文献。它支持批量审查、多种引文格式与导出格式,并可查询撤稿和开放获取状态。
主要功能
- 01依据解析记录核验引文
- 02审查书目中的不匹配和撤稿
- 03解析八类学术标识符
- 04支持 10,000 多种 CSL 格式
- 05导出为九种书目格式
- 06查询撤稿和开放获取状态
适用场景
- 01核查 AI 生成的引文
- 02投稿前审查参考文献列表
- 03按指定格式排版引文
- 04为文献管理器导出参考文献
MCP 相关
通过本地 stdio 服务或托管的 Streamable HTTP 端点提供七种只读工具。MCP 客户端可解析和核验引文、审查书目、格式化并导出参考文献,以及查询撤稿或开放获取状态。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://scholar-sidekick.com/api/mcpclaude mcp add --transport http scholar-sidekick https://scholar-sidekick.com/api/mcp{"mcpServers":{"scholar-sidekick":{"type":"http","url":"https://scholar-sidekick.com/api/mcp"}}}在 Cursor 中打开{"servers":{"scholar-sidekick":{"type":"http","url":"https://scholar-sidekick.com/api/mcp"}}}在 VS Code 中打开{"mcpServers":{"scholar-sidekick":{"type":"http","url":"https://scholar-sidekick.com/api/mcp"}}}{"mcpServers":{"scholar-sidekick":{"serverUrl":"https://scholar-sidekick.com/api/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
7| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| title | string | 是 | 引用参考文献中显示的标题。验证器会将此字段与所提供标识符对应的已解析记录进行交叉核对。必填。 |
| doi | string | 否 | 引用中的 DOI(可带或不带 https://doi.org/ 前缀;也接受 10/aabbe 这样的 shortDOI 别名,并将其扩展为完整 DOI)。请提供引用文献包含的标识符;验证器按优先顺序 doi > pmid > pmcid > arxiv > ads > isbn > issn > whoIrisUrl 使用第一个标识符。 |
| pmid | string | 否 | 引用中的 PubMed ID(仅数字,或带有 'PMID:' 前缀)。 |
| pmcid | string | 否 | PubMed Central ID(例如 'PMC1234567' 或 'PMCID:1234567')。 |
| isbn | string | 否 | ISBN(10 位或 13 位数字,可带连字符)。 |
| arxiv | string | 否 | arXiv ID(例如 '2301.08745' 或 'arXiv:2301.08745';也接受旧格式 'hep-ph/0501023')。 |
| issn | string | 否 | 用于期刊级别解析的 ISSN。 |
| ads | string | 否 | NASA ADS bibcode(19 个字符)。 |
| whoIrisUrl | string | 否 | WHO IRIS URL(https://iris.who.int/...)。 |
| author | string | 否 | 引用中的第一作者姓氏。用于细化判定——标题与已解析标题匹配、但作者不匹配时,会提高对伪造的怀疑程度。仅传入姓氏(例如 'Topaz',不要传入 'Topaz, Maxim')。 |
| year | integer | 否 | 引用中的出版年份。仅年份错误不会改变判定,但与已解析记录相差 >=2 年会降低置信度。 |
| container | string | 否 | 引用中的期刊或出版物名称(例如 'The Lancet'、'Neuroscience')。弱信号——会作为不匹配字段显示,但不会判定结果。 |
| screenWithLlm | boolean | 否 | 可选的 Stage 3 LLM 筛查。仅当 LLM 前判定为低置信度的 mismatch(非正式缩写导致的误报类别)时触发。受访问限制:需要经过身份验证的第一方 API 密钥或付费 RapidAPI 套餐;匿名/免费调用者会收到 400 LLM_SCREEN_FORBIDDEN。默认 false。 |
详细介绍
Scholar Sidekick MCP 服务
面向 Scholar Sidekick 的 MCP 服务 — 可从任何 AI 助手中逐条或批量查出 AI 伪造的引文。它还会检查撤稿和开放获取状态,并将任意学术标识符(DOI、PMID、PMCID、ISBN、arXiv、ISSN、NASA ADS bibcode、WHO IRIS URL)转换为 10,000 多种 CSL 样式或九种导出格式。
亮点
- 引文伪造检测 —
verifyCitation会将声称的引文与通过其标识符解析出的记录进行交叉核对,从而检测 Topaz 等人(Lancet 2026) 记录的 AI 驱动伪造主流模式 — 真实 DOI + 虚构标题,而简单的标识符解析无法捕获这种情况。详见 scholar-sidekick.com/citation-integrity 上的长篇说明。 - 整份参考书目审查 —
auditBibliography会在一次调用中对整份参考文献列表执行相同的检查并查询撤稿情况,接受原始 BibTeX、RIS 或 CSL JSON,并返回逐条判定表及语料库摘要。 - 撤稿与开放获取检查 —
checkRetraction会显示撤稿、更正和关注声明(Crossref / Retraction Watch);checkOpenAccess会返回 OA 状态以及最佳合法落地页或 PDF URL(Unpaywall)。两者都接受任意标识符类型,并在后台将其解析为 DOI。 - 开箱即支持八种标识符类型 — DOI、PMID、PMCID、ISBN、arXiv ID、ISSN、NASA ADS bibcode 和 WHO IRIS URL(在引文工具中较为少见)。
- 便于批量处理的解析 / 格式化 / 导出 — 每个工具都接受单个标识符或以逗号或换行分隔的列表;服务会规范化列表,并通过一次往返请求解析所有标识符。
- 10,000 多种引文样式 — 五种经过精细调整的内置样式(Vancouver、AMA、APA、IEEE、CSE),以及任意 CSL 样式 ID,并支持别名和依赖样式解析。
- 九种导出格式 — BibTeX、RIS、CSL JSON、EndNote(XML/Refer)、RefWorks、MEDLINE、Zotero RDF、CSV、纯文本。
- 可组合的工作流 — 在一个提示词中串联
resolveIdentifier→formatCitation→exportCitation,即可构建端到端的“原始 ID → 可导出参考书目”流程。 - 每个响应都包含来源元数据 — 格式化输出后附带元数据块(
requestId、formatter、styleUsed、warnings),便于助手向用户展示每条引文由哪个引擎生成。 - 无需密钥 — 可匿名调用公开的 Scholar Sidekick API(受速率限制的免费层);添加免费的第一方
ssk_密钥可获得更高限额,也可使用 RapidAPI 密钥访问付费 / 托管层级。 - 托管 HTTP 端点(无需安装) — 不想运行本地 stdio 服务?可将任何支持 HTTP 的 MCP 客户端直接连接到
https://scholar-sidekick.com/api/mcp(Streamable HTTP,同样提供 7 个工具)。请参阅托管 HTTP 端点(无需安装)。 - 配套 REST API — 相同端点也可通过 Scholar Sidekick REST API 提供,供非 MCP 集成使用。
工具
| 工具 | 描述 |
|---|---|
| verifyCitation | 根据已解析的记录及其标识符,验证所声明的引文。可检测 Topaz 等人(Lancet 2026)的造假模式——DOI 真实、标题捏造——这是 resolveIdentifier 单独无法发现的。返回四种判定之一(matched / mismatch / ambiguous / not_found),以及各字段的相似度分数和已解析记录,让用户了解引用的标题与实际论文有哪些出入。可选的 Stage 3 大模型筛查可排除非正式缩写导致的假阳性(仅限付费计划/第一方身份验证)。每次调用处理一条引文。 |
| auditBibliography | 一次调用即可对整份参考文献执行 verifyCitation 检查和撤稿查询。接受原始 BibTeX、RIS 或 CSL-JSON 文本,或预解析的 claims[] 数组;返回逐条判定表和语料库摘要。每次调用最多处理 25 条。 |
| resolveIdentifier | 将 DOI、PMID、PMCID、ISBN、arXiv ID、ISSN、ADS bibcode 和 WHO IRIS URL 解析为结构化书目元数据(CSL JSON)。接受单个标识符,或以逗号/换行分隔的一批标识符。 |
| formatCitation | 将一个或多个标识符格式化为 Vancouver、AMA、APA、IEEE、CSE 或 10,000 多种 CSL 样式。输出为文本、HTML 或 JSON。返回格式化后的引文以及来源元数据块。 |
| exportCitation | 将一个或多个标识符导出为 BibTeX、RIS、CSL JSON、EndNote(XML/Refer)、RefWorks、MEDLINE、Zotero RDF、CSV 或纯文本,可直接写入磁盘或交给参考文献管理器。 |
| checkRetraction | 检查单篇作品是否已撤稿、已更正或已发布关注声明。数据来源为 Crossref updated-by(Retraction Watch)。查询前会将 DOI/PMID/PMCID/arXiv/ADS 输入解析为 DOI。每次调用处理一个标识符。 |
| checkOpenAccess | 检查单篇作品是否可开放访问,以及在哪里可以找到最佳合法版本。数据来源为 Unpaywall。返回 OA 状态(gold/green/hybrid/bronze/closed)、最佳落地页/PDF URL、许可证和版本。查询前会将 DOI/PMID/PMCID/arXiv/ISBN/ADS 输入解析为 DOI。每次调用处理一个标识符。 |
这七个工具均为只读(readOnlyHint: true,destructiveHint: false)。准确的
tools/list 负载——包括描述、JSON Schema 和注解——已提交至
tools.json,并随 npm 压缩包一同发布,因此无需运行任何内容即可查看完整的工具
接口。
设置
无需密钥。 服务可匿名使用公开的 Scholar Sidekick API
(https://scholar-sidekick.com),并采用限速免费层——安装即可使用。若要提高
限额,请在 scholar-sidekick.com/account 创建免费的第一方 ssk_ 密钥,并设置 SCHOLAR_API_KEY。
如需付费/托管层级,请在
RapidAPI 订阅,并
设置 RAPIDAPI_KEY(调用将通过 RapidAPI 网关路由)。
想要零安装? 另有一个托管 HTTP 端点,地址为
https://scholar-sidekick.com/api/mcp(Streamable HTTP)——可直接连接任何支持 HTTP 的 MCP 客户端,无需npx。请参阅下文的托管 HTTP 端点(无需安装)。 本文档介绍的 stdio 包是本地安装的替代方案(也是使用 RapidAPI 密钥的用户的选择)。
Claude Desktop
将配置添加到 ~/Library/Application Support/Claude/claude_desktop_config.json(macOS)或 %APPDATA%\Claude\claude_desktop_config.json(Windows)。无需密钥,也无需 env 块:
{
"mcpServers": {
"scholar-sidekick": {
"command": "npx",
"args": ["-y", "scholar-sidekick-mcp@latest"]
}
}
}
只有在需要更高的限速时,才添加 env 块,并填入从
scholar-sidekick.com/account 获取的免费 ssk_ 密钥:
"env": { "SCHOLAR_API_KEY": "ssk_your-first-party-key" }
Claude Code
# Anonymous (no key):
claude mcp add scholar-sidekick -- npx -y scholar-sidekick-mcp@latest
# With a free first-party key for higher limits:
claude mcp add scholar-sidekick \
-e SCHOLAR_API_KEY=ssk_your-first-party-key \
-- npx -y scholar-sidekick-mcp@latest
Claude Code 插件(一步完成服务端和技能安装)
此仓库也是一个 Claude Code 插件市场。安装插件即可同时配置 MCP 服务和配套的 Agent 技能,无需单独运行 claude mcp add,也无需 env 块:
/plugin marketplace add mlava/scholar-sidekick-mcp
/plugin install scholar-sidekick@scholar-sidekick
插件会匿名运行服务端(无需密钥)。如需更高的速率限制,可按照上文所示,通过 claude mcp add 添加从 scholar-sidekick.com/account 获取的免费 ssk_ 密钥,或使用下方的托管端点。
Cursor / VS Code / Windsurf
添加到 .cursor/mcp.json 或 .vscode/mcp.json。无需密钥:
{
"mcpServers": {
"scholar-sidekick": {
"command": "npx",
"args": ["-y", "scholar-sidekick-mcp@latest"]
}
}
}
如需更高的速率限制,请添加 "env": { "SCHOLAR_API_KEY": "ssk_your-first-party-key" }。
在容器中运行(沙盒隔离)
此服务端通过 stdio 使用 MCP,并且只需要访问 Scholar Sidekick API 的出站 HTTPS 连接,不需要其他任何功能——无需文件系统访问权限,也无需 shell。如果你的策略规定 MCP 服务不能获得主机访问权限,可在此仓库中构建镜像并隔离运行:
docker build -t scholar-sidekick-mcp .
{
"mcpServers": {
"scholar-sidekick": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"--read-only", "--cap-drop", "ALL", "--security-opt", "no-new-privileges",
"scholar-sidekick-mcp"
]
}
}
}
必须使用 -i——这是 stdio 管道。只有在传递密钥以提高限额时,才将 "-e", "SCHOLAR_API_KEY", 添加到参数中。
此镜像不会发布到镜像仓库;请在本地构建,这样你运行的就是根据可阅读的源代码构建出的程序包。
Agent 技能(可选)
安装配套的 Agent 技能,让 Claude Code、Cline 和其他 Agent 了解何时以及如何使用这些工具——它与上面的服务端配置相辅相成:
npx skills add mlava/scholar-sidekick-mcp
托管 HTTP 端点(无需安装)
不想运行本地 stdio 服务端?Scholar Sidekick 也提供 托管的 Streamable HTTP
MCP,地址为 https://scholar-sidekick.com/api/mcp——包含同样的七种工具,无需 npx,也无需本地进程。它支持匿名使用(受速率限制的免费方案);添加 Authorization: Bearer ssk_…
标头(可从 scholar-sidekick.com/account 获取免费密钥)即可获得更高限额。
将任意支持 HTTP 的 MCP 客户端指向此端点:
{
"mcpServers": {
"scholar-sidekick": {
"type": "http",
"url": "https://scholar-sidekick.com/api/mcp"
}
}
}
在 Claude Desktop 中,使用 Settings → Connectors → Add custom connector(或“Add HTTP server”),然后粘贴 URL。如果你有 Bearer 令牌,请在客户端的标头/身份验证字段中添加。
发现信息:/.well-known/mcp.json(SEP-1649 服务卡)列出了此端点以及无需身份验证的 ChatGPT Apps 端点 /api/apps/mcp。上文的 stdio 程序包仍可作为本地安装的替代方案,也是使用 RapidAPI 密钥用户的接入方式。
环境变量
| 变量 | 必需 | 描述 |
|---|---|---|
SCHOLAR_API_KEY | 否 | 从 scholar-sidekick.com/account 获取的免费第一方 ssk_ 密钥;可提高速率限制,并启用验证器的 LLM 筛选。作为 Authorization: Bearer 发送。 |
RAPIDAPI_KEY | 否 | 付费/托管方案使用的 RapidAPI 订阅密钥;设置后,调用将通过 RapidAPI 网关路由。 |
RAPIDAPI_HOST | 否 | RapidAPI 主机(默认为 scholar-sidekick.p.rapidapi.com) |
SCHOLAR_SIDEKICK_URL | 否 | 覆盖 API 基础 URL(默认为 https://scholar-sidekick.com;如果设置了 RAPIDAPI_KEY,则默认为 RapidAPI 网关)。 |
SCHOLAR_SIDEKICK_TIMEOUT_MS | 否 | 请求超时时间,单位为毫秒(默认值:30000) |
完全不设置密钥 → 使用匿名且受速率限制的免费方案。同时设置 SCHOLAR_API_KEY 和 RAPIDAPI_KEY 时,优先使用 RapidAPI。
支持的引文格式
Scholar Sidekick 支持 10,000 多种 CSL 样式,包括学术出版中使用的所有主流格式:
| 样式 | 关键词 |
|---|---|
| 温哥华格式 | vancouver |
| APA(第 7 版) | apa |
| AMA | ama |
| IEEE | ieee |
| CSE | cse |
| 芝加哥格式(作者-日期) | chicago-author-date |
| 哈佛格式 | harvard-cite-them-right |
| MLA | modern-language-association |
| Turabian | turabian-fullnote-bibliography |
| Nature | nature |
| BMJ | bmj |
| Lancet | the-lancet |
可以将任意 CSL 样式 ID 作为 style 参数传入。
示例用法
连接后,向 AI 助手提问:
单个标识符
- “将 10.1056/NEJMoa2033700 格式化为 Vancouver 格式”
- “解析 PMID:30049270 并导出为 BibTeX”
- “为 arXiv:2301.08745 提供 Chicago 格式引文”
批量输入(以逗号或换行分隔——每个工具都支持)
- “将以下内容格式化为 APA:10.1056/NEJMoa2033700, PMID:30049270, ISBN:9780192854087”
- “解析以下所有内容,并告诉我哪些是期刊文章,哪些是书籍:10.1056/NEJMoa2033700, ISBN:9780192854087, PMC7793608”
端到端工作流(助手在一次提示中依次调用 resolveIdentifier → formatCitation → exportCitation)
- “解析这三个标识符,将每条内容格式化为 AMA,并将结果导出为 BibTeX:10.1056/NEJMoa2033700, PMID:30049270, ISBN:9780192854087”
- “根据此列表为我生成一份 Nature 格式的参考文献目录,并在最后提供一个
.bib文件:PMID:30049270, arXiv:2301.08745, 10.1038/s41586-021-03819-2”
撤稿与开放获取检查(每次调用仅处理一个标识符)
- “10.1016/S0140-6736(20)31180-6 是否已撤稿?” → 返回
isRetracted: true,并附上撤稿通知和日期 - “NumPy 论文(10.1038/s41586-020-2649-2)是否开放获取?我可以在哪里免费阅读?” → 返回 OA 状态,以及附有许可和版本信息的最佳合法 PDF URL
- “检查 arXiv:2301.08745 是否有任何更正或关注声明。” → 将 arXiv 解析为 DOI,然后查询 Retraction Watch
支持的标识符
- DOI(例如
10.1056/NEJMoa2033700) - PubMed ID(例如
PMID:30049270) - PubMed Central ID(例如
PMC7793608) - ISBN(例如
ISBN:9780192854087) - arXiv ID(例如
2301.08745) - ISSN 和 eISSN
- NASA ADS 引文代码
- WHO IRIS URL
来源与确定性
每个 formatCitation 和 exportCitation 响应后都会附带一个元数据块,以便助手和用户准确了解生成每条引文所用的引擎:
formatter—builtin(Vancouver、AMA、APA、IEEE、CSE 之一,由 TypeScript 手动调优)或csl(使用 CSL 样式表的 citeproc-js)。styleUsed— 经过别名和依赖样式解析后的规范样式 ID(例如,请求harvard会解析为harvard-cite-them-right)。requestId— 用于支持、复现和日志关联。warnings— 使用回退方案或所请求样式依赖于其他样式时填充。
在输入相同且上游元数据固定的情况下,标识符解析结果具有确定性。重复的相同请求会命中底层 REST API 的缓存,并通过 x-scholar-cache 标头表明这一点。
REST API
对于 MCP 客户端之外的编程访问,可通过 scholar-sidekick.com 使用相同功能的 REST API——可匿名使用、使用免费的第一方 ssk_ 密钥(Authorization: Bearer),或通过 RapidAPI 使用付费套餐。此处使用的凭据在那里也同样有效。
开发
npm install
npm run build # Bundle to dist/mcp-server.mjs
npm test # Run tests
npm run typecheck
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。