返回市场
地平线-mcp-服务器

地平线-mcp-服务器

作者:groundlight4 星标更新:2025-06-04

项目介绍

<p align="center"> <img src="resources/images/groundlight_mcp_blog_hero_full.webp" alt="Claude 使用 Groundlight MCP 服务器创建蜂鸟警报应用程序的动画亮点" height=200> </p> <p align="center"> <a href="https://opensource.org/license/apache-2-0"> <img src="https://img.shields.io/badge/License-Apache2.0-yellow?style=for-the-badge" alt="许可证:Apache2.0"> <a href="https://www.groundlight.ai/blog/building-computer-vision-applications-with-the-groundlight-mcp-server"> <img src="https://img.shields.io/badge/阅读更多-博客-orange?style=for-the-badge" alt="阅读更多"> </a> </p> </a> </p>

groundlight-mcp-server by <img src=resources/images/gl_logo.png height=25>

概述

这是一个用于与 Groundlight 交互的模型上下文协议(MCP)服务器。该服务器提供了创建、列出和自定义检测器的工具,提交和列出图像查询,创建、列出和删除警报,以及检查检测器评估指标的功能。

功能和可用工具会随着我们继续开发和改进此服务器而发生变化和扩展。

工具

以下工具在 Groundlight MCP 服务器中可用:

  1. create_detector

    • 描述:根据指定的配置创建一个检测器。支持三种模式:

      1. 二元:对关于图像的自然语言查询回答“是”或“否”。
      2. 多类:基于自然语言查询将图像分类到预定义的类别中。
      3. 计数:使用自然语言描述计算图像中指定对象的出现次数。

      所有检测器分析图像以回答自然语言查询,并返回置信度分数以指示结果的可靠性。如果置信度低于指定阈值,则查询会被升级给人类审核。检测器通过持续从反馈和额外示例中学习来随着时间的推移提高性能。

    • 输入:config(包含名称、查询、置信度阈值、模式及模式特定配置的 DetectorConfig 对象)

    • 返回:Detector 对象

  2. get_detector

    • 描述:通过其 ID 获取检测器。
    • 输入:detector_id(字符串)
    • 返回:Detector 对象
  3. list_detectors

    • 描述:列出当前用户关联的所有检测器。
    • 输入:无
    • 返回:Detector 对象列表
  4. submit_image_query

    • 描述:提交一张图像供指定的检测器回答。图像可以作为文件路径、URL 或原始字节提供。检测器将返回带有标签和置信度分数的响应。
    • 输入:detector_id(字符串),image(字符串或字节)
    • 返回:ImageQuery 对象
  5. get_image_query

    • 描述:通过其 ID 获取现有的图像查询。
    • 输入:image_query_id(字符串)
    • 返回:ImageQuery 对象
  6. list_image_queries

    • 描述:列出与指定检测器相关的所有图像查询。请注意,这可能会返回大量结果。
    • 输入:detector_id(字符串)
    • 返回:ImageQuery 对象列表
  7. get_image

    • 描述:通过其 ID 获取与图像查询关联的图像。可选地,如果有边界框信息,可以在图像上进行标注。
    • 输入:image_query_id(字符串),annotate(布尔值,默认:false)
    • 返回:Image 对象
  8. create_alert

    • 描述:为检测器创建警报,当满足特定条件时触发操作。
    • 输入:config(包含名称、检测器ID、条件及可选的 webhook 操作、电子邮件操作、文本操作、启用状态和是否需要人类审核字段的 AlertConfig 对象)
    • 返回:Rule 对象
  9. list_alerts

    • 描述:列出系统中的所有警报(规则)。(注意:当前实现未按检测器过滤。)
    • 输入:page(整数,默认:1),page_size(整数,默认:110)
    • 返回:Rule 对象列表
  10. delete_alert

    • 描述:通过其警报ID删除警报(规则)。
    • 输入:alert_id(字符串)
    • 返回:无
  11. add_label

    • 描述:为图像查询提供标签(注释)。这用于训练检测器或纠正结果。对于计数检测器,您可以选择提供感兴趣区域。
    • 输入:image_query_id(字符串),label(整数或字符串),rois(可选列表)
    • 返回:无
  12. get_detector_evaluation_metrics

    • 描述:获取检测器的详细评估指标,包括混淆矩阵和示例。
    • 输入:detector_id(字符串)
    • 返回:评估指标字典
  13. update_detector_confidence_threshold

    • 描述:更新检测器的置信度阈值。
    • 输入:detector_id(字符串),confidence_threshold(浮点数)
    • 返回:无
  14. update_detector_escalation_type

    • 描述:更新检测器的升级类型。这决定了何时将查询发送给人类审核。选项:'STANDARD'(基于置信度阈值升级)或 'NO_HUMAN_LABELING'(永不升级)。
    • 输入:detector_id(字符串),escalation_type(字符串,'STANDARD' 或 'NO_HUMAN_LABELING')
    • 返回:无

配置

与 Claude Desktop 的使用

在您的 claude_desktop_config.json 中添加以下内容:

"mcpServers": {
  "groundlight": {
    "command": "docker",
    "args": ["run", "--rm", "-i", "-e", "GROUNDLIGHT_API_TOKEN", "groundlight/groundlight-mcp-server"],
    "env": {
        "GROUNDLIGHT_API_TOKEN": "YOUR_API_TOKEN_HERE"
    }
  }
}

与 Zed 的使用

在您的 settings.json 中添加以下内容:

{
  "context_servers": {
    "groundlight": {
      "command": {
        "path": "docker",
        "args": [
          "run",
          "--rm",
          "-i",
          "-e",
          "GROUNDLIGHT_API_TOKEN",
          "groundlight/groundlight-mcp-server"
        ],
        "env": {
          "GROUNDLIGHT_API_TOKEN": "YOUR_API_TOKEN_HERE"
        }
      }
    }
  }
}

开发

本地构建 Docker 镜像:

make build-docker

本地运行 Docker 镜像:

make run-docker

[Groundlight 内部] 将 Docker 镜像推送到 Docker Hub(需要 DockerHub 凭证):

make push-docker