mcpField
H
Histopathology Annotation MCP

Histopathology Annotation MCP

本地服务
labels.sachin-kale.com健康医疗02 天前更新

关于 Histopathology Annotation MCP

Histopathology Annotation MCP 将 AI 助手连接到 Image Label,为病理及其他图像提供标注工具。它支持细胞核检测、分割、质量检查、标注编辑和数据集导出,无需 GPU。

主要功能

  1. 01自动检测 H&E 细胞核
  2. 02SAM 和 MedSAM 分割
  3. 03切片质量检查
  4. 04染色颜色标准化
  5. 05标注编辑与导出

适用场景

  1. 01准备 H&E 图像训练数据
  2. 02根据框或点勾勒区域
  3. 03标注前检查切片质量
  4. 04将标注导出为 QuPath、COCO 或 YOLO

MCP 相关

该 MCP 服务向 MCP 客户端提供 Image Label 图像上传、标注、病理分析和导出工具。支持 stdio 和 Streamable HTTP 连接。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"sachinbkale27-label-image": {
"command": "uvx",
"args": [
"label-image-mcp"
],
"env": {
"LABEL_USERNAME": "<LABEL_USERNAME>",
"LABEL_PASSWORD": "<LABEL_PASSWORD>",
"LABEL_API_URL": "<LABEL_API_URL>"
}
}
}
}
启动命令uvx label-image-mcp
需要配置的环境变量
LABEL_USERNAMEImage Label account username; leave unset to work as a guest (images kept 7 days, no whole slides)
LABEL_PASSWORD密钥Image Label account password (only with LABEL_USERNAME)
LABEL_API_URLAPI base URL

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypilabel-image-mcp0.8.1

工具

8

收录的工具列表 · 更新于 1 天前

参数类型必填说明
categoryany否

详细介绍

组织病理标注 MCP

图像标注,包括组织病理切片;在一次对话中将 H&E 切片转化为训练数据:细胞核、轮廓和切片 QC,可导出为 QuPath、COCO 或 YOLO 格式。无需 GPU。

一个用于在 Image Label(一款免费标注工具)中标注组织病理图像及其他图像的 MCP 服务。它可以让 Claude 和其他 AI 助手上传图像、自动勾画 H&E 切片中的每个细胞核(StarDist)、根据粗略框追踪区域(Segment Anything;医疗图像可使用 MedSAM)、检查切片质量、标准化染色颜色、清理标注,并将训练数据导出为 COCO JSON、YOLO 标签、YOLO 类别或 QuPath GeoJSON。内含一个 LangGraph Agent。

在浏览器中试用: https://agent.sachin-kale.com/#annotate:上传切片并进行标注、检测细胞核、检查切片质量或获取 AI 解读,无需任何设置。

以 label-image-mcp(PyPI)和 io.github.sachinbkale27/label-image-mcp(MCP Registry)的形式发布。

用例和设置指南:https://labels.sachin-kale.com/mcp

LangGraph agent (label-image-agent)      Claude Desktop / Claude Code / any MCP client
              │  langchain-mcp-adapters             │
              └──────────────┬──────────────────────┘
                             ▼
                    label-image-mcp (stdio or HTTP)
                             │
                             ▼
                 Image Label API  (/api/images ...)

账户

这些工具需要 Image Label 账户(申请账户)。 它们只能查看、更改和上传保存到该账户的图像;没有账户时,它们看不到任何图像。 仅保存在浏览器中的工作内容对它们不可见。

安装

Claude Desktop: 从最新版本下载 label-image-mcp.mcpb,打开文件,并在提示时输入用户名和密码。

Claude Code:

claude mcp add label-image -e LABEL_USERNAME=... -e LABEL_PASSWORD=... -- uvx label-image-mcp

任何 MCP 客户端(需要 uv):

{
  "mcpServers": {
    "label-image": {
      "command": "uvx",
      "args": ["label-image-mcp"],
      "env": { "LABEL_USERNAME": "...", "LABEL_PASSWORD": "..." }
    }
  }
}

Agent 技能

skills/label-image/SKILL.md 会指导 Agent 何时以及如何使用这些工具:哪些标注类型会包含在导出文件中、如何安全地清理标签,以及如何将每张图像的导出文件合并为一个类别 ID 一致的 COCO 或 YOLO 数据集(附带 scripts/merge_exports.py)。它遵循开放的 SKILL.md 格式,因此可用于 Claude Code 和其他支持技能的 Agent。

# Claude Code: install for all your projects (or copy into a project's .claude/skills/)
git clone --depth 1 https://github.com/sachinbkale27/label-image-mcp /tmp/label-image-mcp
mkdir -p ~/.claude/skills && cp -r /tmp/label-image-mcp/skills/label-image ~/.claude/skills/

配置

变量默认值用途
LABEL_USERNAME / LABEL_PASSWORD未设置账户凭据。未设置时,这些工具看不到任何图像
LABEL_API_URLhttps://labels.sachin-kale.com/apiAPI 基础 URL,用于其他部署或 sam local start-api

