☕ Project Caffeine 项目
⚠️ 项目状态说明:本项目目前正处于设计和开发规划阶段。
Project Caffeine 是一个基于 Model Context Protocol (MCP) 协议的研报智能体系统,旨在自动化信息检索、深度推理和结构化报告生成。通过精细的语义分块和多步推理,系统高效处理海量文献数据,并提供具有深度的研究洞察,帮助知识工作者快速获得有价值的研究结果并构建个人知识库。
1. 项目背景与目标
在现代研究和知识工作中,海量的文献数据和复杂的推理任务常常让研究人员面临巨大的挑战。Project Caffeine 旨在通过 MCP协议 和先进的 AI 技术,自动化这一过程。项目的核心目标是:
- 自动化文献检索:从多个学术资源和数据库中自动获取相关文献。
- 深度推理与分析:基于大语言模型进行多步推理,生成研究报告和洞察。
- 报告生成与结构化:通过标准化的模板生成结构化、易于阅读的研究报告。
- 个人知识库构建:帮助用户构建自己的文献和研究知识库,支持长期存储和高效检索。
2.系统架构设计蓝图
图1-1:研报智能体系统架构拓扑示意图
根据提供的系统拓扑图及项目文档,Project Caffeine 的系统框架设计基于 MCP (Model Context Protocol) 架构,旨在构建一个深度研究助理智能体。该系统通过解耦执行、策略与数据层,实现了从意图拆解到学术文献检索,再到本地知识库沉淀的全链路闭环。
2.1 系统分层架构设计
系统由四个核心物理与逻辑区域组成,通过标准协议进行通信:
- 用户层 (本地运行环境):研究人员通过支持 MCP 的客户端(如 Claude Desktop 或 Cursor)发起指令。客户端负责大模型的上下文管理与协议调度,并通过 HTTPS 与远程大模型(如 OpenAI 或 Anthropic API)进行异步通信。
- MCP 传输协议层:作为客户端与 Server 之间的桥梁,支持 stdio(本地进程间同步通信)和 SSE / HTTP(异步/远程通信)两种模式,统一采用 JSON-RPC 2.0 标准。
- 单体 MCP Server (核心逻辑层):系统的中枢,由三大核心原语组成,负责执行具体的研究逻辑。
- 外部与本地基础设施:包括云端的学术数据库(如 arXiv、Semantic Scholar)和本地的持久化存储(如 Obsidian 知识库)。
2.2 MCP 三大核心原语分工
系统框架严格遵循 MCP 规范,将功能划分为 Tools、Prompts 和 Resources 三大部分:
| 原语名称 | 核心职责 (Core Responsibility) | 典型工具与指令示例 | 所属 Server 角色 |
|---|---|---|---|
| Tools (工具) | 动作执行者:暴露给模型的主动操作,负责与外部学术 API 通信或执行本地文件 I/O。 | search_academic_literature, save_to_local_vault |
S1: 执行者 (Executor) |
| Prompts (提示词) | 策略军师:提供结构化的思维框架模板,用于指导大模型进行意图拆解与深度推理。 | 5W3H, SCQA, 5 Whys, generate_search_queries |
S2: 军师 (Strategist) |
| Resources (资源) | 数据管家:被动的静态上下文数据源,允许模型以只读方式挂载本地知识库内容。 | vault://local_literature/, note://local/ |
S1/S3: 数据管家/分析师 |
2.3 原语协同逻辑要点
拓扑图展示了系统内部的协同工作流:
- 动态策略驱动:当用户输入模糊主题时,系统首先调用 Prompts 原语 中的
generate_search_queries将意图降维并转化为专业检索词。 - 物理链路执行:大模型根据拆解后的 Query,通过 Tools 原语 调用外部 API(如 arXiv)并执行“双轨制落盘”,将 JSON 数据转化为带有 YAML 元数据的 Markdown 文件。
- 知识闭环构建:在递归深挖阶段,模型通过 Resources 原语 回读已保存在本地知识库中的文献卡片,确保后续的推理基于已获知的“先验知识(Learnings)”。
3. 开发框架与技术栈说明
图:1-2:Project Caffeine开发框架与技术栈架构图
为确保系统的高并发处理能力与协议严谨性,Project Caffeine 采用以下核心开发框架与技术标准:
| 层次 | 技术选型 |
|---|---|
| 核心语言 | TypeScript(所有核心功能强制使用) |
| 运行环境 | Node.js LTS v20+(异步非阻塞 I/O) |
| 协议层 | MCP SDK(@modelcontextprotocol/sdk),支持 stdio 与 SSE 传输 |
| 包管理 | npm(单体仓库,单一 package.json) |
| 校验工具 | Zod(运行时类型校验与参数验证) |
| HTTP 客户端 | axios(封装学术 API 调用,支持重试与速率限制) |
| 日志工具 | winston / log4js(生产级日志记录) |
| 测试工具 | Jest + k6(单元测试与负载压测) |
| 调试工具 | VS Code 断点调试(通过 --inspect 挂载) |
4. 项目开发路线图
本系统的开发将遵循“敏捷迭代、核心优先、由浅入深”的研发原则。为了确保开发过程的稳健性,整个生命周期被划分为五个渐进式阶段,从最基础的物理检索链路起步,逐步叠加思维框架、递归推理算法,最终实现与本地个人知识库的完美融合。每个阶段均能独立跑通并产出具备核心价值的最小可行性产品(MVP)。
图1-3:Project Caffeine MVP阶段开发路线图
当前开发进度:
| 版本 | 开发目标 | 设计文档 | 开发文档 |
|---|---|---|---|
v0.0.1 |
部署基于 Node.js 的开发环境,验证 MCP 协议组件间通讯、大语言模型推理等基本运行环境。 |
Arabicat Sprint1系统设计文档 | Arabicat Sprint1系统开发文档 |
v0.0.2 |
基于 Sprint 1 原型,扩展为支持 MCP Prompts 原语的多框架引擎,实现意图拆解工具与本地知识库集成,构建模块化、可扩展的提示词策略服务器。 | Arabica Sprint2系统设计文档 | Arabica Sprint2系统开发文档 |
v0.0.3 |
构建文献查询 Server,集成学术 API 实现基础外围检索能力,并开发双轨制数据落盘模块,将离散的 JSON 数据转换为带有标准 YAML 元数据的本地化 Markdown 文件。 | Arabica Sprint3系统设计文档 | Arabica Sprint3系统开发文档 |
5. 参与设计讨论
当前系统正处于设计阶段,我们欢迎任何针对 项目的架构设计、功能建议、开发框架发起讨论。您可以浏览仓库内的 docs/design/ 蓝图文件,并通过提交 Issue 参与我们的讨论!
6. AI生成内容声明
Project Caffeine 项目的核心驱动力依赖于大语言模型(LLM)进行自动化推理和文本生成。系统通过先进的推理算法和深度学习模型,自动处理信息检索、分析和报告生成。然而,尽管系统能够提供高效、结构化的研究成果,所有AI生成的内容仍需经过人工核实。
在使用 AI 生成的报告和分析时,用户应进行独立的学术严谨性核实和数据交叉验证,确保所生成内容的准确性和可信度。所有通过 Project Caffeine 生成的结果仅作为参考,最终的研究结论应由专业人员根据实际情况作出判断。
7. 许可证说明
本项目源代码采用 MIT License 进行许可,允许在满足许可证条款的前提下,自由地使用、复制、修改、合并、发布、分发、再许可和/或销售软件的副本。
所有研究成果(包括但不限于论文、数据、图表、模型、方法论描述等)默认使用 知识共享署名-相同方式共享 4.0 国际许可协议 (CC BY-SA 4.0) 进行许可。