跨领域创新发现工具

Mindrian Reverse Saliant Discovery MCP Server 是一款通过双重相似性分析(结构相似性和语义相似性)来发现跨领域创新机会的工具,适用于科研、技术开发和创新管理等领域。

  • by jsagir
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 jsagir/Mindrian-Reverse-Saliant-MCP-Server

使用说明

🧠 Mindrian 反向突显发现 MCP 服务器

通过双相似性分析发现突破性的跨领域创新机遇

📋 目录

🎯 什么是反向显著性发现?

A. “Reverse Salient”可以翻译为“反向突出”或“逆向显著”。不过,具体翻译可能需要根据上下文来确定最准确的表述。在军事或战略语境中,它可能指的是敌方防线中的薄弱环节或突出部分,与常规的“突出部”(Salient)相反 这是一个突破性的创新机遇,其中:

  • **高结构相似性(LSA)**论文采用了相似的方法和技术
  • **低语义相似度(BERT)**论文探讨了不同的问题和领域

这个高的差异表明 一个领域的方法可以转移到另一个领域来解决问题 - 创新的强大源泉!

示例

Paper A: "Quantum annealing for supply chain optimization"
Paper B: "High-throughput drug combination screening"

LSA Similarity: 0.75 (HIGH - both use optimization, combinatorial methods)
BERT Similarity: 0.12 (LOW - different domains: logistics vs pharma)
Differential: 0.63 (HUGE!)

→ Innovation Opportunity: Apply quantum annealing to drug screening!

✨ 特点

核心能力

  • ✅ **LSA(潜在语义分析)**通过TF-IDF + SVD测量结构相似性
  • ✅ **BERT 嵌入(或:BERT 表示向量)**通过上下文嵌入衡量语义相似度
  • ✅ 差异分析自动识别高LSA(潜在语义分析)+低BERT(双向编码器表示)的配对
  • ✅ 顺序思维每个决策点都进行透明推理

高级验证

  • 🔍 看起来像是一个放大镜的符号,通常用于表示搜索或观察。在中文中,可以简单地翻译为“🔍(放大镜)”或者根据上下文意译为“🔍(查找/观察)”。由于这是一个符号,没有直接的中文对应词汇,所以翻译时通常会保留原符号或根据语境进行意译。 专利数据库检索Google专利,美国专利商标局(USPTO)
  • 🚀 表情符号“🚀”在中文中通常被翻译为“火箭”或直接用其形象表达“嗖的一下”(表示快速移动或上升)。因此,这个表情可以理解为“🚀 火箭”或者用其形象描述为“嗖的一下”。 启动活动监控Crunchbase,TechCrunch
  • 📚 书籍 引文网络分析Google Scholar,arXiv

数据来源

  • 🌐 代表互联网或网络的符号 Tavily网页搜索多源学术论文集
  • 📖 书籍或阅读的象征 Scopus API直接访问学术数据库
  • 📄(文件、纸张的符号) CSV 导入加载现有论文集

🚀 安装

先决条件

  • Python 3.11或更高版本
  • API密钥:

安装步骤

# 1. Clone or download the repository
git clone https://github.com/mindrian/reverse-saliant-mcp.git
cd reverse-saliant-mcp

# 2. Create virtual environment (recommended)
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# 3. Install dependencies
pip install -r requirements.txt

# 4. Download NLTK data
python -c "import nltk; nltk.download('stopwords')"

# 5. Configure environment variables
cp .env.example .env
# Edit .env and add your API keys

环境设置

创建 .env 文件:

TAVILY_API_KEY=your_tavily_api_key_here
SCOPUS_API_KEY=your_scopus_api_key_here  # Optional

🎮 快速入门

选项1:独立运行

python server.py

选项2:连接到Claude桌面版

编辑 claude_desktop_config.json:

{
  "mcpServers": {
    "mindrian": {
      "command": "python",
      "args": ["C:\\path\\to\\server.py"],
      "env": {
        "TAVILY_API_KEY": "your_key",
        "SCOPUS_API_KEY": "your_key"
      }
    }
  }
}

重启Claude桌面程序,您将能够使用所有Mindrian工具!

📚 使用示例

示例1:自动化全流程

