mcpField
R
ResearchTwin

ResearchTwin

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

关于 ResearchTwin

ResearchTwin 是一个开源联邦平台,可将研究者的论文、数据集和代码仓库整合为可对话的数字孪生。它面向研究者和 AI Agent,支持跨来源发现、S-Index 指标及机器可读的研究者资料。

主要功能

  1. 01联邦式研究者数字孪生
  2. 02论文、数据集和代码仓库连接器
  3. 03实时 S-Index 指标
  4. 04对话式研究探索
  5. 05Schema.org 发现 API
  6. 06本地节点与托管边缘节点

适用场景

  1. 01通过对话探索研究者成果
  2. 02跨研究者资料搜索论文
  3. 03查看研究成果的影响指标
  4. 04为研究者资料运行本地节点

MCP 相关

README 将用于 Agent 间发现的 MCP 服务列为计划中的贡献,并非当前功能。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"martinfrasch-researchtwin": {
"command": "uvx",
"args": [
"mcp-server-researchtwin"
],
"env": {
"RESEARCHTWIN_URL": "<RESEARCHTWIN_URL>"
}
}
}
}
启动命令uvx mcp-server-researchtwin
需要配置的环境变量
RESEARCHTWIN_URLBase URL for ResearchTwin API (default: https://researchtwin.net)

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

安装包
pypimcp-server-researchtwin0.1.1

工具

还没有获取到工具列表

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

详细介绍

ResearchTwin:研究知识的联邦式智能 Agent 网络

arXiv License Live Platform S-Index Spec Project Board

ResearchTwin 是一个开源的联邦式平台,可将研究人员的出版物、数据集和代码仓库转化为可对话的数字孪生。它基于双模胶质—神经优化(BGNO)架构构建,支持双向发现,让人类和 AI Agent 协作加速科学发现。

访问 researchtwin.net | 加入网络 | 阅读论文(arXiv)


项目愿景

科学成果的指数级增长造成了“发现瓶颈”。传统的静态 PDF 和彼此孤立的存储库限制了知识综合与再利用。ResearchTwin 通过以下方式应对这一问题:

  • 整合来自 Semantic Scholar、Google Scholar、GitHub 和 Figshare 的多模态研究成果
  • 针对所有成果类型计算实时 S-Index 指标(质量 × 影响力 × 协作)
  • 提供可交互探索研究内容的对话式聊天机器人界面
  • 提供带有 Schema.org 类型的智能体间发现 API,支持机器对机器的研究发现
  • 支持联邦式、类似 Discord 的架构,可连接本地节点、中心和托管边缘节点

架构概览

BGNO(双模胶质—神经优化)
Data Sources          Glial Layer          Neural Layer         Interface
┌──────────────┐    ┌─────────────┐    ┌──────────────┐    ┌────────────┐
│Semantic Scholar│───▶│             │    │              │    │  Web Chat  │
│Google Scholar │───▶│  SQLite     │───▶│  RAG with    │───▶│  Discord   │
│GitHub API     │───▶│  Cache +    │    │  Claude API  │    │  Agent API │
│Figshare API   │───▶│  Rate Limit │    │              │    │  Embed     │
└──────────────┘    └─────────────┘    └──────────────┘    └────────────┘
  • 连接器层:获取论文(S2+GS,并进行去重)、代码仓库(GitHub)、数据集(Figshare)和 ORCID 元数据
  • 胶质层:使用 24h TTL 进行 SQLite 缓存、速率限制,以及 S2+GS 标题相似度合并(阈值为 0.85)
  • 神经层:使用 Claude 的 RAG——上下文组装、提示词工程、对话式综合
  • 界面层:D3.js 知识图谱、聊天小组件、Discord 机器人、REST API
联邦网络层级
层级名称描述状态
Tier 1本地节点研究人员在本地运行 python run_node.py已上线
Tier 2中心实验室聚合多个节点的联邦服务计划中
Tier 3托管边缘节点托管在 researchtwin.net 的云端已上线
智能体间发现 API

带有 Schema.org @type 注释的机器可读端点:

端点Schema.org 类型用途
GET /api/researcher/{slug}/profilePerson带有 HATEOAS 链接的研究人员档案
GET /api/researcher/{slug}/papersItemList of ScholarlyArticle带有引用信息的论文
GET /api/researcher/{slug}/datasetsItemList of Dataset带有 QIC 评分的数据集
GET /api/researcher/{slug}/reposItemList of SoftwareSourceCode带有 QIC 评分的代码仓库
GET /api/discover?q=keyword&type=paperSearchResultSet跨研究人员搜索

开始使用

托管版(Tier 3)——无需设置
  1. 访问 researchtwin.net/join.html
  2. 使用姓名、电子邮件和研究标识符注册
  3. 您的数字孪生将立即上线
本地节点(Tier 1)——完全掌控
git clone https://github.com/martinfrasch/researchtwin.git
cd researchtwin
pip install -r backend/requirements.txt
cp node_config.json.example node_config.json
# Edit node_config.json with your details
python run_node.py --config node_config.json
Docker 部署
cp .env.example .env  # Add your API keys
docker-compose up -d --build

必需的 API 密钥:ANTHROPIC_API_KEY(用于 Claude RAG) 可选项:S2_API_KEY、GITHUB_TOKEN、DISCORD_BOT_TOKEN、SMTP 凭据


仓库结构

researchtwin/
├── backend/
│   ├── main.py              # FastAPI endpoints (REST + Discovery API)
│   ├── researchers.py        # SQLite researcher CRUD + token management
│   ├── database.py           # SQLite schema, WAL mode, migrations
│   ├── models.py             # Pydantic models for all endpoints
│   ├── rag.py                # RAG context assembly for Claude
│   ├── qic_index.py          # S-Index / QIC computation engine
│   ├── email_service.py      # SMTP service for profile update codes
│   ├── connectors/           # Data source connectors
│   │   ├── semantic_scholar.py
│   │   ├── scholarly_lib.py  # Google Scholar via scholarly
│   │   ├── github_connector.py
│   │   └── figshare.py
│   └── discord_bot/          # Discord bot with /research and /sindex
├── frontend/
│   ├── index.html            # Main dashboard with D3.js knowledge graph
│   ├── join.html             # Self-registration page
│   ├── update.html           # Email-verified profile updates
│   ├── privacy.html          # Privacy policy
│   └── widget-loader.js      # Embeddable chat widget
├── run_node.py               # Tier 1 local node launcher
├── node_config.json.example  # Local node configuration template
├── docker-compose.yml        # Docker orchestration
├── nginx/                    # Nginx reverse proxy + SSL
└── whitepaper.tex            # LaTeX manuscript

生态系统

本仓库是 ResearchTwin Ecosystem 项目的一部分:

仓库描述
researchtwin联邦式平台(本仓库)
s-indexS-Index 正式规范与参考实现

可嵌入的 S-Index 小组件

在您的实验室网站、Google Sites 页面或个人主页上展示您的 S-Index:

<iframe
  src="https://researchtwin.net/embed.html?slug=YOUR-SLUG"
  width="440" height="180"
  style="border:none; border-radius:12px;"
  loading="lazy">
</iframe>

将 YOUR-SLUG 替换为您的研究者 slug(例如 martin-frasch)。

Google Sites:编辑页面 > 插入 > 嵌入 > “通过 URL”选项卡 > 粘贴 https://researchtwin.net/embed.html?slug=YOUR-SLUG

WordPress:添加“自定义 HTML”区块并粘贴 iframe 代码。

该小组件会显示研究者姓名、S-Index 分数、h-index、引用次数和论文数量。数据会自动从实时 API 来源更新。

查看实际效果 | 完整嵌入说明


文档

文档描述
API 参考完整的 REST API 文档,包含架构和示例
自托管指南Tier 1 本地节点的设置与配置
Hub 联邦指南Tier 2 Hub 架构与设置(计划中)
安全策略漏洞报告与安全最佳实践

贡献

欢迎贡献!请查看项目看板,了解已跟踪的问题。

  • 新连接器(ORCID 信息补充、PubMed、OpenAlex)
  • 基于所属机构的地理映射
  • 用于 Agent 间发现的 MCP 服务
  • UI/UX 改进
  • Bug 修复与优化

许可证

MIT 许可证。请参阅 LICENSE。


联系方式


助力研究者与 AI Agent 发现、协作并携手创新。

评论

支持 Markdown

第一次接触 MCP?

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

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