mcpField
T
Trove

Trove

本地服务
github.com/LalwaniPalash搜索与检索02 周前更新

关于 Trove

Trove 是面向学术研究的 MCP 服务,可搜索论文、获取元数据和开放全文,并生成结构化研究结果。它连接多个公开学术 API;当证据不足或提供方不可用时,会明确返回部分结果或不可用状态,而不以猜测补齐。

主要功能

  1. 01跨来源搜索并去重排序
  2. 02获取论文全文、引用与参考文献
  3. 03查询作者、机构及合作网络
  4. 04构建文献证据图并比较论文
  5. 05追踪研究概念的历史脉络
  6. 06按引用速度筛选热门论文

适用场景

  1. 01跨学术来源查找某主题论文
  2. 02获取论文全文并检查引用关系
  3. 03整理文献中的主张、方法与局限
  4. 04比较多篇论文或追溯概念来源

MCP 相关

作为 MCP 服务,提供学术搜索、论文与作者查询、文献整理等工具,并附带资源和工作流提示词。可通过 stdio 或带 Bearer 令牌的 HTTP 传输方式供 MCP 客户端连接。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"lalwanipalash-trove": {
"command": "npx",
"args": [
"-y",
"trove-mcp"
],
"env": {
"TROVE_CONTACT_EMAIL": "<TROVE_CONTACT_EMAIL>",
"UNPAYWALL_EMAIL": "<UNPAYWALL_EMAIL>",
"TROVE_DB_PATH": "<TROVE_DB_PATH>",
"SEMANTIC_SCHOLAR_API_KEY": "<SEMANTIC_SCHOLAR_API_KEY>",
"CORE_API_KEY": "<CORE_API_KEY>"
}
}
}
}
启动命令npx -y trove-mcp
需要配置的环境变量
TROVE_CONTACT_EMAILContact email for polite OpenAlex usage
UNPAYWALL_EMAILEmail required to enable Unpaywall open-access lookup
TROVE_DB_PATHPath to the local SQLite cache and citation-snapshot database
SEMANTIC_SCHOLAR_API_KEY密钥Needed for reliable find_similar_papers
CORE_API_KEY密钥Improves CORE full-text throughput

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmtrove-mcp0.1.11

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

trove-mcp

npm package · GitHub repo

Trove 是一个用于学术研究的 MCP 服务。

基本思路很简单:让 Claude 搜索论文、获取元数据、在可以的情况下阅读开放全文,并基于此构建结构化输出。

我尽量让它保持审慎。如果某个提供方无法充分支持答案,Trove 会返回 partial、error 或 unavailable,而不会假装自己知道得更多。

连接的数据源

  • OpenAlex(主要元数据、发现、引用)
  • Semantic Scholar(语义推荐和相似度)
  • arXiv(预印本元数据和全文)
  • Unpaywall(按 DOI 发现开放获取论文)
  • PubMed(生物医学索引)
  • Hugging Face Papers API(发现上下文端点;严格趋势分析仅使用引用快照)
  • CORE(全文回退来源)

安装(Claude Desktop,stdio)

无需本地安装,可使用 npx。

快速冒烟测试:

npx -y trove-mcp@latest sync --queries="graph neural network"

可选的全局安装:

npm i -g trove-mcp
trove-mcp sync --queries="graph neural network"
macOS 上的 Claude Desktop
  1. 打开 Claude Desktop。
  2. 前往 Settings -> Developer -> Edit Config。
  3. 编辑 ~/Library/Application Support/Claude/claude_desktop_config.json。
  4. 在 mcpServers 下添加此服务条目:
{
  "mcpServers": {
    "trove": {
      "command": "npx",
      "args": ["-y", "trove-mcp"],
      "env": {
        "TROVE_CONTACT_EMAIL": "[email protected]",
        "TROVE_DB_PATH": "/Users/you/.trove-mcp/trove.db",
        "SEMANTIC_SCHOLAR_API_KEY": "",
        "UNPAYWALL_EMAIL": "[email protected]",
        "CORE_API_KEY": ""
      }
    }
  }
}
  1. 保存文件,并完全重启 Claude Desktop。
  2. 开始新的聊天并使用 Trove 工具。

启动时无需 API 密钥。缺少可选密钥时,服务会正常返回部分或降级响应。

与 Claude 搭配使用

如果你希望 Claude 使用 Trove,只需在提示词中说明即可。

