🚀 非公式SureChEMBL MCPサーバー
このサーバーは、SureChEMBL化学特許データベースにアクセスするための包括的なモデルコンテキストプロトコル(MCP)サーバーです。特許検索、化学物質の発見、構造解析、および特許知的研究のためのツールを提供します。
開発元: Augmented Nature
🚀 クイックスタート
SureChEMBLは、化学構造とそれに関連する特許文書にアクセスできる大規模な化学特許データベースです。このMCPサーバーを使用すると、SureChEMBLのAPIとシームレスに統合でき、以下の強力なツールが利用できます。
- 特許知的: 化学特許の検索と分析
- 化学物質の発見: 化合物とその特許の網羅範囲を見つける
- 先行技術調査: 既存の化学物質の開示を特定する
- 競争分析: 企業による化学物質の開発を追跡する
- 構造活性分析: 化学構造と特許請求項を関連付ける
✨ 主な機能
🔍 文書と特許の検索 (4つのツール)
search_patents - テキスト、キーワード、または識別子で特許を検索します。
get_document_content - 化学注釈付きの完全な特許文書の内容を取得します。
get_patent_family - 特許ファミリーのメンバーと関係を取得します。
search_by_patent_number - 特定の特許番号で検索します。
🧪 化学物質の検索と取得 (4つのツール)
search_chemicals_by_name - 名称または同義語で化学物質を検索します。
get_chemical_by_id - SureChEMBL IDで詳細な化学物質情報を取得します。
search_by_smiles - SMILES構造表記で化学物質を検索します。
search_by_inchi - InChI/InChIキーで化学物質を検索します。
🖼️ 構造と可視化 (2つのツール)
get_chemical_image - 化学構造画像を生成します。
get_chemical_properties - 分子特性と記述子を取得します。
📊 データエクスポートと分析 (2つのツール)
export_chemicals - 化学データを一括エクスポートします(CSV/XML)。
analyze_patent_chemistry - 特許内の化学物質の内容を分析します。
🔬 高度な分析ツール (3つのツール)
get_chemical_frequency - 特許データベース全体の化学物質の頻度統計を取得します。
search_similar_structures - 類似性検索を使用して構造的に類似した化学物質を見つけます。
get_patent_statistics - 特許内の化学物質の内容の統計概要を取得します。
📚 リソーステンプレート
surechembl://document/{doc_id} - 特許文書の内容
surechembl://chemical/{chem_id} - 化学化合物データ
surechembl://family/{patent_id} - 特許ファミリー情報
surechembl://search/{query} - 検索結果
📦 インストール
前提条件
依存関係のインストール
npm install
サーバーのビルド
npm run build
開発モード
npm run watch
💻 使用例
サーバーの起動
npm start
Claude Desktopでの使用
Claude Desktopの設定ファイルに追加します。
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"surechembl-server": {
"command": "node",
"args": ["/path/to/surechembl-server/build/index.js"]
}
}
}
MCPインスペクターでの使用
npm run inspector
基本的な使用法
await use_mcp_tool({
server_name: "surechembl-server",
tool_name: "search_chemicals_by_name",
arguments: {
name: "aspirin",
limit: 10,
},
});
高度な使用法
await use_mcp_tool({
server_name: "surechembl-server",
tool_name: "get_document_content",
arguments: {
document_id: "WO-2020096695-A1",
},
});
await use_mcp_tool({
server_name: "surechembl-server",
tool_name: "get_chemical_image",
arguments: {
structure: "CC(=O)OC1=CC=CC=C1C(=O)O",
width: 300,
height: 200,
},
});
await use_mcp_tool({
server_name: "surechembl-server",
tool_name: "analyze_patent_chemistry",
arguments: {
document_id: "US-2021123456-A1",
},
});
📚 ドキュメント
文書と特許の検索
search_patents
テキスト、キーワード、または識別子で特許を検索します。
パラメーター:
query (文字列、必須): 検索クエリ
limit (数値、オプション): 結果の制限 (1 - 1000、デフォルト: 25)
offset (数値、オプション): 結果のオフセット (デフォルト: 0)
get_document_content
化学注釈付きの完全な特許文書の内容を取得します。
パラメーター:
document_id (文字列、必須): 特許文書ID (例: WO-2020096695-A1)
get_patent_family
特許ファミリーのメンバーと関係を取得します。
パラメーター:
patent_id (文字列、必須): ファミリーメンバーを見つける特許ID
search_by_patent_number
特定の特許番号で特許を検索します。
パラメーター:
patent_number (文字列、必須): 特許または公開番号
化学物質の検索と取得
search_chemicals_by_name
名称、同義語、または一般名で化学物質を検索します。
パラメーター:
name (文字列、必須): 化学物質の名称または同義語
limit (数値、オプション): 結果の制限 (1 - 1000、デフォルト: 25)
get_chemical_by_id
SureChEMBL化学IDで詳細な化学物質情報を取得します。
パラメーター:
chemical_id (文字列、必須): SureChEMBL化学ID (数値)
search_by_smiles
SMILES構造表記で化学物質を検索します。
パラメーター:
smiles (文字列、必須): SMILES文字列
limit (数値、オプション): 結果の制限 (1 - 1000、デフォルト: 25)
search_by_inchi
InChIまたはInChIキーで化学物質を検索します。
パラメーター:
inchi (文字列、必須): InChI文字列またはInChIキー
limit (数値、オプション): 結果の制限 (1 - 1000、デフォルト: 25)
構造と可視化
get_chemical_image
SMILESまたは他の構造表記から化学構造画像を生成します。
パラメーター:
structure (文字列、必須): SMILES文字列または構造表記
height (数値、オプション): 画像の高さ(ピクセル) (デフォルト: 200)
width (数値、オプション): 画像の幅(ピクセル) (デフォルト: 200)
get_chemical_properties
化学物質の分子特性と記述子を取得します。
パラメーター:
chemical_id (文字列、必須): SureChEMBL化学ID
データエクスポートと分析
export_chemicals
化学データをCSVまたはXML形式で一括エクスポートします。
パラメーター:
chemical_ids (配列、必須): SureChEMBL化学IDの配列 (1 - 100)
output_type (文字列、オプション): エクスポート形式 - 'csv'または 'xml' (デフォルト: csv)
kind (文字列、オプション): IDのタイプ - 'cid'または 'smiles' (デフォルト: cid)
analyze_patent_chemistry
特許文書内の化学物質の内容と注釈を分析します。
パラメーター:
document_id (文字列、必須): 分析する特許文書ID
高度な分析ツール
get_chemical_frequency
特許データベース全体の化学物質の頻度統計を取得します。
パラメーター:
chemical_id (文字列、必須): SureChEMBL化学ID
search_similar_structures
類似性検索を使用して構造的に類似した化学物質を見つけます。
パラメーター:
reference_id (文字列、必須): 類似性検索の参照化学ID
threshold (数値、オプション): 類似性の閾値 (0.0 - 1.0、デフォルト: 0.7)
limit (数値、オプション): 返す結果の数 (1 - 100、デフォルト: 25)
get_patent_statistics
特許内の化学物質の内容の統計概要を取得します。
パラメーター:
document_id (文字列、必須): 統計用の特許文書ID
include_annotations (ブール値、オプション): 詳細な注釈統計を含める (デフォルト: true)
文書リソース
surechembl://document/{doc_id}
化学注釈付きの完全な特許文書の内容にアクセスします。
化学物質リソース
surechembl://chemical/{chem_id}
化学化合物の情報と特性にアクセスします。
特許ファミリーリソース
surechembl://family/{patent_id}
特許ファミリーのメンバーと関係にアクセスします。
検索リソース
surechembl://search/{query}
クエリの化学物質検索結果にアクセスします。
🔧 技術詳細
エラーハンドリング
サーバーには、以下の包括的なエラーハンドリングが含まれています。
- 無効なAPIパラメーター
- ネットワークタイムアウトと接続問題
- APIのレート制限
- 不正な化学構造
- 欠落している文書または化学物質
すべてのエラーは、説明的なメッセージと適切なエラーコードで返されます。
レート制限
サーバーはSureChEMBLのAPIレート制限を尊重します。
- 複雑なリクエストには30秒のタイムアウト
- 礼儀正しいリクエスト間隔
- 一時的な障害に対する自動リトライロジック
開発
プロジェクト構造
surechembl-server/
├── src/
│ └── index.ts # メインサーバーの実装
├── build/ # コンパイルされたJavaScript
├── package.json # 依存関係とスクリプト
├── tsconfig.json # TypeScriptの設定
└── README.md # このファイル
利用可能なスクリプト
npm run build - TypeScriptをJavaScriptにコンパイルする
npm run watch - 開発用のウォッチモード
npm run inspector - MCPインスペクターを実行する
npm start - サーバーを起動する
npm run dev - ウォッチ機能付きの開発モード
コントリビュート方法
- リポジトリをフォークする
- 機能ブランチを作成する
- 変更を加える
- 適用可能な場合はテストを追加する
- プルリクエストを送信する
📄 ライセンス
MITライセンス - 詳細についてはLICENSEファイルを参照してください。
サポート
問題や質問については、以下を参照してください。
関連プロジェクト
引用
このプロジェクトを研究や出版物で使用する場合は、以下のように引用してください。
@misc{surechemblmcp2025,
author = {Moudather Chelbi},
title = {SureChEMBL MCP Server},
year = {2025},
howpublished = {https://github.com/Augmented-Nature/SureChEMBL-MCP-Server},
note = {Accessed: 2025-06-29}
}
SureChEMBL MCP Server - モデルコンテキストプロトコルを通じて化学特許知的を強化します。