ChEMBL MCP サーバー
ChEMBL化学データベースへの高度なアクセスを提供する包括的なモデルコンテキストプロトコル(MCP)サーバー。このサーバーは、AIアシスタントとMCPクライアントがChEMBLのREST APIを介して高度な創薬研究、化学情報科学分析、生物活性調査を直接実行できるようにする22の専用ツールを提供します。
Augmented Natureによって開発
特徴
コア化学物質の検索と取得(5つのツール)
- 化合物検索:化合物名、同義語、または識別子でChEMBLデータベースを検索します
- 詳細な化合物情報: 構造、特性、注釈を含む包括的な化合物情報を取得します。
- InChIベースの検索: InChIキーまたはInChI文字列で化合物を検索
- 構造検索: さまざまな形式 (SMILES、InChI、MOL、SDF) で化学構造情報を取得します。
- 類似検索:谷本類似度を使用して化学的に類似した化合物を検索します
ターゲット分析と創薬(5つのツール)
- ターゲット検索: 名前またはタイプで生物学的ターゲットを検索します
- 詳細なターゲット情報: 包括的なターゲット情報と注釈を取得します
- ターゲット化合物: 特定のターゲットに対して化合物をテストする
- UniProt 統合: UniProt アクセッション番号で ChEMBL ターゲットを検索
- ターゲットパスウェイ:関連する生物学的パスウェイとメカニズム
生体活性とアッセイデータ(5つのツール)
- 活性検索:生物活性の測定値とアッセイ結果を検索
- 詳細なアッセイ情報: 包括的なアッセイプロトコルと条件を入手
- アクティビティタイプ検索: 特定のアクティビティタイプと値の範囲で生物活性データを検索します
- 用量反応分析:用量反応データと活動プロファイルを取得します
- 活性比較: 複数の化合物またはターゲット間の生物活性データを比較します
医薬品開発と臨床データ(4つのツール)
- 医薬品検索:承認薬および臨床候補薬の検索
- 医薬品開発状況:医薬品の開発状況と臨床試験情報を入手します
- 治療適応症:治療適応症と疾患領域の検索
- 作用機序:作用機序と標的相互作用データを取得します
化学特性分析(4つのツール)
- ADMET分析:ADMET特性(吸収、分布、代謝、排泄、毒性)を分析
- 分子記述子:分子記述子と物理化学的性質を計算する
- 溶解度予測:水溶性と透過性の特性を予測します
- 薬物類似性評価:リピンスキーの5つの法則やその他の指標を使用して薬物類似性を評価する
高度な検索と相互参照(4つのツール)
- 部分構造検索: 特定の部分構造を含む化合物を検索
- バッチ処理: 複数の ChEMBL ID を効率的に処理します
- 外部参照: 外部データベース (PubChem、DrugBank、PDB など) へのリンクを取得します。
- 高度な検索: 複数の化学的および生物学的フィルターを使用した複雑なクエリ
リソーステンプレート
- URIテンプレートを介してChEMBLデータに直接アクセスし、シームレスな統合を実現
インストール
前提条件
- Node.js (v16 以上)
- npmまたはyarn
設定
- リポジトリをクローンします。
- 依存関係をインストールします:
- プロジェクトをビルドします。
ドッカー
Dockerイメージの構築
Docker イメージをビルドします。
Dockerで実行する
コンテナを実行します。
MCP クライアント統合の場合、コンテナーを直接使用できます。
使用法
MCPサーバーとして
サーバーは、stdio 経由で通信する MCP サーバーとして実行されるように設計されています。
MCPクライアント構成への追加
サーバーを MCP クライアント構成に追加します (例: Claude Desktop)。
利用可能なツール
1. 検索化合物
名前、同義語、または識別子で化合物を ChEMBL データベースで検索します。
パラメータ:
query
(必須): 検索クエリ(複合名、同義語、または識別子)limit
(オプション): 返される結果の数 (1-1000、デフォルト: 25)offset
(オプション):スキップする結果の数(デフォルト:0)
例:
2. get_compound_info
ChEMBL ID で特定の化合物の詳細情報を取得します。
パラメータ:
chembl_id
(必須): ChEMBL化合物ID (例: CHEMBL25)
例:
3. 検索対象
名前またはタイプで生物学的ターゲットを検索します。
パラメータ:
query
(必須): ターゲット名または検索クエリtarget_type
(オプション): ターゲットタイプフィルター (例: 単一タンパク質、タンパク質複合体)organism
(オプション):生物フィルターlimit
(オプション): 返される結果の数 (1-1000、デフォルト: 25)
例:
4. 検索アクティビティ
生物活性の測定値とアッセイ結果を検索します。
パラメータ:
target_chembl_id
(オプション): ChEMBLターゲットIDフィルターassay_chembl_id
(オプション): ChEMBLアッセイIDフィルターmolecule_chembl_id
(オプション): ChEMBL化合物IDフィルターactivity_type
(オプション):活性タイプ(例:IC50、Ki、EC50)limit
(オプション): 返される結果の数 (1-1000、デフォルト: 25)
例:
5. バッチ複合ルックアップ
複数の ChEMBL ID を効率的に処理します。
パラメータ:
chembl_ids
(必須): ChEMBL化合物IDの配列 (1-50)
例:
リソーステンプレート
サーバーは、URI テンプレートを通じて ChEMBL データへの直接アクセスを提供します。
1. 化合物情報
- URI :
chembl://compound/{chembl_id}
- 説明: ChEMBL IDの完全な化合物情報
- 例:
chembl://compound/CHEMBL25
2. ターゲット情報
- URI :
chembl://target/{chembl_id}
- 説明: ChEMBLターゲットIDの完全なターゲット情報
- 例:
chembl://target/CHEMBL2095173
3. アッセイ情報
- URI :
chembl://assay/{chembl_id}
- 説明: ChEMBL アッセイ ID の完全なアッセイ情報
- 例:
chembl://assay/CHEMBL1217643
4. 活動情報
- URI :
chembl://activity/{activity_id}
- 説明: アクティビティIDの生体活性測定データ
- 例:
chembl://activity/12345678
5. 検索結果
- URI :
chembl://search/{query}
- 説明: クエリに一致する化合物の検索結果
- 例:
chembl://search/aspirin
例
基本的な化合物検索
アスピリン関連化合物を検索:
詳細な化合物情報を取得する
アスピリンに関する包括的な情報を取得します。
ターゲットベースの検索
ドーパミン受容体に対してテストされた化合物を検索します。
生体活性分析
特定のターゲットに対する IC50 データを検索します。
バッチ処理
複数の化合物を効率的に処理します。
API統合
このサーバーはChEMBL REST APIと統合されており、プログラムによる化学データへのアクセスを可能にします。ChEMBLの詳細については、以下をご覧ください。
- ChEMBL ウェブサイト: https://www.ebi.ac.uk/chembl/
- API ドキュメント: https://chembl.gitbook.io/chembl-interface-documentation/web-services
- REST API ガイド: https://www.ebi.ac.uk/chembl/api/data/docs
すべての API リクエストには以下が含まれます。
- ユーザーエージェント:
ChEMBL-MCP-Server/1.0.0
- タイムアウト:30秒
- ベース URL :
https://www.ebi.ac.uk/chembl/api/data
エラー処理
サーバーには包括的なエラー処理が含まれています。
- 入力検証: すべてのパラメータは型ガードを使用して検証されます
- APIエラー: ネットワークおよびAPIエラーがキャッチされ、説明メッセージとともに返されます
- タイムアウト処理: 30秒後にリクエストがタイムアウトします
- グレースフルデグラデーション: 部分的な障害は適切に処理されます
発達
プロジェクトを構築する
開発モード
TypeScript コンパイラをウォッチモードで実行します。
プロジェクト構造
依存関係
- @modelcontextprotocol/sdk : サーバー実装用のコア MCP SDK
- axios : ChEMBL APIリクエスト用のHTTPクライアント
- typescript : 開発用の TypeScript コンパイラ
ライセンス
MITライセンス
貢献
- リポジトリをフォークする
- 機能ブランチを作成する
- 変更を加える
- 該当する場合はテストを追加する
- プルリクエストを送信する
サポート
問題や質問については:
- ChEMBL APIドキュメントを確認する
- モデルコンテキストプロトコル仕様を確認する
- リポジトリで問題を開く
拡張自然について
この包括的なChEMBL MCPサーバーは、AIを活用したバイオインフォマティクスおよび計算化学ソリューションのリーディングイノベーターである**Augmented Nature**によって開発されました。Augmented Natureは、人工知能と化学研究のギャップを埋める高度なツールの開発を専門としており、研究者が化学および生物学データからより深い洞察を引き出すことを可能にします。
完全なツールリファレンス
コア化学物質検索・取得ツール
search_compounds
- 名前、同義語、または識別子で ChEMBL データベースを検索しますget_compound_info
- ChEMBL IDで詳細な化合物情報を取得しますsearch_by_inchi
- InChIキーまたはInChI文字列で化合物を検索get_compound_structure
- さまざまな形式で化学構造を取得しますsearch_similar_compounds
- 谷本類似度を使用して化学的に類似した化合物を検索する
ターゲット分析と創薬ツール
search_targets
- 名前またはタイプで生物学的ターゲットを検索しますget_target_info
- ChEMBLターゲットIDで詳細なターゲット情報を取得するget_target_compounds
- 特定のターゲットに対してテストされた化合物を取得するsearch_by_uniprot
- UniProt アクセッション番号で ChEMBL ターゲットを検索get_target_pathways
- ターゲットに関連付けられた生物学的経路を取得する
生体活性およびアッセイデータツール
search_activities
- 生物活性の測定値とアッセイ結果を検索get_assay_info
- ChEMBL アッセイ ID で詳細なアッセイ情報を取得しますsearch_by_activity_type
- アクティビティの種類と値の範囲で生物活性データを検索しますget_dose_response
- 用量反応データと活動プロファイルを取得するcompare_activities
- 複数の化合物の生物活性データを比較する
医薬品開発と臨床データツール
search_drugs
- 承認された医薬品と臨床候補薬を検索get_drug_info
- 医薬品の開発状況と臨床試験情報を取得するsearch_drug_indications
- 治療適応症と疾患領域の検索get_mechanism_of_action
- 作用機序とターゲット相互作用データを取得する
化学特性分析ツール
analyze_admet_properties
- ADMET プロパティを分析するcalculate_descriptors
- 分子記述子と物理化学的性質を計算するpredict_solubility
- 水溶解度と透過性特性を予測するassess_drug_likeness
- Lipinski Rule of Five を用いて薬物類似性を評価する
高度な検索と相互参照ツール
substructure_search
- 特定の部分構造を含む化合物を検索するbatch_compound_lookup
- 複数の ChEMBL ID を効率的に処理するget_external_references
- 外部データベースへのリンクを取得するadvanced_search
- 複数の化学的および生物学的フィルターを使用した複雑なクエリ
変更履歴
v1.0.0 - 初回リリース
- 包括的な化学情報:創薬のための27の専門ツール
- コア機能:化合物検索、ターゲット分析、生物活性データ
- 高度な機能: 類似検索、バッチ処理、相互参照
- リソーステンプレート: ChEMBLデータへのURIベースの直接アクセス
- Docker サポート: セキュリティのベストプラクティスに基づいたコンテナ化されたデプロイメント
- プロフェッショナルドキュメント: 完全なツールリファレンスと例
- Augmented Natureによって開発:プロフェッショナルな化学情報プラットフォーム
Related MCP Servers
- PythonMIT License
- AsecurityAlicenseAqualityAlchemy MCP ServerLast updated -93,42253TypeScriptMIT License
- PythonMIT License
- JavaScriptMIT License