課題別チュートリアル

ローカルMCPでSMILESを正規化して記録する

1つのSMILESをローカルMCPプロセスへ渡し、chematicが返す正規化表現を元の入力と一緒に残します。

作るもの

入力SMILESとchematicが返す正規化形式を含む、バージョン付きのローカル記録。

手順

  1. ソースcheckoutからローカルMCPサーバーを起動します。
  2. 下のcanonical_smiles JSON-RPC要求を送ります。
  3. 記録を比べる前に、入力、返ったcanonicalフィールド、chematicのバージョンを一緒に保存します。
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":"canonical_smiles","arguments":{"smiles":"C1=CC=CC=C1"}}}' \
  | cargo run -p chematic-mcp --release --quiet

期待する結果

応答には、有効なSMILES表現を持つcanonicalフィールドが入ります。確認したC1=CC=CC=C1の例では、分子をネットワークへ送らずにcanonical文字列が返ります。

うまくいかないとき

正規化SMILESは特定のライブラリとバージョンによる表現であり、普遍的な化学識別子や2つの記録が同一である証明ではありません。立体情報、塩、元の入力を残し、異なるツールやリリースの文字列を検証なしに比較しないでください。

次の行動

ローカルMCP連携の案内を読む