# CyteType > Annotate the clusters of single-cell RNA-seq data with cell types, Cell Ontology terms, cell states and reviewer confidence, from Python (Scanpy and AnnData, package `cytetype`) or R (Seurat, package `CyteTypeR`). This documentation is published from the master branch of the CyteType repository and covers both clients, the report, the dashboard, Chat, the MCP connector and target analysis. Documentation revision: 6ce97c558d4353ff1796056a86b1e6d8b42f4b4e. Links below open plain-text documentation. - [Home](https://docs.nygen.io/CyteType/index.txt): what CyteType does, a first Python and R example, and where to go next ## Getting started - [Installation](https://docs.nygen.io/CyteType/getting-started/installation/index.txt): install the Python package or the CyteTypeR R package, check the installed version and keep it up to date - [Sign in and API keys](https://docs.nygen.io/CyteType/getting-started/sign-in/index.txt): create an account, sign in from Python or R, use API keys on remote machines and in CI, and manage the saved key - [Quickstart (Python)](https://docs.nygen.io/CyteType/getting-started/quickstart/index.txt): an executed notebook that preprocesses the PBMC 3k dataset with Scanpy, runs CyteType, and explores the labels, confidence and evidence - [Quickstart (R)](https://docs.nygen.io/CyteType/getting-started/quickstart-r/index.txt): the same workflow in R: preprocess the PBMC 3k dataset with Seurat, run CyteTypeR, and explore the labels, confidence, evidence and report - [How CyteType works](https://docs.nygen.io/CyteType/getting-started/how-cytetype-works/index.txt): what CyteType does with your clusters, the stages of a job, what you get back and what is uploaded ## Prepare and run - [Prepare your data](https://docs.nygen.io/CyteType/guides/prepare-data/index.txt): get an AnnData or Seurat object ready, from normalized expression and cluster labels to marker genes, gene symbols, coordinates, raw counts and cell metadata - [Large datasets](https://docs.nygen.io/CyteType/guides/large-datasets/index.txt): work from backed AnnData, rank marker genes in chunks, cap cells per cluster, and plan memory, disk space and uploads - [Study context and metadata](https://docs.nygen.io/CyteType/guides/study-context/index.txt): write a study context, label runs with metadata tags, and choose the cell metadata columns that add evidence - [Run, monitor and rerun jobs](https://docs.nygen.io/CyteType/guides/running-jobs/index.txt): what `run()` and `CyteTypeR()` do from upload to results, how to follow a job, and how to fetch results later and rerun jobs - [Use your own LLM](https://docs.nygen.io/CyteType/guides/llm-configuration/index.txt): run the annotation agents on your own model provider, including AWS Bedrock, OpenAI-compatible endpoints and local Ollama models - [Automation, HPC and CI](https://docs.nygen.io/CyteType/guides/automation/index.txt): run CyteType from scripts, HPC batch jobs and CI, with an API key from a secret store and saved results ## Results - [Results in AnnData and Seurat](https://docs.nygen.io/CyteType/results/results-in-your-data/index.txt): what CyteType adds to AnnData and Seurat objects, what `get_results()` and `GetResults()` return, and how to save, plot and export the results - [The CyteType report](https://docs.nygen.io/CyteType/results/report/index.txt): the interactive report, from following a running job to reading every evidence section, comparing with your own labels and exporting a CSV - [Interpret and review results](https://docs.nygen.io/CyteType/results/interpreting-results/index.txt): read labels, reviewer confidence, heterogeneity flags and classifications, know the limits of the results, and review a run with a checklist ## Platform - [Dashboard](https://docs.nygen.io/CyteType/platform/dashboard/index.txt): manage your reports, API keys and account, in your personal or your organization's workspace - [Visibility and sharing](https://docs.nygen.io/CyteType/platform/sharing/index.txt): private, organization and public reports, email sharing, and what each level exposes - [Chat](https://docs.nygen.io/CyteType/platform/chat/index.txt): ask questions about completed runs and get answers, tables and figures from the stored results and uploaded data - [Target analysis](https://docs.nygen.io/CyteType/platform/target-analysis/index.txt): rank cell-type-resolved target hypotheses for a completed job, and read the results and their limits - [Connect AI assistants (MCP)](https://docs.nygen.io/CyteType/platform/mcp/index.txt): connect Claude, Claude Code, Cursor or another MCP client to explore and compare your annotation jobs - [Usage limits and quotas](https://docs.nygen.io/CyteType/platform/limits/index.txt): limits for personal accounts and organizations, the data, job, Chat and MCP limits, and the errors you get when you reach them ## Reference - [Python API](https://docs.nygen.io/CyteType/api/index.txt): exact signatures and docstrings of the `cytetype` package - [CyteType class](https://docs.nygen.io/CyteType/api/cytetype.txt): prepare an AnnData object, run a job, read the results and delete the upload files - [Helpers](https://docs.nygen.io/CyteType/api/helpers.txt): `marker_dotplot`, `rank_genes_groups_backed` and `subsample_by_group` - [LLM configuration](https://docs.nygen.io/CyteType/api/llm-config.txt): the fields of each dict in `llm_configs` - [Exceptions](https://docs.nygen.io/CyteType/api/exceptions.txt): the exception classes of the Python client and their error codes - [R function reference](https://docs.nygen.io/CyteType/reference/r-api/index.txt): the exported functions of the CyteTypeR package, grouped into preparing and running jobs, results, sign-in and errors, with their usage, arguments, return values and examples, generated from the help pages of CyteTypeR 0.6.0 - [Command-line reference](https://docs.nygen.io/CyteType/reference/cli/index.txt): the `cytetype` (Python) and `cytetyper` (R) commands with every option, environment variable, output and exit code - [Errors and error codes](https://docs.nygen.io/CyteType/reference/errors/index.txt): the exceptions of the Python client and the conditions of CyteTypeR, the server error codes behind them, and what to do about each ## Support - [Troubleshooting](https://docs.nygen.io/CyteType/support/troubleshooting/index.txt): fixes for common problems with signing in, preparing data, uploading files, running jobs and installing the clients - [FAQ](https://docs.nygen.io/CyteType/support/faq/index.txt): short answers about data requirements, analysis, privacy, access, pricing and support - [Security and privacy](https://docs.nygen.io/CyteType/support/security-and-privacy/index.txt): what the clients upload, how CyteType protects and uses your data, who can see your reports, and how deletion and retention work - [Cite CyteType and report versions](https://docs.nygen.io/CyteType/support/citing/index.txt): how to cite CyteType, what to record so that others can reproduce your annotations, and the licenses of the clients and the service