scitex.ai · Read the Docs · pip install scitex
Four Freedoms for Research
- The freedom to run your research anywhere — your machine, your terms.
- The freedom to study how every step works — from raw data to final manuscript.
- The freedom to redistribute your workflows, not just your papers.
- The freedom to modify any module and share improvements with the community.
AGPL-3.0 — because research infrastructure deserves the same freedoms as the software it runs on.
40 min, zero human intervention — AI agent conducts full research pipeline:
Literature search → Data analysis → Statistics → Figures → 21-page manuscript → Peer review simulation
uv pip install scitex # Core (minimal)
uv pip install scitex[plt,stats,scholar] # Typical research setup
uv pip install scitex[all] # Recommended: Full installationModular environment configuration via .env.d/:
Details
# 1. Copy examples
cp -r .env.d.examples .env.d
# 2. Edit with your credentials
$EDITOR .env.d/
# 3. Source in shell (~/.bashrc or ~/.zshrc)
source /path/to/.env.d/entry.srcStructure:
.env.d/
├── entry.src # Single entry point
├── 00_scitex.env # Base settings (SCITEX_DIR)
├── 00_crossref-local.env # CrossRef database
├── 00_figrecipe.env # Plotting config
├── 01_scholar.env # OpenAthens, API keys
├── 01_audio.env # TTS backends
└── ... # Per-module configs
🐍 Python API for Humans and AI Agents
@stx.session — Reproducible Experiment Tracking
import scitex as stx
@stx.session
def main(filename="demo.jpg"):
fig, ax = stx.plt.subplots()
ax.plot_line(t, signal)
ax.set_xyt("Time (s)", "Amplitude", "Title")
stx.io.save(fig, filename)
return 0Output:
script_out/FINISHED_SUCCESS/2025-01-08_12-30-00_AbC1/
├── demo.jpg # Figure with embedded metadata
├── demo.csv # Auto-exported plot data
├── CONFIGS/CONFIG.yaml # Reproducible parameters
└── logs/{stdout,stderr}.log # Execution logs
stx.io — Universal File I/O (30+ formats)
stx.io.save(df, "output.csv")
stx.io.save(fig, "output.jpg")
df = stx.io.load("output.csv")stx.stats — Publication-Ready Statistics (23 tests)
result = stx.stats.test_ttest_ind(group1, group2, return_as="dataframe")
# Includes: p-value, effect size, CI, normality check, power🖥️ CLI Commands for Humans and AI Agents
scitex --help-recursive # Show all commands
scitex scholar fetch "10.1038/..." # Download paper by DOI
scitex scholar bibtex refs.bib # Enrich BibTeX
scitex stats recommend # Suggest statistical tests
scitex audio speak "Done" # Text-to-speech
scitex capture snap # Screenshot
# List available APIs and tools
scitex list-python-apis # List all Python APIs (210 items)
scitex mcp list-tools # List all MCP tools (120+ tools)
scitex introspect api scitex.stats # List APIs for specific module🔧 MCP Tools — 120+ tools for AI Agents
Turn AI agents into autonomous scientific researchers.
Typical workflow: Scholar (find papers) → Stats (analyze) → Plt (visualize) → Writer (manuscript) → Capture (verify)
| Category | Tools | Description |
|---|---|---|
| writer | 28 | LaTeX manuscript compilation |
| scholar | 23 | PDF download, metadata enrichment |
| capture | 12 | Screen monitoring and capture |
| introspect | 12 | Python code introspection |
| audio | 10 | Text-to-speech, audio playback |
| stats | 10 | Automated statistical testing |
| plt | 9 | Matplotlib figure creation |
| diagram | 9 | Mermaid and Graphviz diagrams |
| dataset | 8 | Scientific dataset access |
| social | 7 | Social media posting |
| canvas | 7 | Scientific figure canvas |
| template | 6 | Project scaffolding |
| verify | 6 | Reproducibility verification |
| dev | 6 | Ecosystem version management |
| ui | 5 | Notifications |
| linter | 3 | Code pattern checking |
Claude Desktop (~/.config/claude/claude_desktop_config.json):
{
"mcpServers": {
"scitex": {
"command": "scitex",
"args": ["mcp", "start"],
"env": {
"SCITEX_ENV_SRC": "${SCITEX_ENV_SRC}"
}
}
}
}SciTeX integrates several standalone packages that can be used independently:
Details
| Package | scitex Module | Description |
|---|---|---|
| figrecipe | scitex.plt |
Publication-ready matplotlib figures |
| crossref-local | scitex.scholar.crossref_scitex |
Local CrossRef database (167M+ papers) |
| openalex-local | scitex.scholar.openalex_scitex |
Local OpenAlex database (250M+ papers) |
| socialia | scitex.social |
Social media posting (Twitter, LinkedIn) |
| scitex-writer | scitex.writer |
LaTeX manuscript compilation |
| scitex-dataset | scitex.dataset |
Scientific dataset access |
Each package works standalone or as part of scitex:
pip install figrecipe # Use independently
pip install scitex[plt] # Or via scitex- Read the Docs: Complete API reference
- Examples: Usage examples and demonstrations
We welcome contributions! See CONTRIBUTING.md.
