opentargets について
opentargets は、Open Targets の標的、疾患、薬剤、変異、エビデンスを照会する読み取り専用 MCP サーバーです。名前または ID で検索し、API キーなしで構造化データを取得できます。
主な機能
- 01標的、疾患、薬剤の検索
- 02標的と疾患のエビデンス取得
- 03変異と研究の検索
- 04ドラッグリポジショニング候補の探索
- 05カスタム GraphQL クエリの実行
活用シーン
- 01標的に作用する薬剤の検索
- 02疾患に関連する遺伝子の比較
- 03標的と疾患を結ぶエビデンスの確認
- 04ドラッグリポジショニング候補の特定
MCP 対応
Open Targets Platform を照会する 68 個の読み取り専用ツールを MCP クライアントに公開します。構造化データを返し、利用可能な場合はデータソース ID と PubMed 参照も含みます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
68掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| ensembl_id | string | はい |
詳細
Open Targets MCP サーバー
Open Targets Platformを通じて、ターゲット、疾患、薬剤、遺伝的エビデンスを調べるための読み取り専用 MCP サーバーです。名前または ID を使って、裏付けとなるエビデンスを取得し、ドラッグリポジショニング候補を調べられます。Open Targets の API キーは不要です。
インストール
uvが必要です。
Claude Code
claude mcp add opentargets -- uvx opentargets-mcp
Claude Desktop および Cursor:claude_desktop_config.json(Settings → Developer → Edit Config)または ~/.cursor/mcp.jsonに追加し、再起動してください:
{
"mcpServers": {
"opentargets": {
"command": "uvx",
"args": ["opentargets-mcp"]
}
}
}
VS Code
code --add-mcp '{"name":"opentargets","command":"uvx","args":["opentargets-mcp"]}'
Codex
codex mcp add opentargets -- uvx opentargets-mcp
その他の stdio MCP クライアントでも同様に動作します。コマンドは uvx、引数は opentargets-mcp です。
ヒント:
- クライアントで
spawn uvx ENOENTと表示される場合は、which uvxで確認できるフルパスを使用してください。 - 新しいリリースを取得するには、引数として
opentargets-mcp@latestを使用してください。 - Apple Silicon で
cryptographyのビルドエラーが発生する場合、uv が Intel(Rosetta)版の Python を選択している可能性があります。uv python findで手がかりを確認できますが、キャッシュ済みのツール環境やデスクトップクライアントでは、別のインタープリターが使われる場合があります。
できること
- 「EGFRを標的とする薬剤と、その開発段階を教えてください」
- 「喘息との関連が最も強い遺伝子はどれですか?」
- 「BRAFとメラノーマを結びつけるエビデンスを示してください」
- 「2型糖尿病のドラッグリポジショニング候補を提案してください」
遺伝子シンボル、疾患名や薬剤名、rsID、Ensembl、MONDO、ChEMBL の ID など、名前または ID を使用できます。名前に一致するエンティティが複数ある場合、ツールが候補を一覧表示するので、そこから選択できます。
ツール
68 個のツールがあります。全リストを表示するには uvx opentargets-mcp --list-tools を実行してください。
| 分野 | 例 |
|---|---|
| ターゲット | get_target_info、get_target_known_drugs |
| 疾患 | get_disease_info、get_disease_associated_targets |
| 薬剤 | get_drug_info、get_drug_adverse_events |
| エビデンス | get_target_disease_evidence |
| バリアントと研究 | get_variant_info、get_credible_sets |
| 検索と照会 | search_entities、map_ids |
| ワークフロー | get_drug_repurposing_candidates |
| 生の GraphQL | graphql_query、graphql_schema |
多くのツールは fields(["target.approvedSymbol"]のようなドット区切りのパス)を受け付け、必要な項目だけを返します。用意されたツールで対応できない場合は、graphql_queryを使用してください。
エビデンスの結果には、利用可能な場合、データソース ID と PubMed の文献参照が含まれます。分析で使用した Open Targets API とデータのリリースを記録するには、get_api_metadataを使用してください。clinicalReportCountが数えるのは報告レコードであり、固有の試験数ではありません。すべての報告を取得するには graphql_queryを使用してください。
仕組み
flowchart LR
A(["AI agent<br/>Claude · Codex · VS Code · Cursor"])
subgraph S["opentargets-mcp"]
direction TB
S1["1. Resolve names to IDs"]
S2["2. Run read-only queries"]
S3["3. Return structured JSON"]
S1 --> S2 --> S3
end
subgraph O["Open Targets Platform"]
direction TB
API["GraphQL API"]
DB[("ChEMBL · GWAS Catalog<br/>ClinVar · Europe PMC · more")]
API --- DB
end
A <-->|MCP| S
S <-->|GraphQL| O
classDef client fill:#e8f0fe,stroke:#4285f4,color:#1f2328
classDef step fill:#ffffff,stroke:#34a853,color:#1f2328
classDef data fill:#ffffff,stroke:#f9ab00,color:#1f2328
class A client
class S1,S2,S3 step
class API,DB data
style S fill:#e6f4ea,stroke:#34a853,color:#1f2328
style O fill:#fef7e0,stroke:#f9ab00,color:#1f2328
自然な言葉で質問すると、サーバーが名前を Open Targets の ID に変換し、読み取り専用のクエリを実行して、構造化された結果を返します。API キーは不要です。
設定
デフォルト設定はローカルでの使用に適しています。変更するには、環境変数を設定するか、フラグを渡してください(uvx opentargets-mcp --help)。
| 変数 | フラグ | デフォルト |
|---|---|---|
MCP_TRANSPORT | --transport | stdio(http、sseも指定できます) |
FASTMCP_SERVER_HOST | --host | 0.0.0.0 |
FASTMCP_SERVER_PORT | --port | 8000 |
OPEN_TARGETS_API_URL | --api | https://api.platform.opentargets.org/api/v4/graphql |
OPEN_TARGETS_RATE_LIMIT_RPS | --rate-limit-rps | 0(無効)。受信するMCPリクエストを制限します |
OPEN_TARGETS_RATE_LIMIT_BURST | --rate-limit-burst | 20 |
プロキシの設定はHTTPS_PROXY、HTTP_PROXY、NO_PROXYから読み込まれます。
セルフホスト
ソースから:
git clone https://github.com/nickzren/opentargets-mcp
cd opentargets-mcp
uv run opentargets-mcp
Dockerを使用する場合(ポート8000でHTTP)、クローンしたリポジトリから:
docker compose up -d --build
MCP クライアントをhttp://localhost:8000/mcpに接続します。
開発
uv sync --extra dev
uv run ruff check src tests
uv run pytest -m "not live" # offline
uv run pytest -m live # calls the Open Targets API
サンプルスクリプトはexamples/にあります。
ライセンス
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。