科学文献研究工具

MCP Edison是一款AI驱动的科学研究工具,提供文献搜索、先例搜索、数据分析、化学任务和异步任务管理等功能,适用于科学研究和数据分析场景。

  • by jffbrwn2
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 jffbrwn2/mcp-edison

使用说明

MCP爱迪生🔬

模型上下文协议(MCP)服务器 爱迪生科学 平台。为Claude和其他兼容MCP的人工智能助手带来强大的人工智能驱动的科研能力。

🌟 特性

此MCP服务器将Edison Scientific的五个研究代理暴露为MCP工具:

  • 📚 文献检索 -用引用的答案查询科学数据库(由PaperQA3提供支持)
  • 🔍 先例搜索 -检查之前是否探索过概念或方法
  • 📊 数据分析 -处理生物数据集以回答研究问题
  • 🧪 化学任务 -通过化学信息学进行分子设计和合成规划
  • ⚡ 异步任务管理 -创建和监控长时间运行的研究任务

📋 先决条件

  1. Python 3.10或更高版本
  2. Edison Scientific API密钥 -获取你的 edisonscientific.com/profile

🚀 快速开始

安装

# Using pip
pip install mcp-edison

# Or using uv (recommended)
uv pip install mcp-edison

配置

将Edison API密钥设置为环境变量:

export EDISON_API_KEY='your_api_key_here'

或者创建一个 .env 文件:

echo "EDISON_API_KEY=your_api_key_here" > .env

使用Claude Desktop

添加到您的Claude Desktop配置文件中:

MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json 视窗: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "edison": {
      "command": "python",
      "args": ["-m", "mcp_edison"],
      "env": {
        "EDISON_API_KEY": "your_api_key_here"
      }
    }
  }
}

重新启动Claude Desktop,您将可以访问Edison工具!

程序化使用

from mcp_edison import create_server

# Create server with API key
server = create_server(api_key="your_api_key")

# Run the server
server.run()

🛠️ 可用工具

literature_search

搜索科学文献,获取研究问题的引用答案。

参数:

  • query (str):要回答的研究问题
  • verbose (bool,可选):返回详细的元数据

示例查询:

  • “CRISPR-Cas9基因编辑的机制是什么?”
  • “哪些被忽视的疾病有人工智能开发的治疗方法?”
  • “mRNA疫苗技术的现状如何?”

退货:

{
    "answer": "Detailed answer text...",
    "formatted_answer": "Answer with [1], [2] citations...",
    "has_successful_answer": true
}

precedent_search

检查之前是否探索过科学概念或方法。

参数:

  • query (str):检查的概念或方法
  • verbose (bool,可选):返回详细的元数据

示例查询:

  • “有人在人体或NHP中测试过治疗性运动吗?”
  • “是否尝试过基于超声波的神经接口?”
  • “之前有关于使用人工智能进行蛋白质折叠的工作吗?”

退货:

{
    "answer": "Summary of precedents...",
    "formatted_answer": "Answer with citations to prior work...",
    "has_successful_answer": true
}

data_analysis

分析生物数据集以回答研究问题。

参数:

  • query (str):数据分析问题
  • verbose (bool,可选):返回详细的元数据

示例查询:

  • “X基因在组织Y中的表达模式是什么?”
  • “比较条件A和B之间的蛋白质相互作用”
  • “识别此数据集中的差异表达基因”

chemistry_task

执行分子设计和合成规划任务。

参数:

  • query (str):要执行的化学任务
  • verbose (bool,可选):返回详细的元数据

示例查询:

  • “设计一种对蛋白质靶X具有高亲和力的分子”
  • “建议化合物Y的合成路线”
  • “预测该分子的溶解度:[SMILES]”

create_task & get_task_status

对于长时间运行的任务,异步创建它们并稍后检查状态。

创建任务:

{
    "task_type": "literature",  # or precedent, data_analysis, chemistry
    "query": "Your research question"
}

获取状态:

{
    "task_id": "task_id_from_create_task"
}

💡 用例

研究文献综述

User: Use Edison to search: "What are the latest advances in CAR-T cell therapy for solid tumors?"

克劳德将使用 literature_search 查询科学数据库并返回引用答案的工具。

验证新想法

User: Check if anyone has tried combining optogenetics with ultrasound for deep brain stimulation

克劳德将使用 precedent_search 查找以前的工作并评估新颖性。

收集研究证据

非常适合系统地收集引用的证据:

User: I need information on:
      1. Neural signal amplitudes
      2. Ultrasound detection sensitivity
      3. Prior attempts at ultrasound neural interfaces

克劳德可以使用爱迪生工具从科学文献中系统地收集引用的证据。

🔧 发展

设置开发环境

git clone https://github.com/yourusername/mcp-edison.git
cd mcp-edison

# Create virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install in development mode
pip install -e ".[dev]"

运行测试

pytest

代码格式化

# Format code
black src/

# Lint
ruff check src/

📚 文档

🤝 贡献

欢迎投稿!拜托:

  1. 分叉存储库
  2. 创建要素分支(git checkout -b feature/amazing-feature)
  3. 提交您的更改(git commit -m 'Add amazing feature')
  4. 推到分支(git push origin feature/amazing-feature)
  5. 打开拉取请求

📄 许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。

🙏 致谢

🐛 问题与支持

🗺️ 路线图

  • []添加访问Edison任务历史的资源支持
  • []为常见的研究工作流程实施提示模板
  • []为长时间运行的任务添加流媒体支持
  • []通过结构可视化扩展化学工具
  • []为频繁访问的文献添加缓存

备注:这是一个非官方的社区项目,与爱迪生科学公司没有正式联系。有关Edison平台的官方支持,请访问 爱迪生科学网.