{"id":40603719,"url":"https://github.com/cafferychen777/chatspatial","last_synced_at":"2026-05-02T20:00:46.580Z","repository":{"id":331082064,"uuid":"978519611","full_name":"cafferychen777/ChatSpatial","owner":"cafferychen777","description":"🧬 Analyze spatial transcriptomics data through natural language conversation. Stop writing code, start having conversations with your data. MCP server for Claude Code and Codex.","archived":false,"fork":false,"pushed_at":"2026-05-02T10:26:56.000Z","size":30320,"stargazers_count":33,"open_issues_count":12,"forks_count":8,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-05-02T12:23:01.463Z","etag":null,"topics":["agentic-ai","bioinformatics","cell-communication","claude-desktop","computational-biology","deconvolution","genomics","llm-agent","machine-learning","mcp-server","model-context-protocol","python","pytorch","scanpy","single-cell","spatial-analysis","spatial-domains","spatial-transcriptomics","squidpy","visualization"],"latest_commit_sha":null,"homepage":"https://docs.cafferyang.com/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cafferychen777.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-05-06T05:40:10.000Z","updated_at":"2026-05-02T10:26:37.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/cafferychen777/ChatSpatial","commit_stats":null,"previous_names":["cafferychen777/chatspatial"],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/cafferychen777/ChatSpatial","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cafferychen777%2FChatSpatial","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cafferychen777%2FChatSpatial/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cafferychen777%2FChatSpatial/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cafferychen777%2FChatSpatial/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cafferychen777","download_url":"https://codeload.github.com/cafferychen777/ChatSpatial/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cafferychen777%2FChatSpatial/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32547651,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-02T19:18:06.202Z","status":"ssl_error","status_checked_at":"2026-05-02T19:16:21.335Z","response_time":132,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agentic-ai","bioinformatics","cell-communication","claude-desktop","computational-biology","deconvolution","genomics","llm-agent","machine-learning","mcp-server","model-context-protocol","python","pytorch","scanpy","single-cell","spatial-analysis","spatial-domains","spatial-transcriptomics","squidpy","visualization"],"created_at":"2026-01-21T04:37:26.735Z","updated_at":"2026-05-02T20:00:46.570Z","avatar_url":"https://github.com/cafferychen777.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n# ChatSpatial\n\n**MCP server for spatial transcriptomics analysis via natural language**\n\n[![Paper](https://img.shields.io/badge/bioRxiv-2026.02.26.708361-b31b1b.svg)](https://doi.org/10.64898/2026.02.26.708361)\n[![MLGenX @ ICLR 2026](https://img.shields.io/badge/MLGenX%20@%20ICLR%202026-Oral-blue.svg)](https://openreview.net/forum?id=xZ814yNaUW)\n[![ENAR 2026](https://img.shields.io/badge/ENAR%202026-Oral-blue.svg)](https://www.enar.org/meetings/spring2026/)\n[![IBC 2026](https://img.shields.io/badge/IBC%202026-Oral-blue.svg)](https://www.ibc2026.org/home)\n[![CI](https://github.com/cafferychen777/ChatSpatial/actions/workflows/ci.yml/badge.svg)](https://github.com/cafferychen777/ChatSpatial/actions/workflows/ci.yml)\n[![PyPI](https://img.shields.io/pypi/v/chatspatial)](https://pypi.org/project/chatspatial/)\n[![Python 3.11-3.13](https://img.shields.io/badge/python-3.11--3.13-blue.svg)](https://www.python.org/downloads/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Docs](https://img.shields.io/badge/docs-available-blue)](https://docs.cafferyang.com/)\n\n\u003c/div\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"assets/images/overview.jpg\" alt=\"ChatSpatial Overview\" width=\"900\"\u003e\n\u003c/p\u003e\n\nChatSpatial 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.\n\nIt exposes **60+ spatial transcriptomics methods** as MCP tools, so any MCP-compatible client can analyze data through natural language.\n\n---\n\n## Start Here\n\n1. **Install ChatSpatial** — [Installation Guide](INSTALLATION.md)\n2. **Configure your MCP client** — [Configuration Guide](docs/advanced/configuration.md)\n3. **Run your first analysis** — [Quick Start](docs/quickstart.md)\n\n**Minimal example prompt:**\n\n```text\nLoad /absolute/path/to/spatial_data.h5ad and show me the tissue structure\n```\n\n\u003e ChatSpatial works with **any MCP-compatible client** — Claude Code, Claude Desktop, Codex, OpenCode, and other MCP-capable tools.\n\n---\n\n## Capabilities\n\n60+ methods across 11 categories. Supports 10x Visium, Xenium, Slide-seq v2, MERFISH, seqFISH.\n\n| Category | Methods |\n|----------|---------|\n| **Spatial Domains** | SpaGCN, STAGATE, GraphST, BANKSY, Leiden, Louvain |\n| **Deconvolution** | FlashDeconv, Cell2location, RCTD, DestVI, Stereoscope, SPOTlight, Tangram, CARD |\n| **Cell Communication** | LIANA+, CellPhoneDB, CellChat (`cellchat_r`), FastCCC |\n| **Cell Type Annotation** | Tangram, scANVI, CellAssign, mLLMCelltype, scType, SingleR |\n| **Differential Expression** | Wilcoxon, t-test, Logistic Regression, pyDESeq2 |\n| **Trajectory \u0026 Velocity** | CellRank, Palantir, DPT, scVelo, VeloVI |\n| **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 |\n| **Enrichment** | GSEA, ORA, Enrichr, ssGSEA, Spatial EnrichMap |\n| **Spatial Genes** | SpatialDE, SPARK-X, FlashS |\n| **Integration** | Harmony, BBKNN, Scanorama, scVI |\n| **Other** | CNV Analysis (InferCNVPy, Numbat), Spatial Registration (PASTE, STalign) |\n\n---\n\n## Documentation\n\n| Guide | Owns |\n|-------|------|\n| [Installation](INSTALLATION.md) | Environment setup, package install, platform notes |\n| [Quick Start](docs/quickstart.md) | First successful analysis after setup |\n| [Concepts](docs/concepts.md) | Method selection and analysis reasoning |\n| [Examples](docs/examples.md) | Prompt recipes and workflow examples |\n| [Configuration](docs/advanced/configuration.md) | Exact MCP client configuration syntax |\n| [Troubleshooting](docs/advanced/troubleshooting.md) | Symptom → fix guidance |\n| [Methods Reference](docs/advanced/methods-reference.md) | Canonical tool parameters and defaults |\n| [Full Docs](https://docs.cafferyang.com/) | Complete documentation site |\n\n---\n\n## Citation\n\nIf you use ChatSpatial in your research, please cite:\n\n```bibtex\n@article{Yang2026.02.26.708361,\n  author = {Yang, Chen and Zhang, Xianyang and Chen, Jun},\n  title = {ChatSpatial: Schema-Enforced Agentic Orchestration for Reproducible and Cross-Platform Spatial Transcriptomics},\n  elocation-id = {2026.02.26.708361},\n  year = {2026},\n  doi = {10.64898/2026.02.26.708361},\n  publisher = {Cold Spring Harbor Laboratory},\n  URL = {https://www.biorxiv.org/content/early/2026/03/01/2026.02.26.708361},\n  journal = {bioRxiv}\n}\n```\n\nChatSpatial orchestrates many excellent third-party methods. **Please also cite the original tools your analysis used.**\n\n---\n\n## Contributing\n\nDocumentation improvements, bug reports, and new analysis methods are all welcome. See [CONTRIBUTING.md](CONTRIBUTING.md).\n\n\u003cdiv align=\"center\"\u003e\n\n**MIT License** · [GitHub](https://github.com/cafferychen777/ChatSpatial) · [Issues](https://github.com/cafferychen777/ChatSpatial/issues)\n\n\u003c/div\u003e\n\n\u003c!-- mcp-name: io.github.cafferychen777/chatspatial --\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcafferychen777%2Fchatspatial","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcafferychen777%2Fchatspatial","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcafferychen777%2Fchatspatial/lists"}