-
Notifications
You must be signed in to change notification settings - Fork 58
add scmcp #238
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
add scmcp #238
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @huang-sh,
Thanks for submitting scmcp
- interesting to see tools integrating LLMs with single-cell data workflows!
I have a couple of notes regarding the checklist:
The package provides API documentation via a website or README.
While we understand that scmcp
functions as a server layer integrating LLMs with external tools, we still require some form of documentation. This should outline the key functions or components of the tool so that users can understand how to use it/interact with it.
The package uses scverse datastructures where appropriate (i.e. AnnData, MuData or SpatialData and their modality-specific extensions)
We would also need a short description of how the package uses scverse data structures. This will help users know what to expect when working with their data through the tool.
Looking forward to hearing from you!
Best regards,
Mikkel
@mikkelnrasmussen Hey,thanks for your review. you are right, we indeed need outline the tools and functions. And also wirte how to use scverse data structures. |
@mikkelnrasmussen Hi, please review it. thanks! I have updated documentation. I add a tool list of mcp servers(https://docs.scmcphub.org/servers/scanpy-mcp). There are no detailed paramters , as in fact in most time, for mcp , function paramters are for LLMs, not human. Also scmcp tools' parameters are almost same with scanpy. |
Hi @huang-sh, thanks for adding the tool overview. I think this is helpful, and I'd suggest to additionally add a link to respective docs of the original packages. Regarding API docs, I understand that there's no user-facing API for the analyses -- therefore it cannot be documented and that's ok. But what about classes like btw, I tried accessing the |
@grst thanks for review. Nice suggestion , I will add a link to respective docs of the original packages. |
@huang-sh, you are probably aware, but your website appears to be down atm: https://docs.scmcphub.org/ |
@grst Thanks! I didn't realize it - probably a caching problem since it always worked on my computer. Should be fixed now. BTW,I have add links to respective docs of the original packages. and scmcp_shared is open now. |
Cool, then I think the only thing left is documentation of the base classes?
|
@grst Hi, sorry for late reply, as I add a new run mode, it can generate complete Jupyter notebooks containing executable code, analysis results, and visualizations(demo). I have added the Development Guide in https://docs.scmcphub.org/dev-guide/, please check , thanks! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks great, thanks for adding it!
@mikkelnrasmussen, please feel free to merge once this is ok from your side! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Concerns regarding documentation has been addressed and fulfils all other criteria. This LGTM now!
Checklist for adding packages
Mandatory
Name of the tool: scmcp
Short description: An MCP server for scRNA-Seq analysis with natural language.
How does the package use scverse data structures (please describe in a few sentences): scmcp uses anndata for most analyses and is dependent on Scanpy.
Recommended
Please announce this package on scverse communication channels (zulip, discourse, twitter)
Please tag the author(s) these announcements. Handles (e.g.
@scverse_team
) to include are:The package provides tutorials (or "vignettes") that help getting users started quickly
The package uses the scverse cookiecutter template.
Footnotes
We recommend thtat tests cover at least all user facing (public) functions. Minimal tests ensure that the function does not fail on an example data set. Ideally, tests also ensure the correctness of the results, e.g. by comparing against a snapshot. ↩
Continuous integration means that software tests are automatically executed on every push to the git repository. This guarantees they are always run and that they are run in a clean environment. Scverse ecosystem packages most commonly use GitHub Actions for CI. For an example, check out our cookiecutter template. ↩
By API documentation, we mean an overview of all public functions provided a package, with documentation of their parameters. For an example, see the Scanpy documentation. In simple cases, this can be done manually in a README file. For anything more complex, we recommend the Sphinx Autodoc plugin ↩