Token导航 LogoToken导航TokenDH.com
Opentargets MCP logo
运维云端stdio官方级别未说明来源级核验

Opentargets MCP

MCP Server

一个模型上下文协议(MCP)服务器,将Open Targets平台的GraphQL API作为一系列工具暴露出来,供Claude Desktop和其他兼容MCP的客户端使用。

工具数

68

提示词数

0

GitHub Stars

17

资源数

0
生物信息学PythonClaudeClaude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

nickzren

提供方

nickzren

最后核验

2026/5/17 20:20

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

uvx --from git+https://github.com/nickzren/opentargets-mcp opentargets-mcp

详细介绍

开放目标MCP服务器

![CI](https://github.com/nickzren/opentargets-mcp/actions/workflows/ci.yml) ![PyPI](https://pypi.org/project/opentargets-mcp/) ![Python](https://www.python.org/) ![MCP Registry](https://registry.modelcontextprotocol.io/v0/servers?search=nickzren/opentargets&version=latest) ![Open Targets](https://platform.opentargets.org/) ![License: MIT](LICENSE)

一个模型上下文协议(MCP)服务器,将开放目标平台GraphQL API公开为一组工具,用于Claude Desktop和其他兼容MCP的客户端。

快速安装

选项1:运行一次 uvx (不安装)

uvx --from git+https://github.com/nickzren/opentargets-mcp opentargets-mcp

选项2:克劳德桌面(MCPM)

# Install mcpm package manager
pip install mcpm

# Install the server
mcpm install opentargets

选项3:本地安装(开发或自主机)

git clone https://github.com/nickzren/opentargets-mcp
cd opentargets-mcp
pip install uv
uv sync

# Run (stdio transport by default)
uv run python -m opentargets_mcp.server

选项4:Docker

git clone https://github.com/nickzren/opentargets-mcp
cd opentargets-mcp

# Build and run with Docker Compose
docker-compose up -d --build

注意:默认传输方式为 http 用于docker部署。

有关详细信息以及如何设置端口和其他环境变量,请参阅下面的配置部分。

Claude桌面手动导入(可选)

mcpm import stdio opentargets \
  --command "$(uv run which python)" \
  --args "-m opentargets_mcp.server --transport stdio"

然后重新启动Claude Desktop以开始使用Open Targets工具。

特性

核心能力

  • 目标分析:按Ensembl ID或符号搜索基因/蛋白质。访问表达数据、遗传约束、途径、蛋白质相互作用、安全性特征和小鼠表型
  • 疾病分析:按EFO ID查询疾病。查找相关靶点、表型(HPO)和研究项目
  • 药物发现:按ChEMBL ID搜索药物。访问安全数据、不良事件、适应症和作用机制
  • 证据挖掘:利用来自多个来源的评分证据探索目标疾病关联
  • 变体分析:查询遗传变异、GWAS可信集和药物基因组学数据
  • 学习探索:通过L2G预测和精细定位位点访问GWAS研究
  • 智能搜索:具有同义词处理、自动补全和ID映射的实体解析
  • 跨实体工作流:多跳工具,将疾病、靶点和药物证据链接起来,以确定优先级
  • 原始GraphQL电动工具:使用结构化状态信封运行单个和批处理原始GraphQL操作

为什么选择此服务器

此实现专为实用的Open Targets工作流而设计:

  • 精心策划的广度65个精选工具加上3个高级GraphQL工具(共68个),涵盖目标、疾病、药物、证据、变体、研究、元数据和跨实体工作流任务。
  • 更安全的自动化:严格的ID解析、类型化参数处理和弹性重试行为。
  • 降低代币开销:可选 fields 核心域工具上的过滤器,只返回您需要的内容。
  • 灵活的电源模式:原始GraphQL工具可用于边缘情况。

数据源

开放目标平台整合了来自22个以上主要数据源的证据:

  • 遗传学:开放靶点遗传学,ClinVar,英国生物库,FinnGen,Gene2Phenotype,孤儿,COSMIC
  • 功能的:CRISPR屏幕、DepMap、GeneBass
  • 药物:ChEMBL、FDA/EMA批准、化学探针
  • 表达:GTEx,人类蛋白图谱,表达图谱
  • 路径:Reactome、Signor、IntAct
  • 文学:欧洲PMC文本挖掘
  • 安全:FAERS,药物基因组学数据
  • 模型:小鼠(MGI、IMPC)表型

建筑

graph LR
    subgraph "Clients"
        A[Claude Desktop]
        B[Python Scripts]
        C[AI Agents]
    end
    
    subgraph "MCP Server"
        D[Open Targets
MCP Server]
        E[Tool Categories
Target • Disease • Drug
Evidence • Search • Variant • Study]
    end
    
    subgraph "Open Targets"
        F[GraphQL API]
        G[22+ Data Sources]
    end
    
    A |MCP Protocol| D
    B |Direct API| D
    C |Function Calls| D
    D |GraphQL| F
    F  G
    
    E --> D
    
    style D fill:#e1f5fe
    style F fill:#fff3e0

MCP服务器充当客户端应用程序和开放目标平台之间的桥梁。它将工具调用转换为GraphQL查询,并提供对来自22个以上集成源的生物医学数据的结构化访问。

先决条件

  • Python 3.10+带pip

用法

独立运行服务器

# Using the convenience script (installs uv if missing, then syncs dependencies)
./run.sh

# Or run directly with uv (stdio transport by default)
uv run python -m opentargets_mcp.server

# Installed entrypoints
opentargets-mcp --help

# Specify transport explicitly
uv run python -m opentargets_mcp.server --transport [stdio|sse|http]

配置

  • 环境变量:运输/捆绑使用 MCP_TRANSPORT, FASTMCP_SERVER_HOST,以及 FASTMCP_SERVER_PORT (默认值: stdio, 0.0.0.0, 8000).API端点使用 OPEN_TARGETS_API_URL (默认值: https://api.platform.opentargets.org/api/v4/graphql).对于仅限本地开发,首选 FASTMCP_SERVER_HOST=127.0.0.1.
  • 已验证的设置:启动时使用类型化的设置模型解析环境配置(src/opentargets_mcp/settings.py),因此无效值会很快失败。
  • 名称解析:严格;未解析的名称会引发明显的错误(使用 search_entities 查找规范ID)。
  • 刀具选择指南:服务器向客户端发送一个简短的策略,以选择精心策划的工具,使用 fields 以修剪输出,并为边缘情况保留原始GraphQL。
  • 分页护栏:工具包装器强制执行 page_index >= 0, page_size >= 1,全球 page_size 提供灵活的传输和端点选择。
  • 详细日志:添加 --verbose 在故障排除时将全局日志级别提升到DEBUG。
  • CLI帮助程序: --list-tools 打印所有已注册的工具,以及 --version 打印包版本。
  • 速率限制: OPEN_TARGETS_RATE_LIMIT_RPSOPEN_TARGETS_RATE_LIMIT_BURST 可以启用全局服务器端速率限制。 --rate-limitingOPEN_TARGETS_RATE_LIMIT_ENABLED=true 也得到了支持。

运输方式

服务器支持由FastMCP支持的多种传输协议:

stdio传输 (默认)

# For Claude Desktop (via mcpm) and local CLI tools
opentargets-mcp --transport stdio

SSE运输

# For web-based MCP clients with Server-Sent Events
opentargets-mcp --transport sse --host 0.0.0.0 --port 8000

HTTP传输

# For streamable HTTP MCP clients
opentargets-mcp --transport http --host 0.0.0.0 --port 8000

与MCP客户端一起使用

  • 克劳德桌面版:使用mcpm安装(stdio)或直接服务器连接(sse)
  • Web MCP客户端:使用带有公共URL的SSE或HTTP传输(需要隧道)
  • 自定义集成:取决于您的客户端实现的任何传输模式

示例脚本

uv run python examples/target_validation_profile.py EGFR
uv run python examples/disease_to_drug.py "schizophrenia"
uv run python examples/drug_safety_profile.py "osimertinib"
uv run python examples/genetic_target_prioritization.py "inflammatory bowel disease"

AI代理示例

ReAct Agent提供了一个交互式终端界面,用于探索开放目标数据:

Open Targets React Agent Demo

# Copy the example .env file and add your OpenAI API key
cp .env.example .env
# Then edit .env and set your OPENAI_API_KEY

# Run agent
uv run python examples/react_agent.py

该代理使用ReAct(推理和代理)模式将复杂的生物医学查询分解为步骤,从而可以轻松探索药物靶点、疾病及其关系。

可用工具

服务器包装 68 操作从 开放目标平台: 65个精选工具3个高级GraphQL工具。每个工具都返回反映Open Targets GraphQL模式的结构化JSON,您可以使用MCP检查完整的机器可读列表 list_tools 请求。

大多数域工具接受规范标识符(例如。, ENSG..., EFO_..., CHEMBL...)或人类可读的名称/符号。提供名称后,服务器会自动将其解析为最匹配的Open Targets ID。 许多核心工具接受可选 fields 列表(点路径)以过滤响应有效载荷。 search_entities 也返回 search.triples 用于紧凑型 {id, entity, name} 消费。 对于边缘情况,更喜欢精心策划的工具+ fields 第一;仅当没有合适的工具时才使用原始GraphQL。

快速启动快捷方式

  • get_target_info –核心靶标身份记录(Ensembl ID、同义词、基因组坐标)
  • get_disease_info –疾病/EFO总结及治疗区域背景
  • get_drug_info –ChEMBL支持的药物概况和机制数据
  • search_entities –具有同义词处理的统一实体搜索
  • get_target_associated_diseases –高置信度目标疾病与分数之间的联系
  • get_disease_associated_targets –EFO疾病的优先目标列表
  • get_target_known_drugs –目标药物的批准和试验药物
  • get_target_disease_evidence –遗传学、表达和文献方面的证据细节
  • get_drug_repurposing_candidates –多跳疾病->靶点->候选药物优先级
  • graphql_batch_query –跨多个变量集运行一个GraphQL查询

按类别列出的完整目录

  • 目标识别与生物学(20种工具)get_target_info, get_target_class, get_target_alternative_genes, get_target_associated_diseases, get_target_known_drugs, get_target_literature_occurrences, get_target_expression, get_target_pathways_and_go_terms, get_target_homologues, get_target_subcellular_locations, get_target_genetic_constraint, get_target_mouse_phenotypes, get_target_hallmarks, get_target_depmap_essentiality, get_target_interactions, get_target_safety_information, get_target_tractability, get_target_chemical_probes, get_target_tep, get_target_prioritization.
  • 疾病分析(8种工具)get_disease_info, get_disease_associated_targets, get_disease_phenotypes, get_disease_otar_projects, get_disease_known_drugs, get_disease_ontology, get_disease_literature_occurrences, get_disease_similar_entities.
  • 药物分析(10种工具)get_drug_info, get_drug_cross_references, get_drug_linked_diseases, get_drug_linked_targets, get_drug_adverse_events, get_drug_pharmacovigilance, get_drug_warnings, get_drug_pharmacogenomics, get_drug_literature_occurrences, get_drug_similar_entities.
  • 证据综合(2个工具)get_target_disease_evidence, get_target_disease_biomarkers.
  • 搜索和发现(4个工具)search_entities, search_suggestions, get_similar_targets, search_facets.
  • 元数据和本体实用程序(5个工具)get_api_metadata, get_association_datasources, get_gene_ontology_terms, get_interaction_resources, map_ids.
  • 工作流工具(1个工具)get_drug_repurposing_candidates.
  • 批量查找(3个工具)get_targets_batch, get_diseases_batch, get_drugs_batch.
  • 变体解释(6种工具)get_variant_info, get_variant_credible_sets, get_variant_pharmacogenomics, get_variant_evidences, get_variant_intervals, get_variant_protein_coordinates.
  • 研究探索(6个工具)get_study_info, get_studies_by_disease, get_study_credible_sets, get_credible_set_by_id, get_credible_set_colocalisation, get_credible_sets.
  • 高级GraphQL(3个工具)graphql_schema, graphql_query, graphql_batch_query.

每个分组都与开放目标文档中描述的数据域(目标、疾病、药物、证据、变体和研究)相匹配。对于高容量工作负载,请遵守开放目标API常见问题解答中的平台节流指南,并在可能的情况下缓存下游。

发展

# Run lint checks (same as CI/release)
uv run ruff check src tests

# Run tests
uv run pytest tests/ -v

# Inspect registered tools from CLI
uv run opentargets-mcp --list-tools

目录标签

目录标签

生物信息学PythonClaude本地部署GraphQLAPI药物发现目标分析疾病分析

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

api-key

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

68

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdioapi-key部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP