Skip to main content

An MCP server for scRNA-Seq analysis with natural language!

Project description

SCMCP

An MCP server for scRNA-Seq analysis with natural language!

🪩 What can it do?

  • IO module like read and write scRNA-Seq data with natural language
  • Preprocessing module,like filtering, quality control, normalization, scaling, highly-variable genes, PCA, Neighbors,...
  • Tool module, like clustering, differential expression etc.
  • Plotting module, like violin, heatmap, dotplot
  • cell-cell communication analysis
  • Pseudotime analysis
  • enrichment analysis

❓ Who is this for?

  • Anyone who wants to do scRNA-Seq analysis natural language!
  • Agent developers who want to call scanpy's functions for their applications

🌐 Where to use it?

You can use scmcp in most AI clients, plugins, or agent frameworks that support the MCP:

  • AI clients, like Cherry Studio
  • Plugins, like Cline
  • Agent frameworks, like Agno

📚 Documentation

scmcphub's complete documentation is available at https://docs.scmcphub.org

🎬 Demo

A demo showing scRNA-Seq cell cluster analysis in a AI client Cherry Studio using natural language based on scmcp

https://github.com/user-attachments/assets/93a8fcd8-aa38-4875-a147-a5eeff22a559

🏎️ Quickstart

Install

Install from PyPI

pip install scmcp

you can test it by running

scmcp run

run scnapy-mcp locally

Refer to the following configuration in your MCP client:

check path

$ which scmcp 
/home/test/bin/scmcp

it has many tools , so it couldn't work if you model context is not large...More time, I recommend it is backend mcp server for scanpy-mcp, liana-mcp,cellrank-mcp, so they can use shared Anndata object.

"mcpServers": {
  "scmcp": {
    "command": "/home/test/bin/scmcp",
    "args": [
      "run"
    ]
  }
}

run scmcp remotely

Refer to the following configuration in your MCP client:

run it in your server

scmcp run --transport shttp --port 8000

Then configure your MCP client in local AI client, like this:


"mcpServers": {
  "scmcp": {
    "url": "http://localhost:8000/mcp"
  }
}

🤝 Contributing

If you have any questions, welcome to submit an issue, or contact me(hsh-me@outlook.com). Contributions to the code are also welcome!

Citing

If you use scmcp in for your research, please consider citing following works:

Wolf, F., Angerer, P. & Theis, F. SCANPY: large-scale single-cell gene expression data analysis. Genome Biol 19, 15 (2018). https://doi.org/10.1186/s13059-017-1382-0

Dimitrov D., Schäfer P.S.L, Farr E., Rodriguez Mier P., Lobentanzer S., Badia-i-Mompel P., Dugourd A., Tanevski J., Ramirez Flores R.O. and Saez-Rodriguez J. LIANA+ provides an all-in-one framework for cell–cell communication inference. Nat Cell Biol (2024). https://doi.org/10.1038/s41556-024-01469-w

Badia-i-Mompel P., Vélez Santiago J., Braunger J., Geiss C., Dimitrov D., Müller-Dott S., Taus P., Dugourd A., Holland C.H., Ramirez Flores R.O. and Saez-Rodriguez J. 2022. decoupleR: ensemble of computational methods to infer biological activities from omics data. Bioinformatics Advances. https://doi.org/10.1093/bioadv/vbac016

Weiler, P., Lange, M., Klein, M. et al. CellRank 2: unified fate mapping in multiview single-cell data. Nat Methods 21, 1196–1205 (2024). https://doi.org/10.1038/s41592-024-02303-9

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

scmcp-0.3.1.tar.gz (32.5 MB view details)

Uploaded Source

Built Distribution

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

scmcp-0.3.1-py3-none-any.whl (6.0 kB view details)

Uploaded Python 3

File details

Details for the file scmcp-0.3.1.tar.gz.

File metadata

  • Download URL: scmcp-0.3.1.tar.gz
  • Upload date:
  • Size: 32.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for scmcp-0.3.1.tar.gz
Algorithm Hash digest
SHA256 18645d8cb5b20d312ead580a58b874e778c02ba78784c3d8360dd9910984eafe
MD5 b74d2915f25c61ad99517d3fdd3b1daa
BLAKE2b-256 d4efba750cfc8ce6d0bbe6b4255f4bb71117ce08df70c619322754cf2d7e2c8c

See more details on using hashes here.

Provenance

The following attestation bundles were made for scmcp-0.3.1.tar.gz:

Publisher: publish.yml on scmcphub/scmcp

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

File details

Details for the file scmcp-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: scmcp-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 6.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for scmcp-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 943eda8f42bbaa8c3a7c3e564eaf8cfa068eb4e2740f7ad9a351b012a92c9104
MD5 8388c78cc213cee3c29c95abd0fbdb4a
BLAKE2b-256 a4f6889c7568f6a9918b316ddd7e9bb2d217e477fe87dfb0fef9d8b652ec1639

See more details on using hashes here.

Provenance

The following attestation bundles were made for scmcp-0.3.1-py3-none-any.whl:

Publisher: publish.yml on scmcphub/scmcp

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