elemindex について
elemindexは、ホスト型のElements Live MCPサーバーにつなぐローカルブリッジです。化学、材料、物理、文献の調査に使え、データ保存や独自の計算は行いません。
主な機能
- 01質問や論文から文献を検索
- 02元素の研究強度を取得
- 03分野の指標と履歴を確認
- 04元素や分野に関する論文を検索
- 05labツールで論文を絞り込み・順位付け
活用シーン
- 01化学の問いに関する論文を調査
- 02元素の研究強度を確認
- 03分野の指標履歴を確認
- 04ブール条件で論文を抽出
MCP 対応
ローカルMCPサーバーとしてツール呼び出しをElements Liveのホスト型MCPサーバーに転送し、結果を返します。APIキーを任意で転送できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
9掲載時のツール一覧 · 1 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| q | string | いいえ | 平易な言葉で記述した研究上の質問。 |
| page | integer | いいえ | ページ分割された論文結果のページ番号。 |
| paper | string | いいえ | q の代わりに指定します。検索の起点となる DOI またはタイトル。 |
| lenses | array | いいえ | デフォルト:4 つすべて。 |
| page_size | integer | いいえ | レンズごとの論文数。 |
詳細
elemindex
elemindex は、Elements Live のホスト型 MCP サーバーへの軽量なローカルブリッジです。このサーバーは、118 種の化学元素それぞれと、化合物、材料、トピックなどのより広い研究対象について、文献でどの程度注目されているか、またその数値の根拠となる論文を追跡する研究インデックスです。
このブリッジはデータを保持せず、計算も行いません。ライブエンドポイントから取得したままの上流サーバーのツール一覧をローカルで提供し、各ツール呼び出しを上流に転送して、結果を変更せずに返します。上流ツールの一部は無料ですが、ほかのツールは有料アカウントのプランが必要だと上流側で説明されています。この制限は上流側独自のもので、ツールの説明自体に記載されています。このクライアントは制限を追加せず、決済機能も備えていません。オプションで、設定に記載されている認証情報を1つ転送します。それ以外の場合、クライアント独自の認証情報は送信しません。
ツール
research— 文献検索の入り口です。平易な言葉で幅広い質問や具体的な化学、材料、物理に関する質問(q)をするか、既知の論文(paper:DOI またはタイトル)から検索を始められます。文献リストはrelevant、foundational、now、newestの4つの観点で返されます。lensesで観点を指定し、ページ分けにはpageとpage_sizeを使用します。スキーマ上、引数は必須ではありません。get_element_ri— 1つの元素の現在の Research Intensity(RIS)と引用 URL を取得します。必須:symbol—Feのような元素記号のほか、Ironのような元素名や原子番号も使用できます。search_subjects— 自由形式のクエリ(化合物、材料、研究トピック)を、対象ツールで必要となるsubject_type/subject_idのペアに解決します。必須:query。get_subject_ri— 1つの研究トピック、キーワード、または分野の RI、RIS、HRI、論文数を取得します。必須:subject_type(keywordまたはsector)とsubject_id。まずsearch_subjectsで両方を解決してください。get_subject_history— 1つの対象について、RIS/HRI の全履歴を取得します。既定ではyearly単位で、指定すればmonthly単位になります。必須:subject_typeとsubject_id。get_subject_papers— 1つの対象に関する主要論文のタイトル、DOI、掲載誌、出版年、被引用数を取得します。必須:subject_typeとsubject_id。任意:limit(既定値は20、上限は100)とsort(impact、newest、foundational)。get_element_papers— 1つの元素に関する主要論文を取得します。keywordを指定すると、その元素の材料または用途に絞り込めます。必須:symbol。任意:上記と同様のlimitとsort。lab_quote— ブールフィルターを使って複数語の質問を絞り込みます(queryを指定するか、フィルターをフェンス付きブロックに含めたmarkdownを指定します)。一致件数とquote_idを返します。対応していない語句は除外されるため、フィルターを信頼する前にwarningsを確認してください。スキーマ上、引数は必須ではありません。lab_run—lab_quoteの結果から、ランキングされた論文を取得します。必須:quote_id。任意:depth(既定値はpapers_20、またはpapers_100)。
設定
ELEMENTS_LIVE_MCP_URL(任意)— 上流エンドポイントを上書きします。既定値はhttps://www.elements-live.com/mcpです。 (この上書き用フックは、この再構築版独自の再現要素として明記されています。)ELEMENTS_LIVE_API_KEY(任意)— 設定すると、その値がすべての上流リクエストでAuthorization: Bearer <key>として送信されます。未設定の場合、認証ヘッダーは一切送信されません。(この転送機能は、この再構築版独自の再現要素として明記されています。元のキャプチャはキーなしで取得されました。)
転送の仕組み
最初のツール呼び出し時に、クライアントは上流とのストリーミング可能な
HTTP セッションを開きます。JSON-RPC の initialize
リクエスト(protocolVersion 2025-03-26、clientInfo name
elemindex)、続いて notifications/initialized
通知を送信し、その後、呼び出し元の引数を変更せずに含めた
tools/call リクエストを送信します。上流が initialize への応答で
Mcp-Session-Id ヘッダーを返すと、その値はセッションの後続のすべてのリクエストに付与され、プロセスの存続中は同じセッションが再利用されます。
応答は通常の JSON または
サーバー送信イベントとして届く場合があり、どちらも読み取られます。
上流からの成功結果は、上流が設定した isError フラグも含め、そのまま渡されます。
JSON-RPC エラー、2xx 以外のステータス、読み取れない応答、
リクエストを完了できない場合などの失敗は、テキストが elemindex error: で始まる
isError 結果として返されます(この表示は、この再構築版独自のラベル付き表現です)。
CLI
各ツールはサブコマンドとしても実行でき、JSON 引数文字列を 1 つ受け取ります(引数を必要としないツールの場合は省略してください)。
npx @reneturcios/elemindex get_element_ri '{"symbol":"Fe"}'
npx @reneturcios/elemindex search_subjects '{"query":"solid electrolyte"}'
npx @reneturcios/elemindex research
npx @reneturcios/elemindex --version
終了コード:成功時は 0、isError 結果の場合は 1、使用方法に誤りがある場合は 2 です。
MCP サーバー
npx -y @reneturcios/elemindex mcp
MCP クライアントの設定:
{
"mcpServers": {
"elemindex": {
"command": "npx",
"args": ["-y", "@reneturcios/elemindex", "mcp"]
}
}
}
Docker
docker run -i ghcr.io/cloudcorprecords/elemindex
docker run --rm ghcr.io/cloudcorprecords/elemindex --version
コンテナーのデフォルトコマンドは mcp です。そのため、最初の形式は stdio MCP サーバーとして動作し、それ以外の引数は通常どおり CLI に渡されます。
開発
npm install
npm run build
npm test
npm run dev
テストスイートはすべてスタブ化された JSON-RPC 上流を対象に実行され、実際のネットワーク呼び出しは行いません。
ライセンス
MIT — LICENSE を参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。