DINO-X

oficial

Servidor MCP avançado de visão computacional e detecção de objetos, alimentado pelo Dino-X, permitindo que agentes de IA analisem imagens, detectem objetos, identifiquem pontos-chave e realizem tarefas de compreensão visual.

O que você pode fazer com DINO X MCP?

  • Detectar todos os objetos em uma cena — Peça ao assistente para identificar todos os objetos em uma imagem com categorias e caixas delimitadoras usando detect-all-objects.
  • Encontrar objetos por texto — Solicite a detecção de itens específicos (ex.: “pessoa.carro”) em uma imagem via detect-objects-by-text.
  • Estimar pontos-chave de pose humana — Obtenha 17 pontos-chave do corpo e caixas delimitadoras para pessoas em uma imagem com detect-human-pose-keypoints.
  • Gerar visualizações anotadas — Produza uma imagem com os resultados da detecção desenhados nela usando visualize-detection-result (apenas modo STDIO).

Documentação

Servidor MCP DINO-X

License npm version npm downloads PRs Welcome MCP Badge GitHub stars

English | 中文

Servidor MCP Oficial DINO-X — com tecnologia dos modelos DINO-X e Grounding DINO — oferece detecção refinada de objetos e compreensão de imagens para suas aplicações multimodais.

Seu navegador não suporta a tag de vídeo.

Por que DINO-X MCP?

Com o DINO-X MCP, você pode:

  • Compreensão Refinada: Detecção completa de imagem, detecção de objetos e descrições em nível de região.

  • Saídas Estruturadas: Obtenha categorias de objetos, contagens, localizações e atributos para tarefas de VQA e raciocínio em múltiplas etapas.

  • Componível: Funciona perfeitamente com outros servidores MCP para construir agentes visuais ponta a ponta ou pipelines de automação.

Modos de Transporte

O DINO-X MCP suporta dois modos de transporte:

FuncionalidadeSTDIO (padrão)HTTP Transmissível
Tempo de ExecuçãoLocalLocal ou Nuvem
TransporteE/S PadrãoHTTP (respostas em streaming)
Fonte de Entradafile:// e https://Apenas https://
VisualizaçãoSuportada (salva imagens anotadas localmente)Não suportada (por enquanto)

Início Rápido

1. Prepare um cliente MCP

Qualquer cliente compatível com MCP funciona, por exemplo:

2. Obtenha sua chave de API

Solicite na plataforma DINO-X: Solicitar Chave de API (novos usuários recebem cota gratuita).

3. Configurar MCP

Opção A: HTTP Transmissível Hospedado Oficial (Recomendado)

Adicione à configuração do seu cliente MCP e substitua pela sua chave de API:

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

Opção B: Usar o pacote NPM localmente (STDIO)

Instale o Node.js primeiro

  • Baixe o instalador em nodejs.org

  • Ou use o 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

Configure seu 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: Substitua your-api-key-here pela sua chave real.

Opção C: Executar a partir do código-fonte localmente

Certifique-se de que o Node.js está instalado (veja a Opção B), então:

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

# install deps
npm install

# build
npm run build

Configure seu 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"
      }
    }
  }
}

Flags de CLI e Variáveis de Ambiente

  • Flags comuns

    • --http: iniciar no modo HTTP Transmissível (caso contrário, STDIO por padrão)
    • --stdio: forçar modo STDIO
    • --dinox-api-key=...: definir chave de API
    • --enable-client-key: permitir chave de API via URL ?key= (apenas HTTP Transmissível)
    • --port=8080: porta HTTP (padrão 3020)
  • Variáveis de ambiente

    • DINOX_API_KEY (obrigatória/condicionalmente obrigatória): chave de API da plataforma DINO-X
    • IMAGE_STORAGE_DIRECTORY (opcional, STDIO): diretório para salvar imagens anotadas
    • AUTH_TOKEN (opcional, HTTP): se definida, o cliente deve enviar Authorization: Bearer <token>

    Exemplos:

# 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

Configuração do cliente ao usar ?key=:

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

Usando AUTH_TOKEN com um gateway que injeta Authorization: Bearer <token>:

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

Exemplo de cliente com supergateway:

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

Ferramentas

CapacidadeID da FerramentaTransporteEntradaSaída
Detecção de objetos em cena completadetect-all-objectsSTDIO / HTTPURL da imagemCategoria + bbox + (opcional) legendas
Detecção de objetos por prompt de textodetect-objects-by-textSTDIO / HTTPURL da imagem + substantivos em inglês (separados por ponto para múltiplos, ex.: person.car)bbox do objeto alvo + (opcional) legendas
Estimativa de pose humanadetect-human-pose-keypointsSTDIO / HTTPURL da imagem17 pontos-chave + bbox + (opcional) legendas
Visualizaçãovisualize-detection-resultApenas STDIOURL da imagem + array de resultados de detecçãoCaminho local para a imagem anotada

🎬 Casos de Uso

🎯 Cenário📝 Entrada✨ Saída
Detecção e Localização💬 Prompt:
Detect and visualize the
fire areas in the forest

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

🖼️ Imagem de Entrada:
2-1
2-2
Detecção de Características💬 Prompt:
Find all red cars
in the image

🖼️ Imagem de Entrada:
4-1
4-2
Raciocínio de Atributos💬 Prompt:
Find the tallest person
in the image, describe
their clothing

🖼️ Imagem de Entrada:
5-1
5-2
Detecção de Cena Completa💬 Prompt:
Find the fruit with
the highest vitamin C
content in the image

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

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

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

FAQ

  • Fontes de imagem suportadas?
    • STDIO: file:// e https://
    • HTTP Transmissível: apenas https://
  • Formatos de imagem suportados?
    • jpg, jpeg, webp, png

Desenvolvimento e Depuração

Use o modo de observação para reconstruir automaticamente durante o desenvolvimento:

npm run watch

Use o MCP Inspector para depuração:

npm run inspector

Licença

Licença Apache 2.0