groundlight-mcp-server by 
Overview
A Model Context Protocol (MCP) server for interacting with Groundlight. This server provides tools to create, list and customize Detectors, submit and list ImageQueries, create, list and delete Alerts, and examine detector evaluation metrics.
The functionality and available tools are subject to change and expansion as we continue to develop and improve this server.
Tools
The following tools are available in the Groundlight MCP server:
-
create_detector
-
Description: Create a detector based on the specified configuration. Supports three modes:
- Binary: Answers 'yes' or 'no' to a natural-language query about images.
- Multiclass: Classifies images into predefined categories based on natural-language queries.
- Counting: Counts occurrences of specified objects in images using natural-language descriptions.
All detectors analyze images to answer natural-language queries and return confidence scores indicating result reliability. If confidence falls below the specified threshold, the query is escalated to human review. Detectors improve over time through continuous learning from feedback and additional examples.
-
Input:
config(DetectorConfig object with name, query, confidence_threshold, mode, and mode-specific configuration) -
Returns:
Detectorobject
-
-
get_detector
- Description: Get a detector by its ID.
- Input:
detector_id(string) - Returns:
Detectorobject
-
list_detectors
- Description: List all detectors associated with the current user.
- Input: None
- Returns: List of
Detectorobjects
-
submit_image_query
- Description: Submit an image to be answered by the specified detector. The image can be provided as a file path, URL, or raw bytes. The detector will return a response with a label and confidence score.
- Input:
detector_id(string),image(string or bytes) - Returns:
ImageQueryobject
-
get_image_query
- Description: Get an existing image query by its ID.
- Input:
image_query_id(string) - Returns:
ImageQueryobject
-
list_image_queries
- Description: List all image queries associated with the specified detector. Note that this may return a large number of results.
- Input:
detector_id(string) - Returns: List of
ImageQueryobjects
-
get_image
- Description: Get the image associated with an image query by its ID. Optionally annotate with bounding boxes on the image if available.
- Input:
image_query_id(string),annotate(boolean, default: false) - Returns:
Imageobject
-
create_alert
- Description: Create an alert for a detector that triggers actions when specific conditions are met.
- Input:
config(AlertConfig object with name, detector_id, condition, and optional webhook_action, email_action, text_action, enabled, and human_review_required fields) - Returns:
Ruleobject
-
list_alerts
- Description: List all alerts (rules) in the system. (Note: Not filtered by detector in the current implementation.)
- Input:
page(integer, default: 1),page_size(integer, default: 100) - Returns: List of
Ruleobjects
-
delete_alert
- Description: Delete an alert (rule) by its alert ID.
- Input:
alert_id(string) - Returns: None
-
add_label
- Description: Provide a label (annotation) for an image query. This is used for training detectors or correcting results. For counting detectors, you can optionally provide regions of interest.
- Input:
image_query_id(string),label(integer or string),rois(optional list) - Returns: None
-
get_detector_evaluation_metrics
- Description: Get detailed evaluation metrics for a detector, including confusion matrix and examples.
- Input:
detector_id(string) - Returns: Dictionary of evaluation metrics
-
update_detector_confidence_threshold
- Description: Update the confidence threshold for a detector.
- Input:
detector_id(string),confidence_threshold(float) - Returns: None
-
update_detector_escalation_type
- Description: Update the escalation type for a detector. This determines when queries are sent for human review. Options: 'STANDARD' (escalate based on confidence threshold) or 'NO_HUMAN_LABELING' (never escalate).
- Input:
detector_id(string),escalation_type(string, either "STANDARD" or "NO_HUMAN_LABELING") - Returns: None
Configuration
Usage with Claude Desktop
Add this to your 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"
}
}
}
Usage with Zed
Add this to your 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"
}
}
}
}
}
Development
Build the Docker image locally:
make build-docker
Run the Docker image locally:
make run-docker
[Groundlight Internal] Push the Docker image to Docker Hub (requires DockerHub credentials):
make push-docker
s
Recommend MCP Servers 💡
itemit-mcp
An MCP server bridging itemit asset management API with the MCP ecosystem for asset tracking
unsplash-mcp-server
An MCP server that provides tools for interacting with the Unsplash API to search for and download photos.
git-mcp Docs
A documentation server for GitMCP that provides MCP integration via SSE endpoint
@freema/mcp-design-system-extractor
MCP (Model Context Protocol) server that enables AI assistants to interact with Storybook design systems. Extract component HTML, analyze styles, and help with design system adoption and refactoring.
mcp-jira-server
Comprehensive MCP server for Jira integration with Claude Code
ai-agent-marketplace-index-mcp
An MCP server that allows AI assistants to search and discover available AI agents from the DeepNLP AI Agent Marketplace Index by keywords or categories, and monitor their web traffic performance.