DINO-X

oficial

Servidor MCP avanzado de visión por computadora y detección de objetos impulsado por Dino-X, que permite a los agentes de IA analizar imágenes, detectar objetos, identificar puntos clave y realizar tareas de comprensión visual.

¿Qué puedes hacer con DINO X MCP?

  • Detectar todos los objetos en una escena — Pídele al asistente que identifique cada objeto en una imagen con categorías y cuadros delimitadores usando detect-all-objects.
  • Encontrar objetos mediante un mensaje de texto — Solicita la detección de elementos específicos (ej., “person.car”) en una imagen a través de detect-objects-by-text.
  • Estimar puntos clave de la pose humana — Obtén 17 puntos clave del cuerpo y cuadros delimitadores para personas en una imagen con detect-human-pose-keypoints.
  • Generar visualizaciones anotadas — Produce una imagen con los resultados de detección dibujados en ella usando visualize-detection-result (solo modo STDIO).

Documentación

Servidor MCP DINO-X

License npm version npm downloads PRs Welcome MCP Badge GitHub stars

English | 中文

El Servidor MCP Oficial de DINO-X — impulsado por los modelos DINO-X y Grounding DINO — ofrece detección de objetos detallada y comprensión de imágenes para tus aplicaciones multimodales.

Tu navegador no soporta la etiqueta de video.

¿Por qué DINO-X MCP?

Con DINO-X MCP, puedes:

  • Comprensión Detallada: Detección completa de imágenes, detección de objetos y descripciones a nivel de región.

  • Salidas Estructuradas: Obtén categorías de objetos, conteos, ubicaciones y atributos para tareas de VQA y razonamiento de múltiples pasos.

  • Componible: Funciona perfectamente con otros servidores MCP para construir agentes visuales de extremo a extremo o pipelines de automatización.

Modos de Transporte

DINO-X MCP soporta dos modos de transporte:

CaracterísticaSTDIO (predeterminado)HTTP Transmisible
Tiempo de ejecuciónLocalLocal o Nube
TransporteE/S estándarHTTP (respuestas en streaming)
Fuente de entradafile:// y https://Solo https://
VisualizaciónSoportada (guarda imágenes anotadas localmente)No soportada (por ahora)

Inicio Rápido

1. Prepara un cliente MCP

Cualquier cliente compatible con MCP funciona, por ejemplo:

2. Obtén tu clave API

Solicítala en la plataforma DINO-X: Solicitar Clave API (los nuevos usuarios obtienen cuota gratuita).

3. Configurar MCP

Opción A: HTTP Transmisible Alojado Oficial (Recomendado)

Añade a la configuración de tu cliente MCP y reemplaza con tu clave API:

{
  "mcpServers": {
    "dinox-mcp": {
      "url": "https://mcp.deepdataspace.com/mcp?key=your-api-key"
    }
  }
}

Opción B: Usar el paquete NPM localmente (STDIO)

Instala Node.js primero

  • Descarga el instalador desde nodejs.org

  • O usa el comando:

# macOS / Linux
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
# or
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash

# load nvm into current shell (choose the one you use)
source ~/.bashrc || true
source ~/.zshrc  || true

# install and use LTS Node.js
nvm install --lts
nvm use --lts

# Windows (one of the following)
winget install OpenJS.NodeJS.LTS
# or with Chocolatey (in admin PowerShell)
iwr -useb https://raw.githubusercontent.com/chocolatey/chocolatey/master/chocolateyInstall/InstallChocolatey.ps1 | iex
choco install nodejs-lts -y

Configura tu cliente MCP:

{
  "mcpServers": {
    "dinox-mcp": {
      "command": "npx",
      "args": ["-y", "@deepdataspace/dinox-mcp"],
      "env": {
        "DINOX_API_KEY": "your-api-key-here",
        "IMAGE_STORAGE_DIRECTORY": "/path/to/your/image/directory"
      }
    }
  }
}

Nota: Reemplaza your-api-key-here con tu clave real.

Opción C: Ejecutar desde el código fuente localmente

Asegúrate de que Node.js esté instalado (ver Opción B), luego:

# clone
git clone https://github.com/IDEA-Research/DINO-X-MCP.git
cd DINO-X-MCP

# install deps
npm install

# build
npm run build

Configura tu cliente MCP:

