Scanpy MCP server
About
An MCP server that enables natural language interaction with the scRNA‑Seq analysis software Scanpy. It is intended for anyone wanting to perform single‑cell RNA‑Seq analysis via natural language, and for agent developers who wish to call Scanpy functions from their applications.
Details
- Author
- huang-sh
- GitHub stars
- 11
- Downloads
- 205
- Categories
- Other
Jump to
- Read/write scRNA-Seq data using natural language
- Preprocessing: filtering, QC, normalization, scaling
- Highly-variable genes and PCA/Neighbors computations
- Clustering and differential expression via the tool module
- Plotting: violin, heatmap, dotplot
Install via pip install scanpy-mcp. To test locally, run scmcp run and configure your MCP client with "command": "scanpy-mcp" and "args": ["run"]. For remote access, use --transport shttp --port 8000 and point the client to http://localhost:8000/mcp.
Scanpy MCP server
An MCP server for scRNA-Seq analysis software Scanpy 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
❓ 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 scanpy-mcp in most AI clients, plugins, or agent frameworks that support the MCP:
- AI clients, like Cherry Studio
- Plugins, like Cline
- Agent frameworks, like Agno
🎬 Demo
A demo showing scRNA-Seq cell cluster analysis in a AI client Cherry Studio using natural language based on scanpy-mcp
https://github.com/user-attachments/assets/93a8fcd8-aa38-4875-a147-a5eeff22a559
🏎️ Quickstart
Install
Install from PyPI
pip install scanpy-mcp
you can test it by running
scmcp run
run scnapy-server locally
Refer to the following configuration in your MCP client:"mcpServers": {
"scanpy-mcp": {
"command": "scanpy-mcp",
"args": [
"run"
]
}
}
run scnapy-server 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, like this:
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!
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