工具

工具功能
list_images(category?)图像摘要及标注数量
get_image(image_id)元数据、标注和带签名的查看 URL
update_image_metadata(image_id, name?, category?, sub_category?, description?)编辑图像详情
add_annotations(image_id, annotations)添加图钉、多边形、圆形、矩形或箭头
replace_annotations(image_id, annotations)替换所有标注
remove_annotations(image_id, annotation_ids)按 ID 移除标注
upload_image(path, name?, category?, description?)上传本地图像文件
upload_image_from_url(url, name?, category?, description?)从 https URL 下载图像(最大 20 MB)并上传
segment_objects(image_id, objects, model?, save?)使用 Segment Anything,根据粗略框或每个对象的一个点描出精确轮廓,并将其保存为多边形。model:sam(照片)或 medsam(CT、MRI、X 光、超声、内窥镜、病理;仅支持框)
warm_up_segmentation(model?)开始加载分割模型,不等待加载完成(空闲一段时间后,加载需要一两分钟)
detect_nuclei(image_id, max_nuclei?, mark_enlarged?, replace_previous?, save?)使用 StarDist 自动查找并描出 H&E 图像中的每个细胞核(无需框)。返回数量、密度、中位面积和大小差异;面积超过中位数 2.5 倍的细胞核会标记为 enlarged nucleus
normalize_stain(image_id)Macenko 染色归一化:生成一份具有标准 H&E 颜色的副本,并保存为新图像
check_image_quality(image_id)执行类似 HistoQC 的检查(组织占比、模糊、记号笔、曝光、染色过淡),并给出结论和警告
warm_up_pathology()开始加载细胞核模型,不等待加载完成
export_annotations(image_id, format)导出 COCO JSON 或 YOLO 格式,输出与 Web 应用的导出结果相同;也可使用 qupath:生成 GeoJSON,供 QuPath 的 File > Import objects 使用(StarDist 细胞核会作为检测结果导入)

特意不提供删除图像的工具。

segment_objects 会调用 API 的 POST /images/{id}/segment,在 Lambda 容器(backend/segment)中运行 SAM (facebook/sam-vit-base)或 MedSAM (wanglab/medsam-vit-base)。空闲一段时间后,模型启动需要一些时间;客户端会在之后重试。 结果仅供研究和数据集构建使用,不用于诊断。

组织病理学工具会调用 POST /images/{id}/pathology,在另一个 Lambda 容器(backend/pathology)中运行 StarDist(BSD-3;其预训练的 2D_versatile_he 模型使用公开 H&E 数据集训练,其中一些数据集仅允许非商业用途,因此商业使用前请先核实), torchstain(MIT)和 OpenCV 质量指标。显微镜照片的放大倍率各不相同,因此 detect_nuclei 还会尝试将图像放大 2 倍和 3 倍,并保留找到细胞核最多的缩放比例。

HTTP 模式

label-image-mcp --http [--host 127.0.0.1] [--port 8765] 会在 http://HOST:PORT/mcp 提供 Streamable HTTP 服务,因此多个客户端可以共用同一个运行中的服务:

claude mcp add --transport http label-image http://127.0.0.1:8765/mcp

托管模式

label-image-mcp --http --hosted --host 0.0.0.0 用于远程运行服务,例如通过 Lambda Web Adapter 在 AWS Lambda 后运行。它不保留会话状态,以 JSON 作答,并要求每个请求都携带 Authorization: Bearer <token>;如果未配置令牌,则会拒绝所有请求。

变量用途
MCP_AUTH_TOKEN客户端必须发送的 Bearer 令牌
LABEL_CREDENTIALS_SECRETAWS Secrets Manager 密钥,其中包含 username、password 和 mcp_token,用于替代上述变量
LABEL_UPLOAD_URL_HOSTS以逗号分隔的主机名,upload_image_from_url 可从这些主机下载内容(托管时建议配置)

LangGraph Agent

使用这些工具的终端聊天 Agent。图为 START → agent ⇄ tools,并在会话期间保留对话记忆。

uv tool install "label-image-mcp[agent]"
export ANTHROPIC_API_KEY=... LABEL_USERNAME=... LABEL_PASSWORD=...
label-image-agent
变量默认值用途
LABEL_AGENT_MODELanthropic:claude-sonnet-5-5模型,格式为 provider:model,例如 openai:gpt-4.1 或 ollama:llama3.1(安装 langchain-openai / langchain-ollama)
LABEL_MCP_URL未设置连接到正在运行的 HTTP 服务,而不是启动一个服务

开发

uv sync --extra agent
uv run pytest
npx @modelcontextprotocol/inspector uv run label-image-mcp

在 Image Label 应用仓库中,./start.sh 会以 HTTP 模式在 Web 应用旁运行此服务。 它从 mcp-server/.env 读取凭据。版本发布说明见 PUBLISHING.md。

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。