{
  "mcpServers": {
    "dinox-mcp": {
      "command": "node",
      "args": ["/path/to/DINO-X-MCP/build/index.js"],
      "env": {
        "DINOX_API_KEY": "your-api-key-here",
        "IMAGE_STORAGE_DIRECTORY": "/path/to/your/image/directory"
      }
    }
  }
}

Banderas CLI y Variables de Entorno

  • Banderas comunes

    • --http: iniciar en modo HTTP Transmisible (de lo contrario, STDIO por defecto)
    • --stdio: forzar modo STDIO
    • --dinox-api-key=...: establecer clave API
    • --enable-client-key: permitir clave API a través de URL ?key= (solo HTTP Transmisible)
    • --port=8080: puerto HTTP (predeterminado 3020)
  • Variables de entorno

    • DINOX_API_KEY (requerido/condicionalmente requerido): clave API de la plataforma DINO-X
    • IMAGE_STORAGE_DIRECTORY (opcional, STDIO): directorio para guardar imágenes anotadas
    • AUTH_TOKEN (opcional, HTTP): si se establece, el cliente debe enviar Authorization: Bearer <token>

    Ejemplos:

# STDIO (local)
node build/index.js --dinox-api-key=your-api-key

# Streamable HTTP (server provides a shared API key)
node build/index.js --http --dinox-api-key=your-api-key

# Streamable HTTP (custom port)
node build/index.js --http --dinox-api-key=your-api-key --port=8080

# Streamable HTTP (require client-provided API key via URL)
node build/index.js --http --enable-client-key

Configuración del cliente al usar ?key=:

{
  "mcpServers": {
    "dinox-mcp": {
      "url": "http://localhost:3020/mcp?key=your-api-key"
    }
  }
}

Usando AUTH_TOKEN con un gateway que inyecta Authorization: Bearer <token>:

AUTH_TOKEN=my-token node build/index.js --http --enable-client-key

Ejemplo de cliente con supergateway:

{
  "mcpServers": {
    "dinox-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "supergateway",
        "--streamableHttp",
        "http://localhost:3020/mcp?key=your-api-key",
        "--oauth2Bearer",
        "my-token"
      ]
    }
  }
}

Herramientas

CapacidadID de HerramientaTransporteEntradaSalida
Detección de objetos en escena completadetect-all-objectsSTDIO / HTTPURL de imagenCategoría + bbox + (opcional) descripciones
Detección de objetos por textodetect-objects-by-textSTDIO / HTTPURL de imagen + sustantivos en inglés (separados por punto para múltiples, ej., person.car)bbox del objeto objetivo + (opcional) descripciones
Estimación de pose humanadetect-human-pose-keypointsSTDIO / HTTPURL de imagen17 puntos clave + bbox + (opcional) descripciones
Visualizaciónvisualize-detection-resultSolo STDIOURL de imagen + array de resultados de detecciónRuta local a la imagen anotada

🎬 Casos de Uso

🎯 Escenario📝 Entrada✨ Salida
Detección y Localización💬 Prompt:
Detect and visualize the
fire areas in the forest

🖼️ Imagen de Entrada:
1-1
1-2
Conteo de Objetos💬 Prompt:
Please analyze this
warehouse image, detect
all the cardboard boxes,
count the total number

🖼️ Imagen de Entrada:
2-1
2-2
Detección de Características💬 Prompt:
Find all red cars
in the image

🖼️ Imagen de Entrada:
4-1
4-2
Razonamiento de Atributos💬 Prompt:
Find the tallest person
in the image, describe
their clothing

🖼️ Imagen de Entrada:
5-1
5-2
Detección de Escena Completa💬 Prompt:
Find the fruit with
the highest vitamin C
content in the image

🖼️ Imagen de Entrada:
6-1
6-3

Respuesta: Kiwi (93mg/100g)
Análisis de Pose💬 Prompt:
Please analyze what
yoga pose this is

🖼️ Imagen de Entrada:
3-1
3-3

FAQ

  • ¿Fuentes de imagen soportadas?
    • STDIO: file:// y https://
    • HTTP Transmisible: solo https://
  • ¿Formatos de imagen soportados?
    • jpg, jpeg, webp, png

Desarrollo y Depuración

Usa el modo observador para reconstruir automáticamente durante el desarrollo:

npm run watch

Usa MCP Inspector para depuración:

npm run inspector

Licencia

Licencia Apache 2.0