已暴露为 MCP 工具:paper_search + paper_read —— 在 Claude / Cursor / 任意 MCP 客户端中直接调用。详见 MCP Server 60 秒配置。
已上线
1 credit · search
免费 · read
它为 Agent 做什么
paper_search 接收自然语言查询,返回 Quant Paper 中最相关的 knowledge card —— 因子、异象、市场微结构、ML for finance 等研究。它是 agent 的 文献入口:当 agent 要把一个判断锚到学术文献上(“momentum crash 真的存在吗?”、“factor zoo 那篇到底说了什么?”),先调 paper_search 拿到候选 paperCardId + availableSections,再用 paper_read 加载真正需要的章节。
向量基于 title + abstract + summary + tags,所以 card 级命中是”值得继续 paper_read”的信号 —— paper_search 故意不返回正文。
Agent flow
返回值
paper_search 返回
按相关性降序排列的论文卡片数组。
稳定标识符。传给 paper_read 加载具体章节内容。
LLM 生成的 2–3 句摘要。用它判断是否值得花一次 paper_read 加载完整章节。
研究主题标签(如 factor、momentum、deep-learning)。
章节 manifest。每条含 section_key、section_type、title、char_count、section_order。调 paper_read 时使用其中的 section_key。
{
"data": [
{
"paperCardId": "card_abc123",
"sourcePaperId": "arxiv:1404.4944",
"title": "Momentum Crashes",
"authors": ["Kent Daniel", "Tobias J. Moskowitz"],
"abstract": "Despite their strong positive abnormal returns, momentum strategies experience infrequent but severe crashes...",
"summary": "记录了动量组合在熊市反弹之后出现的剧烈崩溃,并给出可在实时操作中识别的 market-state / volatility 预测变量。",
"tags": ["factor", "momentum", "crash"],
"availableSections": [
{ "section_key": "introduction", "section_type": "introduction", "title": "Introduction", "char_count": 18420, "section_order": 1 },
{ "section_key": "methodology", "section_type": "method", "title": "Methodology", "char_count": 22150, "section_order": 2 }
],
"sectionCount": 6,
"fullTextCharCount": 102345,
"pdfUrl": "https://arxiv.org/pdf/1404.4944"
}
],
"meta": { "topK": 5, "creditsUsed": 1, "remainingCredits": 99 }
}
paper_read 返回
单篇 paper 的指定章节集合。
章节 manifest(与 paper_search 中结构相同)。
请求到的章节内容,按 section_order 排列。每条含 section_key、section_type、title、content(Markdown)、char_count、section_order。
两步检索是 canonical 模式:paper_search 用 1 credit 拿一组 ID + summary + section manifest,agent 据此判断要不要加载章节;再用 paper_read 免费加载真正需要的章节。建议先读 top-1 的 introduction + methodology;要核对具体结论时再加章节。
调 paper_read 之前就用 paper_search 返回的 availableSections[i].char_count 决定读哪几节。长文不要随手 ["all"] —— 精准加载 1–2 节,agent context 会小很多。
超过 2,000 字符 的查询会返回 400。把 agent 上下文里的长文先做摘要再调用。
paper_search 的 topK 上限是 10,超出会被静默截断。
paper_search 只返回 card 级元数据,不带正文。要拿到章节内容必须调 paper_read。
直接调用
// 1) 搜索
{
"method": "tools/call",
"params": {
"name": "paper_search",
"arguments": { "query": "momentum crash", "topK": 5 }
}
}
// 2) 读 top hit 的指定章节
{
"method": "tools/call",
"params": {
"name": "paper_read",
"arguments": {
"paperCardId": "card_abc123",
"sections": ["introduction", "methodology"]
}
}
}
完整参数参考
paper_search 返回的 paperCardId。
章节 key 数组,取自 availableSections[].section_key。省略或传 ["all"] 表示读全文。
相关接口
Wiki 搜索
同样的两步检索模式,作用在 Quant Wiki 语料(概念、公式、因子)上。
MCP Server 接入
60 秒接入 Claude / Cursor / 任意 agent harness。