Chisle
The coding-agent plugin that bills 52% of a bare model across 20 live tasks. Terse persona + tool-output compressor + context diet.
翻訳待ち
MCP server exposing PlantCV as a measurement instrument — plant traits plus the segmentation overlay they were measured from
翻訳待ち
Loading the full README.
Read the full README ↗plantcv-mcp is an MCP server that lets AI agents run PlantCV plant
phenotyping. It returns trait numbers and the segmentation overlay they were measured from. It
refuses to measure an empty mask, and it flags a mask that is probably the background: measure
returns its traits with that warning, while the batch, leaf-count and skeleton tools refuse it
(What it refuses).
Left, channel="a", object_type="dark": the mask covers 3.1% of the frame, 9 components,
area=32427. Right, channel="s", object_type="dark": the mask covers 96.1%; it is the
background, area=1007829.
Both images come from the same file and the same threshold method; only the channel differs. Without the picture, both runs return 17 traits with correct units and believable magnitudes. The one on the right is measuring the wall behind the plants. Red marks the measured pixels; a cyan line traces the mask's edge.
So segment() returns the overlay and diagnostics but no traits, and measure() needs the
session_id that segment() mints: no single image is measured before you are shown it. The
exception is measure_images(), which applies one recipe to up to 200 images without overlays.
Settle the recipe on one image's overlay first (the server does not check); every image still
passes the segment() guards, and one that trips a blocking guard gets no traits.
Measured with PlantCV 4.11.3 on a synthetic render (first row:
tests/fixtures/multi_specimen.png) and on photographs, each of these returns believable
numbers with correct units:
| Failure | What you get without the overlay |
|---|---|
| four-view render, whole-image ROI | 17 plausible traits describing four merged plants |
| plant clipped by the frame | size traits that are silently lower bounds |
| empty mask | 17 traits of zeros, with PlantCV reporting in_bounds=True |
With uv nothing needs installing: uvx --python 3.13 plantcv-mcp fetches and
runs the current release. Otherwise:
pip install plantcv-mcp
Requires Python 3.11 to 3.13: PlantCV 4.11.3 needs SciPy below 1.16, which has no Python 3.14
wheels, so --python 3.13 keeps uvx off a 3.14 default. PlantCV and its scientific stack make the first install (or first uvx
run) slow. From a checkout: uv add /path/to/plantcv-mcp. The one optional tool,
segment_leaves_sam(), needs pip install "plantcv-mcp[sam]" (torch, torchvision,
segment-anything); without it, that tool refuses with that command and every other tool works.
claude mcp add plantcv -- uvx --python 3.13 plantcv-mcp
Claude Desktop and other stdio hosts:
{ "mcpServers": { "plantcv": { "command": "uvx", "args": ["--python", "3.13", "plantcv-mcp"] } } }
With a pip install the command is plantcv-mcp (checkout config).
Verify with list_methods().
Flags: --root DIR (repeatable, or PLANTCV_MCP_ROOTS) confines every read, and every file
the server keeps, to your imagery: plantcv-mcp --root /data/phenotyping. --no-isolate (or
PLANTCV_MCP_ISOLATE=0) runs analyses in-process instead of in the crash-containing worker.
Claude with the server was compared with Claude writing its own code (mostly OpenCV) in a Python environment we set up with the same PlantCV and OpenCV, on 46 measurement questions about rendered plant images, 3 runs each. A tie means the server matches that result without you building the environment. Questions right in every run, server against Claude's own code: Claude Haiku 5.5 38 against 32, Sonnet 5.5 33 against 28, Opus 5.5 42 against 44. None is separated (pre-registered; exact McNemar p = 0.15, 0.23 and 0.63), and Claude's own code was cheaper on all three models.
The chart is the Opus 5.5 re-run on 2026-10-18, against commit 051aff0 (unreleased then, first
released in v1.17.0), which adds several-channel segmentation rules and zoom_image: right on
97.1% of answers with its own code
and 95.7% with the server. Its own code cost $0.038 against $0.066 per answer (medians; the
intervals do not overlap). On release 1.16.1 the server was right on 86.2% against 95.7%
(p = 0.18). The images have crisp edges, so a single color cut with no model answers 28 of the
46.
We wrote the questions and ran the benchmark ourselves; an outside re-run is welcome. Method, controls and limitations: benchmarks/agent_qa; the Haiku and Sonnet runs: 2026-10-20 re-run.
This is the beginning of the README. Read the rest at the original. Read the full README ↗