返回市场
恐龙-X-MCP

恐龙-X-MCP

作者:IDEA-Research104 星标更新:2025-10-28

项目介绍

技术文档摘要

DINO-X MCP Server

License npm version npm downloads PRs Welcome MCP Badge GitHub stars

English | 中文

DINO-X 官方 MCP 服务器——由 DINO-X 和 Grounding DINO 模型驱动——为您的多模态应用程序带来细粒度的对象检测和图像理解。

<p align="center"> <video width="800" controls> <source src="https://dds-frontend.oss-cn-shenzhen.aliyuncs.com/dinox-mcp/dinox-mcp-en-overveiw.mp4" type="video/mp4"> 您的浏览器不支持视频标签。 </video> </p>

为什么选择 DINO-X MCP?

使用 DINO-X MCP,您可以:

  • 细粒度理解:全图检测、对象检测以及区域级别的描述。

  • 结构化输出:获取用于 VQA 和多步推理任务的对象类别、数量、位置和属性。

  • 可组合性:与其他 MCP 服务器无缝协作,构建端到端视觉代理或自动化流水线。

传输模式

DINO-X MCP 支持两种传输模式:

特征STDIO(默认)可流式传输的 HTTP
运行时本地本地或云端
传输标准 I/OHTTP(流式响应)
输入源file://https://https://
可视化支持(保存注释图像到本地)不支持(目前)

快速开始

1. 准备一个 MCP 客户端

任何兼容 MCP 的客户端都可以使用,例如:

2. 获取您的 API 密钥

在 DINO-X 平台上申请:请求 API 密钥(新用户可获得免费配额)。

3. 配置 MCP

选项 A:官方托管的可流式传输的 HTTP(推荐)

添加到您的 MCP 客户端配置中,并替换为您自己的 API 密钥:

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

选项 B:本地使用 NPM 包(STDIO)

首先安装 Node.js

  • nodejs.org 下载安装程序

  • 或使用命令:

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

# 将 nvm 加载到当前 shell(选择您使用的那个)
source ~/.bashrc || true
source ~/.zshrc  || true

# 安装并使用 LTS 版本的 Node.js
nvm install --lts
nvm use --lts

# Windows(以下任选其一)
winget install OpenJS.NodeJS.LTS
# 或使用 Chocolatey(在管理员 PowerShell 中)
iwr -useb https://raw.githubusercontent.com/chocolatey/chocolatey/master/chocolateyInstall/InstallChocolatey.ps1 | iex
choco install nodejs-lts -y

配置您的 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"
      }
    }
  }
}

注意:将 your-api-key-here 替换为您的真实密钥。

选项 C:从源代码本地运行

确保已安装 Node.js(参见选项 B),然后:

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

# 安装依赖
npm install

# 构建
npm run build

配置您的 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"
      }
    }
  }
}

命令行标志与环境变量

  • 常用标志

    • --http:以可流式传输的 HTTP 模式启动(否则默认为 STDIO)
    • --stdio:强制 STDIO 模式
    • --dinox-api-key=...:设置 API 密钥
    • --enable-client-key:允许通过 URL ?key= 提供 API 密钥(仅限可流式传输的 HTTP)
    • --port=8080:HTTP 端口(默认 3020)
  • 环境变量

    • DINOX_API_KEY(必需/条件必需):DINO-X 平台 API 密钥
    • IMAGE_STORAGE_DIRECTORY(可选,STDIO):保存注释图像的目录
    • AUTH_TOKEN(可选,HTTP):如果设置,客户端必须发送 Authorization: Bearer <token>

    示例:

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

# 可流式传输的 HTTP(服务器提供共享 API 密钥)
node build/index.js --http --dinox-api-key=your-api-key

# 可流式传输的 HTTP(自定义端口)
node build/index.js --http --dinox-api-key=  your-api-key --port=8080

# 可流式传输的 HTTP(要求客户端通过 URL 提供 API 密钥)
node build/index.js --http --enable-client-key

当使用 ?key= 时的客户端配置:

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

使用 AUTH_TOKEN 与注入 Authorization: Bearer <token> 的网关:

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

使用 supergateway 的客户端示例:

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

工具

能力工具 ID传输输入输出
全场景对象检测detect-all-objectsSTDIO / HTTP图像 URL类别 + 边界框 + (可选)标题
文本提示对象检测detect-objects-by-textSTDIO / HTTP图像 URL + 英文名词(多个用点分隔,如 person.car目标对象边界框 + (可选)标题
人体姿态估计detect-human-pose-keypointsSTDIO / HTTP图像 URL17个关键点 + 边界框 + (可选)标题
可视化visualize-detection-result仅 STDIO图像 URL + 检测结果数组注释图像的本地路径

🎬 使用案例

🎯 场景📝 输入✨ 输出
检测与定位💬 提示:<br>检测并可视化森林中的<br>火灾区域<br><br>🖼️ 输入图像:<br>1-11-2
物体计数💬 提示:<br>请分析这张<br>仓库图像,检测<br>所有的纸箱,<br>计算总数<br><br>🖼️ 输入图像:<br>2-1<img width="1276" alt="2-2" src="https://gips2.baidu.com/it/u=2501431931,4136915879&fm=3081&app=3081&f=PNG?w=2552&h=1432" />
特征检测💬 提示:<br>找出图像中的所有红色汽车<br><br>🖼️ 输入图像:<br>4-14-2
属性推理💬 提示:<br>找出图像中最高的<br>人,描述他们的<br>着装<br><br>🖼️ 输入图像:<br>5-15-2
全场景检测💬 提示:<br>找出图像中维生素C<br>含量最高的水果<br><br>🖼️ 输入图像:<br>6-16-3<br><br>答案:猕猴桃(93mg/100g)
姿势分析💬 提示:<br>请分析这是什么<br>瑜伽姿势<br><br>🖼️ 输入图像:<br>3-13-3

常见问题

  • 支持的图像来源?
    • STDIO:file://https://
    • 可流式传输的 HTTP:仅 https://
  • 支持的图像格式?
    • jpg, jpeg, webp, png

开发与调试

使用监视模式在开发期间自动重建:

npm run watch

使用 MCP Inspector 进行调试:

npm run inspector

许可证

Apache 许可证 2.0