示例:

  • “使用 Trove 查找关于推测解码的论文”
  • “使用 Trove 比较 DPO 和 RLHF 论文”
  • “使用 Trove 追溯 LoRA 的起源”

如果你不希望 Claude 使用对配置敏感的工具,可以通过 TROVE_DISABLED_TOOLS 隐藏它们。

全新安装后的预期情况

  • get_trending_papers 首次运行时通常会返回 mode = unavailable。Trove 必须先积累至少两个本地引用快照日期,才能如实计算引用速度。
  • find_similar_papers 无需 Semantic Scholar 密钥即可运行,但不带密钥的调用会共用繁忙的资源池,因此经常会收到 429。此外,对于许多计算机科学领域以外的论文和近期作品,Semantic Scholar 也没有推荐结果。在这两种情况下,Trove 都会返回错误并说明原因。它绝不会回退到关键词重合度。
  • 即使提供方的覆盖不完整,某些论文仍然可以检索到。例如,arXiv 预印本可能有全文,但在 Semantic Scholar 或 OpenAlex 中没有可用的参考文献列表。

运行时行为

  • 每个工具都会返回结构化封装,其中包含 status、degraded、warnings、provenance、meta.version 以及工具专属的 data。
  • 提供方服务中断和速率限制会作为警告呈现,不会导致进程崩溃。
  • Trove 倾向于明确报告不可用,而不是提供近似输出。因此,有些工具会返回带有警告的空结果,而不是给出“尽力而为”的猜测。
有实际前置条件的工具
  • get_trending_papers
    • 严格失败关闭:只有当本地引用历史中包含至少两个快照日期,且计算出的速度非零时,才会返回 mode = snapshot。
    • 候选发现可以来自 OpenAlex、Semantic Scholar 和 Hugging Face,但这些官方 API 均不提供按天统计的历史引用数据。
    • 首次运行时返回 mode = unavailable 属于预期情况。运行一次 trove sync 以初始化数据,然后在之后的某一天再次运行以积累历史记录。
  • find_similar_papers
    • 严格失败关闭:仅使用 Semantic Scholar,不进行词汇匹配回退。
    • 要可靠使用,必须设置 SEMANTIC_SCHOLAR_API_KEY。
    • 如果没有密钥,Trove 会立即返回明确错误,而不会耗费时间发送不可靠的未认证请求。
已知的提供方限制
  • Semantic Scholar 无需密钥即可公开访问,但未经身份验证的流量会使用共享池,因此经常返回 429。
  • 只有在设置了 UNPAYWALL_EMAIL 或 TROVE_CONTACT_EMAIL 时才会使用 Unpaywall。
  • CORE 无需密钥即可提供基本访问,但可能会限流或在负载较高时降级;CORE_API_KEY 可提高吞吐量。此外,CORE API 是免费的,只需在其网站上注册并验证邮箱即可。
  • get_references 严格采用失败关闭策略。有些大型机构发布的 arXiv 预印本可以作为论文检索到,但在 Semantic Scholar 和 OpenAlex 中仍缺少可用的参考文献覆盖。在这种情况下,Trove 会返回明确警告,并建议使用 get_full_text 检查文内引文。
  • get_author 会尽力补充 mostCitedPaperIds 和 recentPaperIds。如果无法可靠获取这些后续列表,Trove 会将个人资料标记为 partial,且不会将空数组缓存为权威数据。
  • 以 OpenAlex 为主的搜索仍可能对小众查询产生领域歧义。search_papers 和 build_literature_map 会应用精确度门槛,但含义过载的术语仍可能需要更具体的提示词或筛选条件。
  • trace_idea 使用启发式方法对起源进行排序。时间线通常很有用,但如果提供方的排序不够准确,仍可能漏掉最早的权威论文。

实用配置

如果你只需要实用的核心工作流,设置以下变量即可:

  • TROVE_CONTACT_EMAIL
  • UNPAYWALL_EMAIL
  • TROVE_DB_PATH

如果你希望相似论文推荐能够稳定运行,还需设置:

  • SEMANTIC_SCHOLAR_API_KEY

如果你希望趋势功能变得实用,请运行:

npx -y trove-mcp@latest sync

并定期执行。趋势功能依赖本地快照历史,因此在第一天不会发挥作用。

如果你希望采用更保守的配置,可以隐藏需要额外设置的工具:

