SciX / NASA ADS について
scix-clientは、天文学や物理学の研究者向けにSciX / NASA ADSの文献ツールを提供します。MCP、コマンドライン、Python、Rustに対応し、検索、引用分析、ライブラリ管理、天体名解決、文献出力を行えます。
主な機能
- 01論文検索と詳細情報の取得
- 02引用と参考文献の分析
- 03ライブラリ、権限、メモの管理
- 04SIMBAD/NEDによる天体名解決
- 0517形式での文献出力
活用シーン
- 01文献レビュー用の書誌情報を作成
- 02引用と関連論文をたどる
- 03個人研究ライブラリを整理
- 04論文原稿用の参考文献を出力
MCP 対応
`scix serve`コマンドは文献検索、書誌情報、引用、ライブラリ、天体名解決のワークフローに使うSciXツールをMCPクライアントに公開します。`scix setup`で検出されたエディターにサーバーを登録できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
12掲載時のツール一覧 · 6 日前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| rows | integer | いいえ | 結果の最大数(デフォルトは 10) |
| sort | string | いいえ | 並べ替え順(例:'date desc'、'citation_count desc') |
| query | string | はい | ADS クエリ文字列(例:'author:"Einstein" year:1905') |
| start | integer | いいえ | ページネーションの開始インデックス(デフォルトは 0) |
| fields | string | いいえ | 返すフィールドをカンマ区切りで指定します。 |
詳細
scix-client
scix-client を使うと、AI アシスタントから SciX/NASA ADS データベースに直接アクセスできます。自然言語で文献を検索し、参考文献リストを作成し、引用ネットワークを分析し、個人ライブラリを管理し、SIMBAD/NED で天体名を解決し、BibTeX、AASTeX、その他 15 種類の形式で参考文献をエクスポートできます。
単体でも使用できます。CLI ツール、Python ライブラリ、Rust クレートとして利用できます。
研究ワークフロー: 文献レビュー、参考文献管理、引用分析、参考文献のエクスポート、天体名の解決、論文の詳細情報、ライブラリの共同作業、注釈/メモ
| モード | 機能 | ガイド |
|---|---|---|
MCP サーバー(scix serve) | SciX ツールを Claude、Cursor、VS Code、Zed、Gemini CLI、Codex CLI、Windsurf に公開します | docs/mcp-server.md |
CLI(scix) | ターミナルで使うコマンドラインツールです | docs/cli.md |
Python ライブラリ(scix_client) | ネイティブ Python モジュールです — pip install scix-client | docs/python.md |
Rust ライブラリ(scix_client) | 非同期 Rust クレートです — cargo add scix-client | docs/rust.md |
1 つのバイナリ(scix)ですべてを実行できます。Python バインディングは Rust の型から自動生成されるため、追加のメンテナンスは不要です。
https://ui.adsabs.harvard.edu/user/settings/token から無料の SciX/ADS API トークンを取得してください。以下のどの方法でも、トークンを一度入力すれば保存されます。
Claude Desktop:ワンクリックでインストール
- 最新リリースから
scix-vX.Y.Z.mcpbをダウンロードします(macOS ユニバーサル版と Windows 版が 1 つのファイルに含まれています)。 - ダブルクリックするか、Claude Desktop → Settings → Extensions にドラッグします。
- 求められたら API トークンを貼り付けます。これで完了です。ターミナルも、PATH の設定も、JSON も必要ありません。
それ以外の場合:scix をインストールしてから scix setup を実行
インストーラーを 1 つ選びます。
# One-line installer (prebuilt binary, no Rust toolchain)
curl -sSf https://raw.githubusercontent.com/yipihey/scix-client/main/install.sh | sh
# Python (also gives you the scix_client module)
pip install scix-client # or: pipx install scix-client / uv tool install scix-client
# Rust
cargo install scix-client # compiles locally
cargo binstall scix-client # prebuilt binary via cargo-binstall
次に、以下を実行します。
scix setup
ウィザードでトークンを入力すると(トークンのページを開くよう提案されます)、検証後に ~/.config/scix/token に保存され、検出されたすべてのエディター(Claude Code、Claude Desktop、Cursor、Zed、Gemini CLI、Codex CLI、Windsurf)にサーバーが登録されます。いつでも再実行でき、何度実行しても安全です。
scix setup claude-code— 1 つのエディターのみを設定しますscix setup --yes— 非対話型で実行します(SCIX_API_TOKENを使用し、検出されたすべてのエディターを設定します)scix login— トークンのみを保存し、エディターの設定には触れませんscix doctor— バイナリ、PATH、トークン、API 接続、および検出されたエディターを確認します
インストールバッジ
scix login の実行後は、どの MCP ホストでも環境設定なしで scix serve を実行できます。
GUI エディターからはシェルの PATH が見えません。バッジからインストールしたサーバーが scix を見つけられない場合は、scix setup cursor(または使用するエディター名)を一度実行してください。絶対パスが書き込まれます。
インストール不要で使う
uv があれば、任意の MCP 設定で次のコマンドを使用できます。
{ "command": "uvx", "args": ["scix-client", "serve"], "env": { "SCIX_API_TOKEN": "your-token" } }
手動設定
Claude Code
claude mcp add --scope user scix -- scix serve
(--scope user を指定するとすべてのプロジェクトで使用できます。デフォルトのスコープでは、現在のディレクトリのみで使用できます。)
Claude Desktop(手動設定。.mcpb を使わない場合)
which scix で確認したフルパスを使用して、~/Library/Application Support/Claude/claude_desktop_config.json(macOS)または %APPDATA%\Claude\claude_desktop_config.json(Windows)に追加します。
{
"mcpServers": {
"scix": {
"command": "/full/path/to/scix",
"args": ["serve"],
"env": { "SCIX_API_TOKEN": "your-token-here" }
}
}
}
Cursor、VS Code、Zed、Gemini CLI、Codex CLI、Windsurf の設定、ツールの完全なリファレンス、およびワークフローの例については、docs/mcp-server.md を参照してください。
クイックスタート:CLI
scix search 'first_author:"Perlmutter" supernova' --sort "citation_count desc"
scix export 1999ApJ...517..565P --format bibtex
scix cites 1999ApJ...517..565P --rows 50
scix libraries create "Thesis Papers" --description "Key references"
ライブラリの権限、ノート、セット操作を含むすべてのコマンドについては、docs/cli.md を参照してください。
クイックスタート:Python
pip install scix-client
import scix_client
client = scix_client.SciXClient() # token from SCIX_API_TOKEN or ~/.config/scix/token
results = client.search('author:"Einstein" year:1905', rows=5)
for paper in results.papers:
print(f"{paper.title} ({paper.year}) — {paper.citation_count} citations")
このホイールをインストールすると scix コマンドもインストールされるため、pip install scix-client && scix setup だけで MCP のセットアップが完了します。API リファレンス全体については、docs/python.md を参照してください。
クイックスタート:Rust
[dependencies]
scix-client = { version = "0.4", default-features = false } # library only, no CLI deps
use scix_client::SciXClient;
#[tokio::main]
async fn main() -> scix_client::error::Result<()> {
let client = SciXClient::from_env()?;
let results = client.search("author:\"Einstein\" year:1905", 5).await?;
for paper in &results.papers {
println!("{} — {} citations", paper.title, paper.citation_count.unwrap_or(0));
}
Ok(())
}
API 全体、エラー処理、アーキテクチャについては、docs/rust.md を参照してください。
クエリ構文クイックリファレンス
| パターン | 意味 |
|---|---|
author:"Einstein" | 著者検索 |
first_author:"Einstein" | 筆頭著者のみ |
title:"dark matter" | タイトルの語句 |
abs:"gravitational waves" | 抄録の語句 |
year:2023 or year:[2020 TO 2023] | 年/年の範囲 |
bibcode:2023ApJ... | Bibcode |
doi:"10.1234/..." | DOI |
object:"M31" | 天体 |
property:refereed | 査読済み論文 |
property:openaccess | オープンアクセス |
ブール演算子: AND、OR、NOT、括弧
関数: citations(bibcode:X)、references(bibcode:X)、similar(bibcode:X)
並べ替え: date desc(デフォルト)、citation_count desc、score desc、read_count desc
17 種類すべてのエクスポート形式を含む完全なリファレンスについては、docs/query-syntax.md を参照してください。
トークンの検索順序
scix(および Python/Rust クライアントの from_env)は、次の順序で API トークンを探します。
SCIX_API_TOKEN環境変数ADS_API_TOKEN環境変数~/.config/scix/token(Windows では%APPDATA%\scix\token。SCIX_CONFIG_DIRでディレクトリを変更できます)。scix login/scix setupによって書き込まれます。
レート制限
SciX API では、1 日あたり 5,000 件、1 秒あたり 5 件のリクエストが許可されています。scix-client はレート制限を自動的に処理します。トークンバケット方式のレートリミッターによってローカルで 1 秒あたり 5 件に制限され、API のレート制限ヘッダーも尊重されます。
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。