[project]
name = "infercnv-mcp"
dynamic = ["version"]
description = "Natural language interface for CNV inference from scRNA-Seq data with infercnvpy through MCP."
readme = "README.md"
authors = [
{ name = "shuang", email = "hsh-me@outlook.com" },
{ name = "mugpeng", email = "yc47680@um.edu.mo" }
]
keywords = [
"mcp",
"model context protocol",
"llm",
"agent",
"scRNA-seq",
"single cell",
"bioinformatics",
"AI",
"CNV"
]
requires-python = ">=3.10"
dependencies = [
"fastmcp>=2.4",
"scanpy",
"infercnvpy",
"nest_asyncio",
"scmcp-shared>=0.5.0",
]
[dependency-groups]
dev = [
"pytest>=8.3.3",
"pytest-asyncio>=0.23.5",
]
[project.scripts]
infercnv-mcp = "infercnv_mcp.cli:cli.run"
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.version]
path = "src/infercnv_mcp/__init__.py"
[tool.pytest.ini_options]
asyncio_mode = "strict"
asyncio_default_fixture_loop_scope = "function"
[project.urls]
Homepage = "http://scmcphub.org/"
Repository = "https://github.com/scmcphub/infercnv-mcp"
Documentation = "https://docs.scmcphub.org/"
[tool.ruff]
lint.ignore = ["F403", "F405"]