Skip to main content

ChatSpatial: Natural language-driven spatial transcriptomics analysis via Model Context Protocol (MCP) integration

Project description

ChatSpatial

MCP server for spatial transcriptomics analysis via natural language

Paper MLGenX @ ICLR 2026 ENAR 2026 IBC 2026 CI PyPI Python 3.11-3.13 License: MIT Docs

ChatSpatial Overview

ChatSpatial replaces ad-hoc LLM code generation with schema-enforced orchestration. Instead of generating arbitrary scripts, the LLM selects tools and parameters from a curated registry, making spatial transcriptomics workflows more reproducible across sessions and clients.

It exposes 60+ spatial transcriptomics methods as MCP tools, so any MCP-compatible client can analyze data through natural language.


Start Here

  1. Install ChatSpatialInstallation Guide
  2. Configure your MCP clientConfiguration Guide
  3. Run your first analysisQuick Start

Minimal example prompt:

Load /absolute/path/to/spatial_data.h5ad and show me the tissue structure

ChatSpatial works with any MCP-compatible client — Claude Code, Claude Desktop, Codex, OpenCode, and other MCP-capable tools.


Capabilities

60+ methods across 11 categories. Supports 10x Visium, Xenium, Slide-seq v2, MERFISH, seqFISH.

Category Methods
Spatial Domains SpaGCN, STAGATE, GraphST, BANKSY, Leiden, Louvain
Deconvolution FlashDeconv, Cell2location, RCTD, DestVI, Stereoscope, SPOTlight, Tangram, CARD
Cell Communication LIANA+, CellPhoneDB, CellChat (cellchat_r), FastCCC
Cell Type Annotation Tangram, scANVI, CellAssign, mLLMCelltype, scType, SingleR
Differential Expression Wilcoxon, t-test, Logistic Regression, pyDESeq2
Trajectory & Velocity CellRank, Palantir, DPT, scVelo, VeloVI
Spatial Statistics Moran's I, Local Moran, Geary's C, Getis-Ord Gi*, Ripley's K, Co-occurrence, Neighborhood Enrichment, Centrality Scores, Local Join Count, Network Properties
Enrichment GSEA, ORA, Enrichr, ssGSEA, Spatial EnrichMap
Spatial Genes SpatialDE, SPARK-X, FlashS
Integration Harmony, BBKNN, Scanorama, scVI
Other CNV Analysis (InferCNVPy, Numbat), Spatial Registration (PASTE, STalign)

Documentation

Guide Owns
Installation Environment setup, package install, platform notes
Quick Start First successful analysis after setup
Concepts Method selection and analysis reasoning
Examples Prompt recipes and workflow examples
Configuration Exact MCP client configuration syntax
Troubleshooting Symptom → fix guidance
Methods Reference Canonical tool parameters and defaults
Full Docs Complete documentation site

Citation

If you use ChatSpatial in your research, please cite:

@article{Yang2026.02.26.708361,
  author = {Yang, Chen and Zhang, Xianyang and Chen, Jun},
  title = {ChatSpatial: Schema-Enforced Agentic Orchestration for Reproducible and Cross-Platform Spatial Transcriptomics},
  elocation-id = {2026.02.26.708361},
  year = {2026},
  doi = {10.64898/2026.02.26.708361},
  publisher = {Cold Spring Harbor Laboratory},
  URL = {https://www.biorxiv.org/content/early/2026/03/01/2026.02.26.708361},
  journal = {bioRxiv}
}

ChatSpatial orchestrates many excellent third-party methods. Please also cite the original tools your analysis used.


Contributing

Documentation improvements, bug reports, and new analysis methods are all welcome. See CONTRIBUTING.md.

MIT License · GitHub · Issues

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

chatspatial-1.2.6.tar.gz (319.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

chatspatial-1.2.6-py3-none-any.whl (353.6 kB view details)

Uploaded Python 3

File details

Details for the file chatspatial-1.2.6.tar.gz.

File metadata

  • Download URL: chatspatial-1.2.6.tar.gz
  • Upload date:
  • Size: 319.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for chatspatial-1.2.6.tar.gz
Algorithm Hash digest
SHA256 34edbf32c05ff069c7b470bbc8da50aa17459ccaa8b91ab993c8debfcacacee8
MD5 b8362cb3a4aa95eb6ab115809bbb56d3
BLAKE2b-256 17ab5730ed484c252c1ed0a1930cbbd2bda1c447866606f1d9697f24927c9d30

See more details on using hashes here.

Provenance

The following attestation bundles were made for chatspatial-1.2.6.tar.gz:

Publisher: release.yml on cafferychen777/ChatSpatial

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chatspatial-1.2.6-py3-none-any.whl.

File metadata

  • Download URL: chatspatial-1.2.6-py3-none-any.whl
  • Upload date:
  • Size: 353.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for chatspatial-1.2.6-py3-none-any.whl
Algorithm Hash digest
SHA256 7072352c6095b675c01a0ec09832444cef39fc47bdc369b0f318b0b9e8dc66eb
MD5 a54b3cc96ded26607ecccb939f492410
BLAKE2b-256 8adda6b0d8a366ced93982647a56929d75342bdc791227048ab4bf995a5ce132

See more details on using hashes here.

Provenance

The following attestation bundles were made for chatspatial-1.2.6-py3-none-any.whl:

Publisher: release.yml on cafferychen777/ChatSpatial

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page