SciX Client
Allows searching for and identifying scholarly papers using arXiv identifiers within the SciX/ADS database.
Enables searching for academic publications and resolving links through Digital Object Identifiers (DOIs).
Supports exporting bibliographic citations in the IEEE format for academic use.
Provides programmatic access to the NASA ADS (Astrophysics Data System) for searching astronomical literature, metrics, and citation data.
Allows users to filter and identify open-access research papers within the search results.
Enables searching for publications and author data using unique ORCID identifiers.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
scix-client
scix-client gives your AI assistant direct access to the SciX / NASA ADS database. Search the literature, build bibliographies, analyze citation networks, manage personal libraries, resolve object names via SIMBAD/NED, and export references in BibTeX, AASTeX, or 15 other formats — all from natural language.
It also works standalone: as a CLI tool, a Python library, or a Rust crate.
Research workflows: literature reviews, bibliography management, citation analysis, reference export, object resolution, paper details, library collaboration, annotation/notes
Mode | What it does | Guide |
MCP server ( | Expose SciX tools to Claude, Cursor, VS Code, Zed, Gemini CLI, Codex CLI, Windsurf | |
CLI ( | Command-line tool for your terminal | |
Python library ( | Native Python module — | |
Rust library ( | Async Rust crate — |
One binary (scix) does everything. Python bindings are auto-generated from the Rust types — zero extra maintenance.
You need a free SciX / ADS API token from https://ui.adsabs.harvard.edu/user/settings/token. Every path below asks for it once and stores it for you.
Claude Desktop: one-click install
Download
scix-vX.Y.Z.mcpbfrom the latest release (macOS universal + Windows in one file).Double-click it (or drag it onto Claude Desktop → Settings → Extensions).
Paste your API token when asked. Done — no terminal, no PATH, no JSON.
Related MCP server: Scopus MCP Server
Everything else: install scix, then scix setup
Pick any one installer:
# 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-binstallThen:
scix setupThe wizard asks for your token (offering to open the token page), validates it, saves it to ~/.config/scix/token, and registers the server with every editor it finds: Claude Code, Claude Desktop, Cursor, Zed, Gemini CLI, Codex CLI, Windsurf. Run it again any time; it is idempotent.
scix setup claude-code— configure only one editorscix setup --yes— non-interactive (usesSCIX_API_TOKEN, configures all detected editors)scix login— just save the token, touch no editor configsscix doctor— check binary, PATH, token, API connectivity, and detected editors
Install badges
After scix login, any MCP host can run plain scix serve with no environment setup:
GUI editors do not see your shell PATH. If a badge-installed server cannot find scix, run scix setup cursor (or whichever editor) once; it writes the absolute path.
No install at all
With uv present, this works as the command in any MCP config:
{ "command": "uvx", "args": ["scix-client", "serve"], "env": { "SCIX_API_TOKEN": "your-token" } }Manual setup
claude mcp add --scope user scix -- scix serve(--scope user makes it available in every project; the default scope is the current directory only.)
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows), using the full path from which scix:
{
"mcpServers": {
"scix": {
"command": "/full/path/to/scix",
"args": ["serve"],
"env": { "SCIX_API_TOKEN": "your-token-here" }
}
}
}See docs/mcp-server.md for Cursor, VS Code, Zed, Gemini CLI, Codex CLI, Windsurf, the full tool reference, and example workflows.
Quick Start: 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"See docs/cli.md for all commands including library permissions, notes, and set operations.
Quick Start: Python
pip install scix-clientimport 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")The wheel also installs the scix command, so pip install scix-client && scix setup is a complete MCP setup. See docs/python.md for the full API reference.
Quick Start: Rust
[dependencies]
scix-client = { version = "0.4", default-features = false } # library only, no CLI depsuse 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(())
}See docs/rust.md for the full API, error handling, and architecture.
Query Syntax Quick Reference
Pattern | Meaning |
| Author search |
| First author only |
| Title words |
| Abstract words |
| Year / year range |
| Bibcode |
| DOI |
| Astronomical object |
| Refereed papers |
| Open access |
Boolean: AND, OR, NOT, parentheses
Functional: citations(bibcode:X), references(bibcode:X), similar(bibcode:X)
Sort: date desc (default), citation_count desc, score desc, read_count desc
See docs/query-syntax.md for the full reference including all 17 export formats.
Token lookup order
scix (and the Python/Rust clients' from_env) look for the API token in this order:
SCIX_API_TOKENenvironment variableADS_API_TOKENenvironment variable~/.config/scix/token(%APPDATA%\scix\tokenon Windows; override the directory withSCIX_CONFIG_DIR), written byscix login/scix setup
Rate Limiting
The SciX API allows 5,000 requests/day and 5 requests/second. scix-client handles rate limiting automatically — a token-bucket rate limiter enforces 5 req/s locally, and API rate-limit headers are respected.
License
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Academic literature search, retrieval, and private library management on top of OpenAlex.
Federated search of books and papers, BibTeX/RIS citations, open-access retrieval and reading.
Search arXiv/Semantic Scholar/OpenAlex + medical evidence (PubMed/Europe PMC) + LaTeX/PDF tools.
Research paper search with real citations and reference formatting for AI assistants
Related MCP Servers
- AlicenseAqualityAmaintenanceProvides seamless access to the NASA Astrophysics Data System (ADS) for searching astronomical papers, tracking citations and metrics, managing paper libraries, and exporting BibTeX references through natural language conversation.119MIT
- AlicenseAqualityFmaintenanceProvides access to the Elsevier Scopus API, enabling AI assistants to search for academic papers, retrieve detailed abstracts, and look up author profiles. It facilitates bibliometric research and scholarly data analysis through natural language commands.588 PyPI50MIT
- AlicenseBqualityAmaintenanceEnables LLMs to search astronomical literature, retrieve paper metadata, analyze citation metrics, and export bibliographic data via the NASA Astrophysics Data System (SciX) API.2352 npm10MIT
- AlicenseAqualityBmaintenanceConnects AI agents to the OpenAlex scholarly database, enabling search and retrieval of works, authors, institutions, and sources via natural language.9MIT