DINO-X
officielServeur MCP avancé de vision par ordinateur et de détection d'objets propulsé par Dino-X, permettant aux agents IA d'analyser des images, de détecter des objets, d'identifier des points clés et d'effectuer des tâches de compréhension visuelle.
Que pouvez-vous faire avec DINO X MCP ?
- Détecter tous les objets dans une scène — Demandez à l'assistant d'identifier chaque objet dans une image avec des catégories et des boîtes englobantes à l'aide de
detect-all-objects. - Trouver des objets par invite textuelle — Demandez la détection d'éléments spécifiques (par exemple, « personne.voiture ») dans une image via
detect-objects-by-text. - Estimer les points clés de la pose humaine — Obtenez 17 points clés du corps et des boîtes englobantes pour les personnes dans une image avec
detect-human-pose-keypoints. - Générer des visualisations annotées — Produisez une image avec les résultats de détection dessinés dessus à l'aide de
visualize-detection-result(mode STDIO uniquement).
Documentation
Serveur MCP DINO-X
English | 中文
Le serveur MCP officiel DINO-X — propulsé par les modèles DINO-X et Grounding DINO — apporte une détection d'objets fine et une compréhension d'image à vos applications multimodales.
Pourquoi DINO-X MCP ?
Avec DINO-X MCP, vous pouvez :
-
Compréhension fine : Détection complète d'image, détection d'objets et descriptions au niveau des régions.
-
Sorties structurées : Obtenez les catégories d'objets, le nombre, les emplacements et les attributs pour les tâches de VQA et de raisonnement en plusieurs étapes.
-
Composable : Fonctionne de manière transparente avec d'autres serveurs MCP pour construire des agents visuels de bout en bout ou des pipelines d'automatisation.
Modes de transport
DINO-X MCP prend en charge deux modes de transport :
| Fonctionnalité | STDIO (par défaut) | HTTP streamable |
|---|---|---|
| Exécution | Local | Local ou Cloud |
| Transport | Entrée/Sortie standard | HTTP (réponses en streaming) |
| Source d'entrée | file:// et https:// | https:// uniquement |
| Visualisation | Prise en charge (enregistre les images annotées localement) | Non prise en charge (pour l'instant) |
Démarrage rapide
1. Préparez un client MCP
Tout client compatible MCP fonctionne, par exemple :
2. Obtenez votre clé API
Faites une demande sur la plateforme DINO-X : Demander une clé API (les nouveaux utilisateurs bénéficient d'un quota gratuit).
3. Configurer MCP
Option A : HTTP streamable hébergé officiel (Recommandé)
Ajoutez à la configuration de votre client MCP et remplacez par votre clé API :
{
"mcpServers": {
"dinox-mcp": {
"url": "https://mcp.deepdataspace.com/mcp?key=your-api-key"
}
}
}
Option B : Utiliser le package NPM localement (STDIO)
Installez Node.js d'abord
-
Téléchargez l'installateur depuis nodejs.org
-
Ou utilisez la commande :
# 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
Configurez votre client 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"
}
}
}
}
Remarque : Remplacez your-api-key-here par votre vraie clé.
Option C : Exécuter à partir des sources localement
Assurez-vous que Node.js est installé (voir Option B), puis :
# clone
git clone https://github.com/IDEA-Research/DINO-X-MCP.git
cd DINO-X-MCP
# install deps
npm install
# build
npm run build
Configurez votre client 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"
}
}
}
}
Options CLI et variables d'environnement
-
Options communes
--http: démarrer en mode HTTP streamable (sinon STDIO par défaut)--stdio: forcer le mode STDIO--dinox-api-key=...: définir la clé API--enable-client-key: autoriser la clé API via l'URL?key=(HTTP streamable uniquement)--port=8080: port HTTP (par défaut 3020)
-
Variables d'environnement
DINOX_API_KEY(obligatoire/conditionnellement obligatoire) : clé API de la plateforme DINO-XIMAGE_STORAGE_DIRECTORY(optionnel, STDIO) : répertoire pour enregistrer les images annotéesAUTH_TOKEN(optionnel, HTTP) : si défini, le client doit envoyerAuthorization: Bearer <token>
Exemples :
# 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
Configuration client lors de l'utilisation de ?key= :
{
"mcpServers": {
"dinox-mcp": {
"url": "http://localhost:3020/mcp?key=your-api-key"
}
}
}
Utilisation de AUTH_TOKEN avec une passerelle qui injecte Authorization: Bearer <token> :
AUTH_TOKEN=my-token node build/index.js --http --enable-client-key
Exemple client avec supergateway :
{
"mcpServers": {
"dinox-mcp": {
"command": "npx",
"args": [
"-y",
"supergateway",
"--streamableHttp",
"http://localhost:3020/mcp?key=your-api-key",
"--oauth2Bearer",
"my-token"
]
}
}
}
Outils
| Capacité | ID de l'outil | Transport | Entrée | Sortie |
|---|---|---|---|---|
| Détection d'objets en scène complète | detect-all-objects | STDIO / HTTP | URL de l'image | Catégorie + bbox + (optionnel) légendes |
| Détection d'objets par invite textuelle | detect-objects-by-text | STDIO / HTTP | URL de l'image + noms anglais (séparés par des points pour plusieurs, par ex., person.car) | bbox de l'objet cible + (optionnel) légendes |
| Estimation de pose humaine | detect-human-pose-keypoints | STDIO / HTTP | URL de l'image | 17 points clés + bbox + (optionnel) légendes |
| Visualisation | visualize-detection-result | STDIO uniquement | URL de l'image + tableau de résultats de détection | Chemin local vers l'image annotée |
🎬 Cas d'utilisation
| 🎯 Scénario | 📝 Entrée | ✨ Sortie |
|---|---|---|
| Détection et localisation | 💬 Invite :Detect and visualize the fire areas in the forest 🖼️ Image d'entrée : | |
| Comptage d'objets | 💬 Invite :Please analyze thiswarehouse image, detectall the cardboard boxes,count the total number🖼️ Image d'entrée : | |
| Détection de caractéristiques | 💬 Invite :Find all red carsin the image🖼️ Image d'entrée : | |
| Raisonnement sur les attributs | 💬 Invite :Find the tallest personin the image, describetheir clothing🖼️ Image d'entrée : | |
| Détection de scène complète | 💬 Invite :Find the fruit withthe highest vitamin Ccontent in the image🖼️ Image d'entrée : | Réponse : Kiwi (93mg/100g) |
| Analyse de pose | 💬 Invite :Please analyze whatyoga pose this is🖼️ Image d'entrée : |
FAQ
- Sources d'image prises en charge ?
- STDIO :
file://ethttps:// - HTTP streamable :
https://uniquement
- STDIO :
- Formats d'image pris en charge ?
- jpg, jpeg, webp, png
Développement et débogage
Utilisez le mode surveillance pour reconstruire automatiquement pendant le développement :
npm run watch
Utilisez MCP Inspector pour le débogage :
npm run inspector
Licence
Licence Apache 2.0