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.5.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.5-py3-none-any.whl (353.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: chatspatial-1.2.5.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.5.tar.gz
Algorithm Hash digest
SHA256 3a6d14b018deabbd882d80a0b65e4b6585bd15ec4d1aa8e78faef8b6782b3bbb
MD5 0f7ddfa59c5bda5c2251abf5abbb95d4
BLAKE2b-256 5de8aa24a80ed64faa6557ae84fd772e4903b0da87ae7a822b58db59acf58664

See more details on using hashes here.

Provenance

The following attestation bundles were made for chatspatial-1.2.5.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.5-py3-none-any.whl.

File metadata

  • Download URL: chatspatial-1.2.5-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.5-py3-none-any.whl
Algorithm Hash digest
SHA256 6632eecc833b766fbd31faf800e003c71d6518d65354783c7c607ff863f0c2c0
MD5 a0dbdb4373b91893fdf0ac473df8c07e
BLAKE2b-256 dbf00431bbb41d356735e688d779a5834dccb13cf5fc5e7b7495e50d488b1de0

See more details on using hashes here.

Provenance

The following attestation bundles were made for chatspatial-1.2.5-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