課題別チュートリアル
ローカルMCPで化学名からSMILESを取得する
ローカルMCPプロセスから化学名を1つPubChemへ送り、返った異性体SMILESを出典と一緒に残します。
作るもの
ローカル構造解析の前に、アスピリンのPubChem由来SMILES取得記録を残すこと。
手順
- ソースcheckoutからローカルMCPサーバーを起動します。
- 下のレガシーJSON-RPC要求で化学名を送ります。
- 出典とSMILESを確認し、その正確な文字列をローカルの解析または物性ツールへ渡します。
git clone https://github.com/kent-tokyo/chematic.git
cd chematic
printf '%s\n' \
'{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{}}}' \
'{"jsonrpc":"2.0","method":"notifications/initialized","params":{}}' \
'{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"name_to_smiles","arguments":{"name":"aspirin"}}}' \
| cargo run -p chematic-mcp --release --quiet期待する結果
応答には入力名、出典としてのPubChem、アスピリンではCC(=O)OC1=CC=CC=C1C(=O)Oが含まれます。
うまくいかないとき
name_to_smilesは、20個のMCPツールのうちネットワーク通信を行う唯一のツールです。化学名はPubChemへ送られ、要求には10秒のタイムアウトがあります。返ったSMILESは検索結果であり、同定・安全性・入手可能性・実験的妥当性の証明ではありません。