# In Claude Desktop, just ask:
"""
Use Mindrian to discover innovation opportunities between 
quantum computing and drug discovery
"""

# Behind the scenes, this executes:
result = await execute_full_workflow(
    structured_input={
        "challenge": "Quantum computing × Drug discovery innovation",
        "domains": [
            {
                "label": "Quantum Computing",
                "concepts": ["superposition", "entanglement"],
                "methods": ["quantum annealing", "VQE", "QAOA"]
            },
            {
                "label": "Drug Discovery",
                "concepts": ["molecular docking", "protein folding"],
                "methods": ["high-throughput screening", "computational chemistry"]
            }
        ]
    },
    search_queries=[
        "quantum computing optimization",
        "drug discovery screening methods",
        "quantum annealing applications",
        "combinatorial drug screening"
    ],
    validate_top_n=3
)

示例2:分步手动控制

# Step 1: Initialize
result = await initialize_discovery({
    "challenge": "Find AI × Healthcare innovations",
    "domains": [...]
})
session_id = result["session_id"]

# Step 2: Collect papers
await collect_papers_tavily(
    session_id=session_id,
    search_queries=["machine learning healthcare", "AI medical diagnosis"]
)

# Step 3: Clean papers
await clean_papers(session_id)

# Step 4: Compute LSA (structural similarity)
await compute_lsa_similarity(session_id)

# Step 5: Compute BERT (semantic similarity)
await compute_bert_similarity(session_id)

# Step 6: Find reverse salients
rs_result = await find_reverse_salients(session_id, top_n=20)

# Step 7: Validate top opportunity
await validate_reverse_salient(
    session_id=session_id,
    reverse_salient_id="RS-001",
    check_patents=True,
    check_startups=True,
    check_citations=True
)

# Step 8: Develop innovation thesis
await develop_innovation_thesis(session_id, "RS-001")

# Step 9: Generate report
await generate_report(session_id, format="markdown")

示例3:使用CSV数据

# Load papers from your own CSV file
await initialize_discovery({
    "challenge": "Analyze my research corpus",
    "domains": [...]
})

await load_papers_csv(
    session_id="...",
    csv_file_path="./data/my_papers.csv"
)

# Continue with normal workflow

🔧 API参考

核心工具

工具 用途 必需参数
(无对应中文) (无对应中文) (无对应中文)
collect_papers_tavily session_id 网络搜索
collect_papers_scopus session_idScopus API search_terms ,
load_papers_csv session_id 加载 CSV
clean_papers session_id 清洁文本
compute_lsa_similarity session_id 结构相似性
compute_bert_similarity session_id 语义相似度
find_reverse_salients session_id 发现机遇
validate_reverse_salient session_id 高级验证
develop_innovation_thesis session_id 创建论文
generate_report session_id 完整报告
execute_full_workflow structured_input 自动化流水线

|

structured_input = {
    "challenge": "Description of innovation challenge",
    "domains": [
        {
            "label": "Domain Name",
            "concepts": ["concept1", "concept2", "concept3"],
            "methods": ["method1", "method2"],
            "problems": ["problem1", "problem2"],
            "terminology": ["term1", "term2"]
        }
    ],
    "constraints": ["constraint1", "constraint2"],
    "metadata": {
        "industry": "pharmaceutical",
        "timeline": "2-3 years"
    }
}

输入格式

🧠 它的工作原理

┌─────────────────────────────────────────────────────────┐
│                   PAPER COLLECTION                       │
│  Tavily Search → Scopus API → CSV Import → Cleaning     │
└────────────────────┬────────────────────────────────────┘
                     │
         ┌───────────┴───────────┐
         │                       │
         ▼                       ▼
┌────────────────┐      ┌────────────────┐
│ LSA ANALYSIS   │      │ BERT ANALYSIS  │
│ (Structural)   │      │ (Semantic)     │
├────────────────┤      ├────────────────┤
│ • TF-IDF       │      │ • Tokenization │
│ • SVD Topics   │      │ • Embeddings   │
│ • Similarity   │      │ • Cosine Sim   │
└────────┬───────┘      └───────┬────────┘
         │                      │
         └──────────┬───────────┘
                    ▼
         ┌─────────────────────┐
         │ DIFFERENTIAL        │
         │ |BERT - LSA|        │
         │                     │
         │ HIGH = Innovation!  │
         └──────────┬──────────┘
                    │
         ┌──────────┴───────────┐
         │                      │
         ▼                      ▼
