Cellpose MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tasks | {
"list": {},
"cancel": {},
"requests": {
"tools": {
"call": {}
},
"prompts": {
"get": {}
},
"resources": {
"read": {}
}
}
} |
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| segment_cells_2dA | Segment cells in a 2D microscopy image using Cellpose. Args: image_path: Path to input image file (TIFF, PNG, etc.) model_type: Cellpose model type (cyto, cyto2, cyto3, nuclei, etc.) diameter: Expected cell diameter in pixels (0 = model default) channels: Channel specification [cyto, nuclei] or None for grayscale flow_threshold: Flow error threshold (lower = more masks, may be worse quality) cellprob_threshold: Cell probability threshold (higher = fewer masks) min_size: Minimum cell size in pixels gpu: Whether to use GPU acceleration augment: Use test-time augmentation (flip/rotate) normalize: Normalize image intensities invert: Invert image intensities (for bright background) output_path: Optional path to save masks (default: image_path with _masks suffix) Returns |
| segment_cells_3dB | Segment cells in a 3D volume using Cellpose. Args: image_path: Path to input 3D image stack (TIFF, etc.) model_type: Cellpose model type diameter: Expected cell diameter in pixels do_3d: Use full 3D segmentation (True) or slice + stitch (False) anisotropy: Z-axis anisotropy factor (z_pixel_size / xy_pixel_size) stitch_threshold: Threshold for stitching masks across slices (if do_3d=False) flow3d_smooth: Smoothing factor for 3D flows channels: Channel specification [cyto, nuclei] or None gpu: Whether to use GPU acceleration output_path: Optional path to save masks Returns |
| segment_cells_batchB | Segment cells in multiple images in batch. Args: image_paths: List of paths to input images model_type: Cellpose model type diameter: Expected cell diameter in pixels output_dir: Directory to save masks (default: same as input images) gpu: Whether to use GPU acceleration batch_size: Number of images to process in parallel Returns |
| denoise_imageA | Denoise a microscopy image using Cellpose restoration models. Args: image_path: Path to input image model_type: Restoration model type (denoise_cyto2, denoise_cyto3, etc.) channels: Channel specification diameter: Expected object diameter for scaling gpu: Whether to use GPU acceleration output_path: Optional path to save denoised image Returns |
| deblur_imageB | Deblur a microscopy image using Cellpose restoration models. Args: image_path: Path to input image model_type: Restoration model type (deblur_cyto2, deblur_cyto3, etc.) channels: Channel specification diameter: Expected object diameter for scaling gpu: Whether to use GPU acceleration output_path: Optional path to save deblurred image Returns |
| upsample_imageB | Upsample a microscopy image using Cellpose restoration models. Args: image_path: Path to input image model_type: Upsampling model type (upsample_cyto2, upsample_cyto3, etc.) scale_factor: Upsampling factor (typically 2 or 4) channels: Channel specification gpu: Whether to use GPU acceleration output_path: Optional path to save upsampled image Returns |
| restore_and_segmentC | Restore (denoise/deblur) and segment an image in one pipeline. Args: image_path: Path to input image restoration_model: Restoration model type (oneclick_cyto3, etc.) segmentation_model: Segmentation model type (cyto3, etc.) diameter: Expected cell diameter in pixels channels: Channel specification gpu: Whether to use GPU acceleration output_path_mask: Optional path to save masks output_path_restored: Optional path to save restored image Returns |
| train_segmentation_modelA | Train a custom Cellpose segmentation model. Args: train_dir: Directory containing training images train_labels_dir: Directory containing training masks/labels model_name: Name for the trained model model_type: Base model type (cyto, nuclei, etc.) n_epochs: Number of training epochs learning_rate: Learning rate for training batch_size: Batch size for training test_dir: Optional directory with test images test_labels_dir: Optional directory with test labels gpu: Whether to use GPU acceleration output_dir: Directory to save trained model (default: current directory) Returns |
| list_available_modelsA | List all available pretrained Cellpose models. Returns |
| estimate_cell_diameterC | Estimate cell diameter from an image using Cellpose size model. Args: image_path: Path to input image model_type: Model type to use for estimation channels: Channel specification gpu: Whether to use GPU acceleration Returns |
| save_masksA | Save masks plus outlines and overlay visualizations. Always writes three outputs: (1) masks in the chosen format, (2) outlines as a binary PNG, (3) overlay PNG (colored masks on image or black). Args: mask_path: Path to existing mask file output_format: Output format for masks (tif, png, npy) output_path: Optional custom output path for the masks file image_path: Optional path to original image; if provided, overlay is drawn on it save_flows: Reserved for future use (flow fields not saved) Returns |
| load_image_infoB | Get information about an image file. Args: image_path: Path to image file Returns |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 12 tools
Each tool targets a distinct operation: 2D/3D/batch segmentation are clearly separated by dimension and scope, restoration tools (denoise, deblur, upsample) use distinct model types, and utilities like save_masks and load_image_info are independent. There is no overlapping purpose that would cause an agent to misselect.
All tool names follow consistent snake_case with a verb_noun pattern (segment_cells_2d, denoise_image, train_segmentation_model, etc.). Naming is uniform and predictable, with clear singular verbs and no mixing of conventions.
12 tools is a well-scoped set for a cell analysis server, covering segmentation, restoration, training, model listing, estimation, and utility functions. Each tool serves a clear purpose and the count is within the ideal 3-15 range.
The surface covers core workflows (segment, restore, train, estimate, save, inspect), but there is a notable gap: after training a custom model, there is no tool to apply that model for segmentation—the segmentation tools only accept pretrained model types. This creates a dead-end in the lifecycle and limits practical use.