{
  "mcpServers": {
    "trove": {
      "command": "npx",
      "args": ["-y", "trove-mcp"],
      "env": {
        "TROVE_CONTACT_EMAIL": "[email protected]",
        "TROVE_DB_PATH": "/Users/you/.trove-mcp/trove.db",
        "UNPAYWALL_EMAIL": "[email protected]",
        "TROVE_DISABLED_TOOLS": "get_trending_papers,find_similar_papers"
      }
    }
  }
}

这样就能使用核心的论文搜索 / 论文阅读 / 比较 / 溯源工作流,同时不暴露对配置最敏感的两个工具。

HTTP 模式(可流式传输)

TROVE_HTTP_BEARER_TOKEN=change-me npx trove-mcp --transport=http --port=3000

浏览器客户端示例:

TROVE_HTTP_BEARER_TOKEN=change-me TROVE_HTTP_CORS_ORIGIN=http://localhost:3000 npx trove-mcp --transport=http --port=3000
  • 对需要身份验证的 MCP 请求使用 POST /mcp
  • 使用 GET /health 进行健康检查
  • 身份验证标头:Authorization: Bearer <token>
  • CORS 会向浏览器 MCP 客户端公开 Mcp-Session-Id/MCP-Session-Id

工具

工具功能
search_papers多源搜索 + 去重 + 确定性排序(OpenAlex/S2/arXiv/PubMed/CORE)
get_trending_papers根据引用速度对主题论文排序,模式为 `mode = snapshot
get_paper通过 DOI/arXiv/S2/OpenAlex/PubMed/标题解析论文
get_full_textarXiv -> OpenAlex 开放获取 PDF 位置 -> Unpaywall -> CORE 全文回退,并分块输出;如果期刊落地页提供了 citation_pdf_url 标签,则会继续访问该标签指向的 PDF
get_citations引用目标论文的论文
get_references目标论文引用的论文
find_similar_papersSemantic Scholar 推荐;无需密钥即可使用,设置 SEMANTIC_SCHOLAR_API_KEY 后可稳定运行
get_author作者个人资料和影响力指标;论文列表补充尽力而为
get_institution_output机构资料 + 出版成果
get_coauthor_network作者的合作关系图
build_literature_map结构化证据图谱(主张/方法/局限/共识)
compare_papers对 2-5 篇论文进行结构化比较
trace_idea跨时间和影响关系追踪概念脉络

资源

  • trove://resources/version
  • trove://resources/source-capability-matrix
  • trove://resources/schema-reference
  • trove://resources/cache-health

提示词

  • literature-review-workflow
  • paper-comparison-workflow
  • idea-lineage-workflow

这些是可选的工作流辅助工具。

引文快照同步任务

npx trove-mcp sync
npx trove-mcp sync --queries="agentic ai,graph neural network,causal inference"

按计划运行此任务(例如使用 cron),以提升 get_trending_papers 的质量。 如果没有较早的本地快照,首次运行的趋势结果会正确返回 mode = unavailable。 如果需要获取实际的短期趋势,请至少在不同日期运行两次。

测试

这些测试主要用于保护那些容易在不知不觉中被破坏的部分:

  • 标识符规范化
  • 去重/别名处理
  • 排名和非主题内容过滤
  • 全文清理质量
  • 综合信息提取质量
  • 提供方故障时默认拒绝的行为
  • 针对虚假趋势/虚假相似度/薄弱证据的发布门槛
  • 实时提供方契约检查

发布流程中会运行 npm run verify:release。实时测试单独运行,因为它们取决于上游提供方当天的运行状况。

开发

npm install
npm run typecheck
npm test
npm run test:quality
npm run verify:release
npm run build
npm run inspect

实时契约测试:

LIVE_CONTRACT=1 npm run test:live

暂时将工具从 MCP 注册中隐藏(用于严格的发布门槛):

TROVE_DISABLED_TOOLS=get_trending_papers,find_similar_papers npx -y trove-mcp@latest

数据与合规

  • 不进行抓取
  • 不使用 Sci-Hub 或绕过付费墙
  • 所有来源均为公开/开放 API 或合法的 OA 链接

贡献与支持

欢迎提交 Bug 报告、问题和拉取请求。请参阅 CONTRIBUTING.md。

引用

如果你在研究中使用 Trove,请使用 CITATION.cff 引用。

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

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

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