┌────────────────┐    ┌────────────────┐
│ VALIDATION     │    │ INNOVATION     │
│ • Patents      │    │ THESIS         │
│ • Startups     │    │ • Mechanism    │
│ • Citations    │    │ • Feasibility  │
└────────────────┘    └────────────────┘

双相似性框架

顺序思维整合

{
  "thought_number": 1,
  "thought": "Analyzing 2 domains. Need to: (1) Analyze characteristics, 
             (2) Plan search strategy, (3) Determine data collection.",
  "next_thought_needed": True,
  "timestamp": "2025-01-15T10:30:00"
}

每个阶段都包含透明的推理过程:

所有思考日志均被存储并包含在最终报告中。

📊 理解结果

{
  "id": "RS-001",
  "rank": 1,
  "lsa_similarity": 0.72,
  "bert_similarity": 0.15,
  "differential_score": 0.57,
  "breakthrough_potential": 9,
  "interpretation": "High LSA, Low BERT (INNOVATION!)"
}

反向冲锋的例子

  • 解释: LSA 0.72
  • 论文采用了72%相似的方法 BERT 0.15
  • 论文相似度仅为15% 差值0.57
  • = 巨大差距 = 强烈的创新信号 潜力9/10

极具潜力的机会

{
  "checks_performed": [
    {
      "check": "patents",
      "patents_found": 2,
      "novelty_score": 8,
      "status": "Clear"
    },
    {
      "check": "startups",
      "companies_found": 1,
      "market_maturity": "Early",
      "competition_level": "Low"
    },
    {
      "check": "citations",
      "recent_papers_found": 5,
      "research_activity": "Low",
      "novelty_indicator": "High novelty"
    }
  ],
  "overall_novelty_score": 9,
  "recommendation": "HIGH PRIORITY - Novel opportunity"
}

验证结果

🐛 故障排除

常见问题

  • “TAVILY_API_KEY 未设置” .env 解决方案:创建

包含您的API密钥的文件

  • “不收集纸质文件”
  • 请检查您的API密钥是否有效
  • 尝试使用更广泛的搜索查询

验证网络连接

  • “BERT 计算非常慢”
  • 对于50多篇论文来说,这是正常的 bert-base-uncased 使用 bert-large-uncased
  • 而不是

如果可用,考虑在GPU上运行

  • “LSA矩阵全为零”
  • 论文可能太短了 max_features 尝试不同的
  • 参数

检查清理过的文件不是空的

  • 性能优化技巧50篇论文
  • 总共约5分钟100篇论文
  • 总共约10分钟500篇论文
  • 总共约60分钟
  • 使用CSV导入进行重复运行

如果重新运行,请缓存LSA/BERT矩阵

🤝 贡献

  1. 欢迎投稿!请:
  2. 为仓库创建分支(或:克隆仓库)
  3. 创建一个特性分支
  4. 做出你的更改
  5. 如适用,请添加测试

提交拉取请求

📄 许可证 MIT 许可证 - 详见 许可证

详情如下

  • 🙏 致谢
  • 基于LSA/BERT双相似性分析的原创研究方法
  • Anthropic的FastMCP框架
  • Tavily搜索API

爱思唯尔Scopus API

📧 联系方式

  • 对于问题、议题或合作事宜: GitHub Issues(问题跟踪系统):
  • github.com/mindrian/reverse-salient-mcp/issues(注:这里的“reverse-saliant-mcp”可能是一个特定项目或库的名称,由于“salient”在中文中通常翻译为“显著的”,但在此上下文中可能是一个技术术语或特定项目名的一部分,因此直接保留原英文形式。同时,“issues”在中文中常翻译为“问题”或“议题”,但在此技术语境下,通常指的是“GitHub”上的“问题”或“讨论”,即用户报告的问题、功能请求等,所以这里也保留“issues”这一英文形式以保持原意。)

电子邮箱:contact@mindrian.com

由Mindrian Labs倾心打造