Skip to main content
Glama

1. MCP とは何ですか?

MCP (Model Context Protocol) は、Anthropic が開発した通信プロトコル (2024 年 11 月にオープンソース化) であり、大規模な言語モデル (DeepSeek-V3-0324、DeepSeek-R1、Qwen3 など) が外部データ/ツール/サービスに効率的にアクセスして、より正確でインテリジェントな応答を提供できるようになります。

主な機能:

コンテキストプロビジョニング: ファイル/データベースの内容を補足コンテキストとして配信する例: 回答前にレポートを分析する

外部ツールの統合: ローカル/リモートシステム (ファイル、API、ハードウェア) を直接操作する例: 自動化されたドキュメントの整理

ワークフロー自動化: 複雑なタスクに複数の MCP サービスを組み合わせる

データセキュリティ: ローカル実行により機密情報を保護

Related MCP server: Unitree Go2 MCP Server

2. MCPの仕組み

クライアントサーバーアーキテクチャ:

MCPクライアント: AIアプリケーション(リクエストを開始) MCPサーバー: データ/ツールインターフェースを提供 通信: JSON-RPC 2.0準拠

3. サーバー機能

データアクセス: ファイル/データベース/メモリリソース ツール実行: 定義済み関数 (SQL クエリ、ファイル操作) リアルタイム更新: データ変更のプッシュ通知 セッション管理: 接続の維持

2. nUR MCPサーバーのコア機能

Tuode Technologyの自社開発製品nUR_MCP_SERVERの技術仕様

製品概要:
nUR_MCP_SERVERは、MCP(モデル制御プロトコル)インターフェースを基盤とするインテリジェントロボット制御ミドルウェアシステムです。大規模言語モデル(LLM)との統合により、自然言語によるインタラクティブな産業用ロボット制御を実現します。クライアントサーバーアーキテクチャを採用し、Universal Robotsの協働ロボット全製品との緊密な統合をサポートし、従来のティーチペンダントを用いた産業用ロボットのプログラミングパラダイムに革命をもたらします。

コア技術アーキテクチャ:

  1. セマンティック解析エンジン
    多層TransformerベースのNLP処理モジュールを搭載し、コンテキスト認識コマンド解析(Contextual Command Parsing)をサポートし、自然言語からロボット制御コマンドへのエンドツーエンドの変換を98.6%のコマンド認識精度で実現します。

  2. 動的スクリプト生成システム
    自然言語コマンドをURScriptロボット制御スクリプトに自動変換するLLMベースのコード生成フレームワーク。リアルタイムの構文検証と安全性検証をサポートし、従来のプログラミング言語と比較して生成効率を12倍向上させます。

  3. マルチモーダル制御インターフェース

  • MCP プロトコル拡張層: µs レベルのコマンド応答を備えたデュアルモード TCP/UDP 通信をサポートします。

  • デバイス抽象化レイヤー: URCap プラグインの統合を標準化します。

  • データ バス: TCP/IP イーサネット プロトコルを介して複数のロボットの協調制御を可能にします。

コア機能:
▶ 自然言語リアルタイム制御
音声/テキスト コマンドを介してロボットの動作 (ポーズ制御、軌道計画、I/O 操作) を直接制御し、動的なパラメータの挿入とリアルタイムの動作調整をサポートします。

▶ インテリジェントデータ収集システム

  • 12 次元の状態データ (関節トルク、エンドエフェクタのポーズなど) をリアルタイムで収集します。

  • 自然言語で定義されたデータ フィルタリング ルールをサポートします。

  • 構造化データ レポート (CSV/JSON/XLSX) を自動的に生成します。

▶ 複数ロボットの協調制御
分散タスク スケジューリング アルゴリズムに基づき、Tuode の MCP クライアントとペアリングすると、最大 12 台の UR ロボットを同時に管理でき、音声カスケード コマンドとデバイス間のタスク オーケストレーションをサポートします。

▶ アダプティブラーニングモジュール
システム反復サイクルが 24 時間以内で、ユーザーからのフィードバックを通じてコマンドとアクションのマッピングを継続的に最適化する増分トレーニング フレームワークを備えています。

技術仕様:

  • コマンド応答遅延: <200 ミリ秒 (エンドツーエンド)。

  • プロトコル互換性: MCP v2.1+ / URScript v5.0+。

  • 同時処理能力: 200 TPS 以上。

nUR_MCP_SERVERツールの機能分類表:

ツールID

機能カテゴリ

機能説明

主なパラメータ

fkUCFg7YmxSflgfmJawHeo

接続管理

URロボットに接続する

ip:ロボットIP

fcr4pIqoIXyxh3ko9FOsWU

接続管理

URロボットを切断する

ip:ロボットIP

fNKAydKkxHwmGFgyrePBsN

ステータス監視

電源オン時間(秒)を取得します

ip:ロボットIP

fYTMsGvSRpUdWmURng7kGX

レジスタ操作

Intレジスタ出力を取得する(0-23)

ip:ロボットIP、index:レジスタインデックス

fvfqDMdDJer6kpbCzwFL1D

レジスタ操作

ダブルレジスタ出力(0-23)を取得する

ip:ロボットIP、index:レジスタインデックス

fCJ6sRw9m0ArdZ-MCaeNWK

レジスタ操作

ダブルレジスタ出力(0-31)を取得します

ip:ロボットIP、index:レジスタインデックス

f_ZXAIUv-eqHelwWxrzDHe

デバイス情報

シリアル番号を取得する

ip:ロボットIP

fZ2ALt5kD50gV9AdEgBrRO

デバイス情報

モデルを取得

ip:ロボットIP

fEtHcw5RNF54X9RYIEU-1m

モーションコントロール

リアルタイムTCP座標を取得する

ip:ロボットIP

ftsb2AsiqiPqSBxHIwALOx

モーションコントロール

リアルタイムの関節角度を取得する

ip:ロボットIP

fXmkr4PLkHKF0wgQGEHzLt

モーションコントロール

ジョイントポーズコマンドを送信する

ip:ロボットIP、q:関節角度(ラジアン)

fWdukQrgFZeK-DEcST4AwO

モーションコントロール

TCP直線移動コマンドを送信する

ip:ロボットのIP、pose:TCP位置

f2gbgju7QsymJa4wPgZQ0T

モーションコントロール

X軸直線移動

ip:ロボットのIP、distance:移動距離(メートル)

fS6rCxVp498s5edU7jCMB3

モーションコントロール

Y軸直線移動

ip:ロボットのIP、distance:移動距離(メートル)

fJps7j-T3lwzXhp8p0_suy

モーションコントロール

Z軸直線移動

ip:ロボットのIP、distance:移動距離(メートル)

fTMj5413O5CzsORAyBYXj8

プログラム制御

URプログラムをロードする

ip:ロボットのIP、program_name:プログラム名

fqiYJ1c9fqCs5eYd-yKEeJ

プログラム制御

URプログラムをロードして実行する

ip:ロボットのIP、program_name:プログラム名

fW6-wrPoqm2bE3bMgtLbLP

プログラム制御

現在のプログラムを停止

ip:ロボットIP

fsEmm-VX3CCY_XvnCDms7f

プログラム制御

現在のプログラムを一時停止

ip:ロボットIP

f83-fUQBd-YRSdIQDpuYmW

ステータス監視

現在の電圧を取得する

ip:ロボットIP

foMoD2L690vRdQxdW_gRNl

ステータス監視

現在の電流を取得

ip:ロボットIP

fDZBXqofuIb-7IjS6t2YJ2

ステータス監視

ジョイント電圧を取得する

ip:ロボットIP

fgAa_kwSmXmvld6Alx39ij

ステータス監視

ジョイント電流を取得する

ip:ロボットIP

ファーAKHVnYvORJ9R7N7vpbl

ステータス監視

関節温度を取得する

ip:ロボットIP

fuNb7TgOgWNukjAVjusMN4

ステータス監視

操作ステータスを取得する

ip:ロボットIP

fD12XJtqjgI46Oufwt928c

ステータス監視

プログラム実行ステータスを取得する

ip:ロボットIP

fMLa2mjlactTbD_CCKB1tX

デバイス情報

ソフトウェアバージョンを取得する

ip:ロボットIP

fWXQKGQ6J5mas9K9mGPK3x

デバイス情報

安全モードを取得する

ip:ロボットIP

f81vKugz9xnncjirTC3B6A

プログラム制御

プログラムリストを取得する

ip:ロボットのIP、ユーザー名/パスワード:SSH認証情報

ffaaQZeknwwTISLYdYqM0_

プログラム制御

プログラムスクリプトを送信

ip:ロボットIP、script:スクリプトコンテンツ

fsWlT3tCOn1ub-kUZCrq7E

モーションコントロール

円運動

ip:ロボットのIP、center:TCPの中心位置、r:半径(メートル)

f7y1QpjnA9s1bzfLeOkTnS

モーションコントロール

正方形を描く

ip:ロボットのIP、origin:TCPの開始位置、border:辺の長さ(メートル)

fuN_LLSc22VKXWXwbwNARo

モーションコントロール

長方形を描く

ip:ロボットのIP、origin:TCP開始位置、width/height:幅/高さ(メートル)

注意: すべてのツールでは、最初にロボットの接続を確立する必要があります。

3. 免責事項

nUR MCP サーバーを使用する前に、オペレーターが UR ロボットの安全トレーニングを完了し、緊急停止 (E-stop) 手順に精通していることを確認してください。

システムの安定性と安全性を維持するために、ロボットと MCP サーバーの動作状態を定期的に検査します。

nUR MCP サーバーを使用する際は、次の安全プロトコルを厳守する必要があります。

ロボットの可視性

オペレーターは、リアルタイム監視のためにユニバーサルロボットを直接視界内に保つ必要があります。

緊急事態に即座に対応できるよう、ロボット操作中は操作エリアから退出することは禁止されています。

安全な職場環境

ロボットを起動する前に、障害物を取り除き、人や物が危険区域に入らないようにしてください。

不正アクセスを防ぐために、必要に応じて物理的な障壁または安全ライトカーテンを設置してください。

不遵守に対する責任免除

当社は、安全要件の不遵守(無人操作、作業エリアの清掃不足など)により生じた傷害、機器の損傷、または製造事故については責任を負いません。

すべての運用上のリスクと結果はユーザーが負担します。

4. バージョンリリース

4.1 最近の更新

  • 2025.05.15 : nUR_MCP_SERVERの初期リリース

4.2 今後の計画

  • アクチュエータの安全機能を強化するために、nUR MCP サーバー専用の MCP クライアントを開発します。

  • UR ロボットのログ記録機能を追加します。

  • UR ロボット プログラムのバックアップとアップロードを有効にします。

5. クイックスタート

5.1 製品ベース(一般ユーザー向け)

5.1.1 エンジンと依存関係

  • 推奨システムバージョン:

    macOS Users: macOS Monterey 12.6 or later  
    Linux Users: CentOS 7 / Ubuntu 20.04 or later  
    Windows Users: Windows 10 LTSC 2021 or later  
  • ソフトウェア要件:

    MCP サーバー環境

    Python 3.11 or later  
    pip 25.1 or later  
    UV Package Manager 0.6.14 or later  
    bun 1.2.8 or later  

    MCPクライアント

    Claude Desktop 3.7.0 or later  
    Cherry Studio 1.2.10 or later  
    Cline 3.14.1 or later  
    
    ClaudeMind, Cursor, NextChat, ChatMCP, Copilot-MCP, Continue, Dolphin-MCP, Goose - Not tested.  

    LLM 大規模言語モデル

    DeepSeek-V3-0324 or later  
    DeepSeek-R1-671b or later  
    Qwen3-235b-a22b or later  
    
    Generally, any MCP-supported LLM can be used. Models not listed here have not been tested.  
    Ollama-deployed models currently cannot invoke Tools (under resolution)...  

5.1.2 インストール

MCP サーバーのインストール:

  1. Python 3.11 以降をインストールします。

  2. pip 25.1 以降をインストールします。

  3. UV パッケージ マネージャー 0.6.14 以降をインストールします。

  4. bun 1.2.8以降をインストールしてください。

  5. MCP サーバーをインストールします。

git clone https://gitee.com/nonead/Nonead-Universal-Robots-MCP.git  
cd nUR_MCP_SERVER  
pip install -r requirements.txt  

MCP クライアント構成:

Claude Desktop で使用するには、サーバー構成を追加します: macOS の場合: ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "nUR_MCP_SERVER": {
      "command": "uvx",
      "args": ["/home/nonead/MCP_Server/Nonead-Universal-Robots-MCP"]
    }
  }
}

Windows の場合: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "nUR_MCP_SERVER": {
      "command": "uvx",
      "args": ["D:\\MyProgram\\MCP_SERVER\\Nonead-Universal-Robots-MCP"]
    }
  }
}

Cherry Studio で使用するには、サーバー構成を追加します。

macOSおよびLinuxの場合:

{
  "mcpServers": {
    "nUR_MCP_SERVER": {
      "name": "nUR_MCP_Server",
      "type": "stdio",
      "description": "NONEAD Universal-Robots MCP Server",
      "isActive": true,
      "provider": "NONEAD Corporation",
      "providerUrl": "https://www.nonead.com",
      "logoUrl": "https://www.nonead.com/assets/img/vi/5.png",
      "tags": [
        "NONEAD",
        "nUR_MCP_Server",
        "Universal-Robots"
      ],
      "command": "uvx",
      "args": [
        "/home/nonead/MCP_Server/Nonead-Universal-Robots-MCP"
      ]
    }
  }
}

Windowsの場合:

{
  "mcpServers": {
    "nUR_MCP_SERVER": {
      "name": "nUR_MCP_Server",
      "type": "stdio",
      "description": "NONEAD Universal-Robots MCP Server",
      "isActive": true,
      "provider": "NONEAD Corporation",
      "providerUrl": "https://www.nonead.com",
      "logoUrl": "https://www.nonead.com/assets/img/vi/5.png",
      "tags": [
        "NONEAD",
        "nUR_MCP_Server",
        "Universal-Robots"
      ],
      "command": "uvx",
      "args": [
        "D:\\MyProgram\\MCP_SERVER\\Nonead-Universal-Robots-MCP"
      ]
    }
  }
}

Cline で使用するには、サーバー構成を追加します。

macOS および Linux の場合:

{
  "mcpServers": {
    "nUR_MCP_SERVER": {
      "command": "uvx",
      "args": ["/home/nonead/MCP_Server/Nonead-Universal-Robots-MCP"]
    }
  }
}

Windowsの場合:

{
  "mcpServers": {
    "nUR_MCP_SERVER": {
      "command": "uvx",
      "args": ["D:\\MyProgram\\MCP_SERVER\\Nonead-Universal-Robots-MCP"]
    }
  }
}

5.2 ツールキットベース(開発者向け)

5.2.1 エンジンと依存関係

  • 推奨システムバージョン:

    macOS Users: macOS Monterey 12.6 or later  
    Linux Users: CentOS 7 / Ubuntu 20.04 or later  
    Windows Users: Windows 10 LTSC 2021 or later  
  • ソフトウェア要件:

    MCP サーバー環境

    Python 3.11 or later  
    pip 25.1 or later  
    UV Package Manager 0.6.14 or later  
    bun 1.2.8 or later  

    LLM 大規模言語モデル

    DeepSeek-V3-0324 or later  
    DeepSeek-R1-671b or later  
    Qwen3-235b-a22b or later  
    
    Generally, any LLM supporting MCP is usable. Untested models are not guaranteed.  
    Ollama-deployed models currently cannot invoke Tools (under resolution)...  

5.2.2 インストール

macOS / Linux / Windows開発者向け

  Python 3.11 or later  
  pip 25.1 or later  
  UV Package Manager 0.6.14 or later  
  bun 1.2.8 or later  

5.2.3 使用法

LLM に実行を指示できるタスクの例を次に示します。

  • IP: 192.168.1.199 で UR ロボットに接続します

  • URロボットの現在のTCPエンドエフェクタのポーズ座標を取得します。

  • nUR_MCP_SERVERツールのすべてのコマンドを一覧表示します

  • URロボットのすべてのハードウェアデータを取得する

  • URロボットでスクリプトプログラムを実行する

  • URロボットの組み込みプログラムXXXX.urpを実行します。

  • 172.22.109.141 にある UR ロボットを「ロボット A」、172.22.98.41 にある UR ロボットを「ロボット B」として割り当てます。両方のロボットを接続し、現在の TCP ポーズとキー位置(ロボット A が左側、ロボット B が右側)を記録し、それらの空間関係を分析します。

  • 192.168.1.199 の UR ロボットに対して、ステップバイステップの指示を実行します。現在の TCP ポーズを記録し、TCP を Z 方向に +20 mm、Y 方向に -50 mm、X 方向に +30 mm 移動し、これを 5 サイクル繰り返します。

  • 現在のポーズを中心としたベース プレーンに半径 50 mm の円を描画する UR スクリプトをプログラムして実行します。

  • 172.22.109.141 の UR ロボットを「ロボット A」、172.22.98.41 の UR ロボットを「ロボット B」として割り当てます。両方のロボットを接続し、ロボット B を同期させて、後続のコマンドでロボット A の動きを反映させます。

6. 技術アーキテクチャ

MCP はクライアント サーバー アーキテクチャを採用しており、モデルと外部リソース間の標準化された通信を可能にします。pic alt

クライアントサーバーモデル

MCP アーキテクチャは、次のコア コンポーネントで構成されています。

  • MCP ホスト: 接続を開始し、MCP 経由でデータにアクセスしようとする LLM アプリケーション (Claude Desktop や IDE など)。

  • MCP クライアント: ホスト アプリケーション内に組み込まれ、サーバーとの 1:1 接続を維持するプロトコル クライアント。

  • MCP サーバー: 標準化されたモデル コンテキスト プロトコルを通じて特定の機能を公開する軽量プログラム。

  • ローカル データ ソース: MCP サーバーが安全にアクセスできるコンピューター ファイル、データベース、およびサービス。

  • リモート サービス: MCP サーバーが接続できる、インターネット経由でアクセス可能な外部システム (API など)。

主な責任

MCP アーキテクチャでは、各コンポーネントには次の責任があります。

MCPホスト:

  • ユーザーインターフェースを提供する

  • LLMプロバイダーとの接続を管理します

  • MCPクライアントを統合して外部リソースにアクセスします

MCP クライアント:

  • MCP サーバーとの接続を確立し、維持します。

  • リクエストを送信し、応答を受信する

  • MCPプロトコル標準に準拠したデータ交換を処理します

MCP サーバー:

  • クライアントからのリクエストを処理する

  • 特定の機能を実行したり、リソースへのアクセスを提供したりします

  • MCPプロトコル標準に従って応答をフォーマットします

通信プロトコル

MCP は基礎通信プロトコルとしてJSON-RPC 2.0を使用し、次のメッセージ タイプをサポートします。

  • リクエスト: 操作を開始するためにクライアントからサーバーに (またはその逆) 送信されるメッセージ。

  • 応答: 結果またはエラー情報のいずれかを含む、要求への応答。

  • 通知: 応答を必要としない一方向のメッセージ。通常はイベント通知に使用されます。

MCP は、次のような複数のトランスポート メカニズムをサポートしています。

  • 標準入出力 (Stdio) : ローカル サーバーに適しており、プロセス間通信を可能にします。

  • Server-Sent Events (SSE) : リモート サーバー用の HTTP ベースのトランスポート メカニズム。
    pic alt
    リクエスト: クライアントからサーバーに、またはその逆に送信される操作を開始するメッセージ。
    応答: 結果またはエラー情報のいずれかを含む要求への応答。
    通知: 応答を必要としない一方向メッセージ。通常はイベント通知に使用されます。

MCP は、次のような複数のトランスポート メカニズムをサポートしています。

  • 標準入出力 (Stdio) : プロセス間通信を介して実装され、ローカル サーバーに適しています。

  • Server-Sent Events (SSE) : リモート サーバー用の HTTP ベースのトランスポート メカニズム。

MCPの利点

MCP は、特に標準化、セキュリティ、スケーラビリティの面で、従来の統合方法に比べて大きな利点を提供します。

標準化
MCP は、AI システムと外部データ ソース間のやり取りを標準化することで、従来の統合における断片化に対処します。

  • プラグアンドプレイ接続: 統一されたプロトコルにより、カスタムコーディングなしでさまざまなデータ ソースをシームレスに統合できます。

  • クロスプラットフォームの互換性: さまざまな AI モデルとプラットフォームをサポートし、相互運用性を強化します。

  • 開発の簡素化: 複雑さが軽減され、開発者は基盤となる統合ではなくビジネス ロジックに集中できるようになります。

安全
MCP には、送信中および処理中のデータを保護するためのセキュリティ メカニズムが組み込まれています。

  • 機密データ保護: 機密情報 (API キー、ユーザー データなど) の安全な取り扱いを保証します。

  • アクセス制御: MCP サーバーは、要求の承認を検証するためのきめ細かな権限を実装します。

  • ローカル処理: 機密データをオンプレミスで保持し、サードパーティへの漏洩リスクを排除します。

スケーラビリティ
MCP のモジュール設計により、優れた拡張性が実現します。

  • マルチサービス接続: 互換性のあるクライアント間で標準化されたリソース/ツールの共有をサポートします。

  • エコシステムの成長: 開発者は、事前に構築されたコンポーネントの拡張ライブラリにアクセスできるようになります。

  • カスタマイズ: システム機能を拡張するための専用の MCP サーバーを作成できます。


7. お問い合わせ

GitHub : https://github.com/nonead/Nonead-Universal-Robots-MCP
Gitee : https://gitee.com/nonead/Nonead-Universal-Robots-MCP
公式サイト: https://www.nonead.com

8. nUR MCPサーバーと他のMCPサーバーの違い

nUR MCPサーバーのユーザーは、LLMが物理ロボットを直接制御するため、高度な安全意識を持ち、URロボットの操作トレーニングを完了する必要があります。不適切な操作は、人身傷害や物的損害を引き起こす可能性があります。

9. 引用

このソフトウェアを使用する場合は、次のように引用してください。

10. ライセンス

このプロジェクトでは、ユーザーセグメント化されたデュアルライセンス モデルを採用しています。

基本原則

  • 個人ユーザーおよび10人以下の組織/企業: AGPLv3ライセンスが自動的に適用されます

  • 10 名を超える組織/企業: 商用ライセンスが必要

「10 人以下」の定義: これは、組織 (企業、非営利団体、政府機関、教育機関などを含む) 内で、nUR_MCP_SERVER に直接的または間接的にアクセス、使用、または恩恵を受ける個人の総数が 10 人を超えない状況を指します。これには、開発者、テスト担当者、オペレーター、エンド ユーザー、統合システムを介したユーザーなどが含まれますが、これらに限定されません。

10.1 オープンソースライセンス (AGPLv3) - 10人以下の個人および組織向け

  • 個人ユーザー、または組織が「10人以下」の定義を満たす場合、AGPLv3の条件に基づき、nUR_MCP_SERVERを自由に使用、改変、再配布できます。AGPLv3ライセンスの全文はhttps://www.gnu.org/licenses/agpl-3.0.htmlでご覧いただけます。

  • 主な義務: AGPLv3の中核要件として、nUR_MCP_Serverの改変版を配布する場合、またはネットワークサービスとして提供する場合には、AGPLv3に基づく完全なソースコードを受信者に提供する必要があります。組織が「10人以下」の基準を満たしている場合でも、このソースコード開示要件を回避したい場合は、商用ライセンス(下記参照)の取得をご検討ください。

  • 使用する前に、AGPLv3 のすべての条項をよく読んで理解してください。

10.2 商用ライセンス - 10人以上の組織またはAGPLv3の義務を回避したいユーザー向け

  • **必須要件:**組織が「≤10 人」の定義を満たしていない場合 (つまり、11 人以上がソフトウェアにアクセス/使用/恩恵を受ける場合)、nUR_MCP_SERVER を使用する前に、当社と商用ライセンス契約を締結する必要があります。

  • **オプションのアプリケーション:**組織が「≤10 人」の基準を満たしている場合でも、使用シナリオが AGPLv3 の条件 (特にソース コードの開示要件) に準拠していない場合、または AGPLv3 で提供されていない特定の商用規定 (保証、補償、コピーレフト制限の欠如など) が必要な場合は、商用ライセンスが必要です。

  • 商用ライセンスが必要となる一般的なケース(網羅的ではありません):

    • 10人以上の組織

    • (サイズに関係なく)AGPLv3で要求されているようにソースコードを開示せずにnUR_MCP_SERVERの改変版を配布する

    • (規模に関係なく)変更されたソースコードへのアクセスをユーザーに提供せずに、nUR_MCP_SERVERをネットワークサービス(SaaS)として提供する

    • (規模に関係なく)会社のポリシー、顧客との契約、またはプロジェクトの要件により、AGPLv3ライセンスのソフトウェアの使用が禁止されているか、クローズドな配布/機密性が要求されている場合

  • 商用ライセンスの取得: service@nonead.comの nUR_MCP_SERVER 開発チームにお問い合わせください。

10.3 貢献

  • nUR_MCP_SERVERへのコミュニティ貢献を歓迎します。プロジェクトへのすべての貢献はAGPLv3ライセンスに基づいて行われたものとみなされます。

  • 貢献 (例: プル リクエスト) を送信することにより、あなたのコードが AGPLv3 の条件に基づいてプロジェクトおよびすべての将来のユーザー (AGPLv3 または商用ライセンスのどちらを選択するかに関係なく) に公開されることに同意したことになります。

  • また、あなたの貢献が商用ライセンスに基づいて配布される nUR_MCP_SERVER のバージョンに含まれる場合があることに同意するものとします。

10.4 その他の条件

  • 具体的な商用ライセンス条件は、正式な商用ライセンス契約で定められます。

  • プロジェクトのメンテナーは、必要に応じてこのライセンスポリシー(ユーザー数の定義や閾値を含む)を更新する権利を留保します。更新があった場合は、プロジェクトの公式チャネル(コードリポジトリ、ウェブサイトなど)を通じてお知らせします。

11. コア開発チーム

MCP サーバー開発チーム、蘇州 Nonad Robotics Technology Co., Ltd.

トニー・ケtonyke@nonead.com
マイクロ朱microzhu@nonead.com
アンソニー・チュアンanthonyzhuang@nonead.com
クエンティン・ワンquentinwang@nonead.com

Available Tools

39 tools
analyze_robot_dataC
分析机器人数据

参数:
- robot_id: 机器人ID
- analysis_type: 分析类型,可选值包括"statistical", "trend", "anomaly", "performance"
- start_time: 开始时间戳
- end_time: 结束时间戳

返回:
- 分析结果
ParametersJSON Schema
NameRequiredDescriptionDefault
end_timeNo
robot_idYes
start_timeNo
analysis_typeYes

TDQS

C2.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description does not disclose behavioral traits like side effects, permissions, or response structure. It only states the return is '分析结果' (analysis result) with no further detail, which is insufficient for an analytical tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short and uses bullet points, which is acceptable, but it is not front-loaded and the structure is minimal. It conveys the essential parameter list but lacks efficiency.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of output schema and annotations, the description is insufficient. It does not explain what the analysis does, how it is performed, or the format of results. For a tool with four parameters, more context is needed for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds some meaning beyond the schema by listing parameter names and mentioning optional values for analysis_type. However, it does not specify constraints (e.g., time format, allowed values) and schema coverage is 0%, so the description partially compensates but remains incomplete.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description '分析机器人数据' (Analyze robot data) is vague and does not specify the type of analysis or how it differs from sibling tools like compare_robots_performance. It lacks specificity and fails to distinguish the tool's unique purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, such as compare_robots_performance. It does not mention prerequisites, context, or exclusions, leaving the agent without decision support.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

compare_robots_performanceB
比较多个机器人的性能

参数:
- robot_ids: 机器人ID列表
- metric_columns: 比较指标列
- start_time: 开始时间戳
- end_time: 结束时间戳

返回:
- 比较结果
ParametersJSON Schema
NameRequiredDescriptionDefault
end_timeNo
robot_idsYes
start_timeNo
metric_columnsYes

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It only states the function and parameters, but does not mention side effects, authorization needs, error handling, or any constraints beyond the bare parameters.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short and to the point, with a clear separation of purpose, parameters, and return. It avoids redundancy, though the parameter list could be formatted more clearly (e.g., using bullet points or Markdown).

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the absence of an output schema and only two required parameters with no constraints, the description lacks details on the return format and how the comparison is performed. It leaves ambiguity about the expected input and output, making it insufficient for full contextual understanding.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds basic semantic labels to parameters (e.g., 'robot_ids: 机器人ID列表' implies a list of robot identifiers), which is helpful given the schema has no descriptions (0% coverage). However, it does not clarify the exact format or allowed values for metric_columns or time stamps.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it compares the performance of multiple robots, which is a specific verb-resource combination. Among sibling tools like analyze_robot_data or generate_robot_report, this tool is distinct in focusing on multi-robot comparison.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to use this tool over alternatives such as analyze_robot_data or generate_robot_report. There is no indication of prerequisites, exclusions, or preferred scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

connect_urC

根据用户提供的IP连接UR IP:机器人地址

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose behavioral traits. It does not describe what happens upon connection (e.g., authentication, state changes, side effects). The description is insufficient for safe usage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very short, which could be considered concise, but it omits essential information. It sacrifices completeness for brevity, scoring average.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and no annotations, the description should provide more context about connection outcomes, error handling, or post-connection state. It is incomplete for a tool with one parameter.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0% description coverage for the 'ip' parameter. The description adds minimal semantics ('IP: robot address') but lacks format, validation, or examples. It partially compensates but is inadequate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (connect) and the resource (UR robot) and distinguishes it from the sibling tool 'disconnect_ur'. It is specific and unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool, prerequisites, or when it should not be used. The description does not help differentiate usage contexts among siblings beyond basic action.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_collaborative_taskB
创建多机器人协同任务

参数:
- task_name: 任务名称
- robot_assignments: 机器人任务分配,格式为{"robot_id": {"operation": "...", "params": {...}}}
- dependencies: 任务依赖关系列表,格式为[{"from": "task1", "to": "task2"}]

返回:
- 任务创建结果
ParametersJSON Schema
NameRequiredDescriptionDefault
task_nameYes
dependenciesNo
robot_assignmentsYes

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description must disclose behavioral traits. It only states that the tool creates a task and lists parameters, but does not mention side effects (e.g., whether existing tasks are overwritten), required permissions, or failure behaviors. The return value is vague ('任务创建结果').

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short and well-structured, listing parameters and return value in a clear format. Every sentence adds value. However, it could be slightly more concise by omitting the parameter list if the schema were documented.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of creating a multi-robot task with dependencies and assignments, the description lacks sufficient detail. It does not explain error handling, required fields (though schema shows dependencies as optional, description does not mention), or valid robot IDs. No output schema exists to clarify the return.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description compensates partially by explaining the format for 'robot_assignments' and 'dependencies' parameters. However, it lacks detail on valid values for operations within robot_assignments, and 'task_name' is only described as '任务名称' with no additional semantics beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose as '创建多机器人协同任务' (Create multi-robot collaborative task), which is a specific verb+resource pair. This distinguishes it from sibling tools like 'execute_collaborative_task' and 'setup_multi_robot_coordination'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. For example, it does not explain that creation should precede execution, or what distinguishes it from 'setup_multi_robot_coordination'. The description only states what it does without context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

disconnect_urB

根据用户提供的IP,断开与UR机器人的连接 IP:机器人地址

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description must fully disclose behavior. It only states the basic action (disconnect) without mentioning side effects, permission requirements, or state changes (e.g., does it invalidate sessions?). This is insufficient for safe usage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with two short lines, front-loading the action and parameter meaning. No unnecessary words, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter tool with no output schema, the description covers the essential what and what-for. However, it lacks context about preconditions (e.g., must be connected) and postconditions (e.g., disconnection success). Slightly incomplete but adequate for basic understanding.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has no description for the 'ip' parameter (0% coverage). The description's line 'IP:机器人地址' adds minimal context that the IP represents the robot's address, but does not specify format or constraints. It adds some value beyond the schema but is not comprehensive.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it disconnects from a UR robot based on the provided IP, using specific verb '断开' (disconnect) and resource 'UR机器人' (UR robot). This distinguishes it from sibling tools like 'connect_ur'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives, nor any prerequisites like being connected first. The sibling 'connect_ur' suggests a pairing, but there's no explicit when-to-use or when-not-to-use information.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

draw_circleC

命令指定IP的机器人,给定圆心位置和半径,在水平或竖直方向画一个圆 center:圆心的TCP位置 r:半径(米) coordinate:圆所在的平面。z:圆形所在的平面与基座所在平面垂直,其它:圆形所在的平面与基座所在平面平行。默认值:z。

ParametersJSON Schema
NameRequiredDescriptionDefault
rYes
ipYes
centerYes
coordinateNoz

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears the full burden. It only describes the effect (drawing a circle) without disclosing behavioral traits such as whether the robot moves, error handling, or blocking behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded with the main action, listing parameters in a readable bullet-like format. It efficiently communicates the core functionality without unnecessary verbosity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, the description covers the essential input parameters and their roles. However, it lacks details on return values or confirmation of completion, leaving some gaps for an agent to fully understand the tool's behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds semantic meaning for r (radius in meters) and coordinate (plane orientation with defaults), but does not clarify the format of center (likely an array of x,y,z coordinates) or valid values for coordinate beyond 'z' and 'other'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool draws a circle given center and radius, and specifies the plane orientation via the coordinate parameter. It differentiates from sibling tools like draw_rectangle and draw_square by focusing on circles and plane choice.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives like draw_rectangle or draw_square. The description implies usage for drawing circles but does not provide context or exclusion criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

draw_rectangleC

给定起点位置和边长,在水平或竖直方向画一个正方形 origin:画长方形时TCP的起点位置 width:长(米) height:宽(米) coordinate:圆所在的平面。z:圆形所在的平面与基座所在平面垂直,其它:圆形所在的平面与基座所在平面平行。默认值:z。

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes
widthYes
heightYes
originYes
coordinateNoz

TDQS

C2.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, and the description does not disclose behavioral traits such as side effects, required permissions, or error conditions. It only repeats parameter descriptions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Mixed language and somewhat verbose. Could be more concise and clear.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema and no annotations; the description fails to explain return values or conditions. Given the complexity and sibling tools, more context is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds meaning to parameters: origin as TCP start, width/height in meters, coordinate plane. However, it is inconsistent (calls it a square) and lacks detail on origin array elements. Schema coverage is 0% so the description partially compensates.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'draw a square' but the tool is named draw_rectangle, which is contradictory. It does mention the action and resource but is confusing.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like draw_square or draw_circle. The description lacks differentiation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

draw_squareB

给定起点位置和边长,在水平或竖直方向画一个正方形 origin:画正方形时TCP的起点位置 border:边长(米) coordinate:圆所在的平面。z:圆形所在的平面与基座所在平面垂直,其它:圆形所在的平面与基座所在平面平行。默认值:z。

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes
borderYes
originYes
coordinateNoz

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, description carries full burden but only explains basic parameters. It omits behavioral traits like side effects (robot movement), permissions, or reversibility. For a robot motion tool, more disclosure is needed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is concise (two-line paragraph) and front-loads the purpose. It avoids unnecessary words, though could be slightly more structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Adequate for a simple drawing tool but missing details on the 'ip' parameter and any return value or post-execution state. Given no output schema and siblings, it's minimally complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

0% schema coverage, but description adds meaning for origin (TCP start position), border (side length in meters), and coordinate (plane orientation). However, required parameter 'ip' is not mentioned, leaving a gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states verb 'draw' and resource 'square', specifies it requires start position and side length, and indicates orientation (horizontal/vertical). It distinguishes from sibling tools like draw_circle and draw_rectangle.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool vs alternatives (e.g., draw_rectangle). The description only states what it does, not when to prefer it over other drawing tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

execute_collaborative_taskC
执行多机器人协同任务

参数:
- task_id: 任务ID

返回:
- 执行结果
ParametersJSON Schema
NameRequiredDescriptionDefault
task_idYes

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden of disclosure. It only states 'execute multi-robot collaborative task', without explaining blocking behavior, return values, side effects, or safety implications. This is insufficient for a potentially impactful tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very short (one header line and two parameter lines). It is concise but lacks a narrative flow. For a simple one-parameter tool, it is adequate but could be structured better with a full sentence for purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's likely side effects (executing multi-robot tasks) and the absence of annotations or output schema, the description is incomplete. It does not cover behavior, expected results, or dependencies, leaving critical gaps for an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 0% description coverage, so the description must compensate. However, it only repeats the parameter name and type ('任务ID'), adding no further meaning about format, source, or constraints. This adds minimal value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's action (execute) and resource (multi-robot collaborative task), distinguishing it from siblings like 'create_collaborative_task' and 'setup_multi_robot_coordination'. However, it does not elaborate on what 'execute' entails, leaving some ambiguity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No usage guidance is provided. The description lacks context on when to use this tool versus alternatives, prerequisites (e.g., task must exist), or potential side effects. This omission makes it hard for an agent to decide correctly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_bezier_pathC
生成贝塞尔曲线路径

参数:
- control_points: 控制点列表,格式为[{"x": 0, "y": 0, "z": 0, "rx": 0, "ry": 0, "rz": 0}, ...]
- num_points: 生成的路径点数量

返回:
- 路径点列表
ParametersJSON Schema
NameRequiredDescriptionDefault
num_pointsNo
control_pointsYes

TDQS

C2.7/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description does not disclose behavioral traits such as side effects, required permissions, computational complexity, or error handling. It only states the return is a path list.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise, using a bulleted list format that is front-loaded with the purpose. Every word serves a purpose, with no fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and minimal parameter explanation (e.g., num_points range, control_points constraints), the description leaves significant gaps. The tool's relation to robot motion or drawing is unclear, and return format is not detailed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema coverage, the description adds value by specifying the internal structure of control_points (x,y,z,rx,ry,rz) and the role of num_points as the number of generated points. This compensates for the schema's lack of detail.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool generates a Bezier curve path, using a specific verb and resource. However, it does not differentiate from sibling tools like draw_circle or movej, leaving ambiguity about whether this is for motion planning or graphics.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. There is no mention of prerequisites, context, or scenarios where it is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_robot_reportC
生成机器人运行报告

参数:
- robot_id: 机器人ID
- start_time: 开始时间戳
- end_time: 结束时间戳
- report_path: 报告保存路径

返回:
- 报告生成结果
ParametersJSON Schema
NameRequiredDescriptionDefault
end_timeNo
robot_idYes
start_timeNo
report_pathNo

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description does not disclose any behavioral traits such as side effects, permissions, or whether it is a read-only or write operation. The lack of detail leaves the agent uninformed about potential impacts.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short and front-loaded with purpose. It then lists parameters and return in a structured manner. However, it could be more concise by integrating parameter descriptions into the main text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (4 parameters, no output schema), the description is incomplete. It does not explain the report contents, output format, or behavior when optional parameters are omitted. Missing critical context for an agent to use effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description lists each parameter with a brief explanation (e.g., 'start_time: 开始时间戳'), which adds minimal meaning beyond the schema. However, with 0% schema coverage, this is essential. The descriptions are not detailed enough to fully clarify format or constraints.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Generate robot operation report', which is a specific verb+resource. It distinguishes itself from sibling tools like analyze_robot_data or compare_robots_performance by focusing on report generation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives. The description does not mention prerequisites, use cases, or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_actual_joint_currentC

获取指定IP机器人各关节的电流(安培) IP:机器人地址

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry full behavioral disclosure. It only mentions the input IP and that it gets current, but fails to disclose whether it is read-only, requires network connectivity, or any side effects. The behavioral traits are minimally addressed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, short sentence that conveys the core purpose efficiently. It is front-loaded with the action and resource. However, it could be slightly more structured with separated lines for clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity of the tool (one parameter, no output schema, no annotations), the description is incomplete. It does not explain the return format (e.g., array of currents), the number of joints, or unit details beyond mentioning amperes. Missing contextual details reduce completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 0% description coverage, leaving the parameter 'ip' with only a title 'Ip'. The description adds a brief note 'IP:机器人地址' (IP: robot address), which adds minimal meaning. However, it does not specify format, constraints, or examples, so it only slightly improves upon the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb '获取' (get) and the resource '各关节电流' (current of each joints) with unit '安培' (amperes). It distinguishes from sibling tools like 'get_actual_joint_voltage' and 'get_actual_robot_current' by specifying joints and current.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. No mention of prerequisites, conditional use, or exclusion criteria. The description only states the function without usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_actual_joint_poseC

获取指定IP机器人的当前关节角度 IP:机器人地址

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description bears full burden but only states the action. No disclosure of side effects, required connections, or whether it's read-only. The 'get' implies non-destructive, but not explicitly stated.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Extremely concise, two short sentences. Information is front-loaded. No redundant words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity of the schema and lack of annotations, the description is insufficient. It doesn't specify output format (e.g., array of angles, units), prerequisites (e.g., robot must be connected), or error conditions.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter 'ip' has no schema description (0% coverage). The description adds 'IP: robot address', which clarifies the parameter's meaning but is minimal. More detail on format or constraints would improve.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it retrieves current joint angles for a robot specified by IP. The verb '获取' (get) and resource '关节角度' (joint angle) are specific, and it distinguishes from siblings like get_actual_tcp_pose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. The description lacks context for prerequisites or when not to use, leaving the agent to infer from the name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_actual_joint_voltageA

获取指定IP机器人的各关节电压(伏特) IP:机器人地址

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must disclose behavioral traits. It only states the action and parameter, omitting details like side effects (none expected), required connection state, or that it is a read operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with no wasted words. It front-loads the action and parameter meaning, making it easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read tool with one parameter, the description is adequate but could be improved by noting the return format (e.g., array of voltages) or joint order. It does not explain what the agent can expect from the output.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 0% description coverage, and the description clarifies that 'ip' is the robot address. While it could add format constraints, it adds crucial context beyond the raw schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool gets joint voltages from a robot specified by IP. It distinguishes from siblings like get_actual_joint_current and get_actual_robot_voltage by specifying the quantity (voltage) and target (joints).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool vs alternatives like get_actual_joint_current or get_actual_robot_voltage. There is no mention of prerequisites or context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_actual_robot_currentB

获取指定IP机器人的电流(安培) IP:机器人地址

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description does not disclose behavioral traits such as safety (read-only), required permissions, or potential errors (e.g., if IP is unreachable). It simply describes the function without additional context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Extremely concise; two lines convey the essential purpose and parameter meaning without superfluous words. Structure is front-loaded with the core function.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read tool with one parameter and no output schema, the description is minimally adequate. It covers the purpose and parameter but lacks usage context and expected return format. Given low complexity, it marginally meets completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It adds meaning by stating 'IP: robot address', clarifying the parameter's purpose. However, it could provide more detail (e.g., format like IPv4, or that IP must match a connected robot).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool gets the current (in amperes) of a robot specified by IP. It uses a specific verb and resource, and distinguishes from sibling tools like get_actual_joint_current (joint-level) and get_actual_robot_voltage (voltage).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., get_actual_joint_current for joint currents) or any prerequisites (e.g., robot must be connected). The description only states what it does, not the context of use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_actual_robot_voltageC

获取指定IP机器人的电压(伏特) IP:机器人地址

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description does not disclose behavioral traits such as read-only nature, permissions, rate limits, or side effects. For a getter that likely reads a value, minimal behavioral info is given.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise, consisting of a single line in Chinese. It is front-loaded with the action and resource, but lacks structure or additional details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter tool with no output schema, the description is mostly adequate. However, it fails to specify which voltage is measured (e.g., main power or bus voltage) and does not clarify the return format. The unit is implied by the description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter 'ip' has no description in the schema (0% coverage). The description adds a brief translation that IP is the robot address, but this does not enrich beyond the obvious. No format or validation hints are provided.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves the voltage of a robot specified by IP, which aligns with the name. However, it does not differentiate from the sibling 'get_actual_joint_voltage', which retrieves individual joint voltages.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'get_actual_joint_voltage' or other getters. There is no mention of prerequisites or context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_actual_tcp_poseB

获取指定IP机器人的当前TCP位置 IP:机器人地址

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description must convey behavioral traits. It does not state that the operation is read-only, non-destructive, or describe any side effects. Missing details on error handling or performance.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very concise with two short phrases, no wasted words. However, it could be better structured with a clearer breakdown of what and how.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description should explain what the tool returns (e.g., pose coordinates). It does not, leaving the agent uncertain about the result format. Also lacks error behavior or connection requirements.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 0% coverage, so the description must compensate. It explains that 'ip' is the robot address, adding basic meaning, but fails to specify format, validation, or how to obtain it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves the current TCP position for a robot specified by IP. It uses a specific verb and resource, distinguishing it from sibling tools like get_actual_joint_current or get_robot_mode.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. The description does not mention prerequisites, context, or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_joint_temperaturesB

获取指定IP机器人各关节的温度(摄氏度)。 IP:机器人地址

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of disclosing behavioral traits. It only describes what the tool does (get temperatures) but does not mention that it is a read operation, whether it requires authentication, or any potential side effects. The description does not add value beyond the basic purpose.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise at two short sentences, covering the essential: what the tool does, the unit, and the required parameter. No unnecessary words or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has one required parameter and no output schema. The description does not explain the return format (e.g., an array of joint names and temperatures) or any prerequisites like the robot being connected. Given the complexity of a joint temperature reading, more context is needed for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description only restates 'IP: robot address' which adds no meaningful detail beyond the schema's property name. It does not provide format, examples, or constraints for the IP parameter, leaving the agent with insufficient guidance.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'get', the resource 'joint temperatures', and specifies the unit (Celsius) and the required IP parameter. It is distinct from sibling tools like get_actual_joint_current or get_actual_joint_pose, which involve different measurements.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as get_actual_joint_current or get_actual_robot_current. There is no mention of prerequisites (e.g., the robot must be connected) or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_output_bit_registerC

获取指定IP机器人Bool寄存器的值, IP:机器人地址 index:寄存器下标,范围是[0,23]

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes
indexYes

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description carries full burden for behavioral disclosure. It only describes the action as 'get', implying read-only, but does not mention safety, idempotency, or error conditions (e.g., behavior with out-of-range index or unreachable IP). Minimal transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very short with no redundant words. The purpose is front-loaded in the first line. However, it lacks structural elements like separate sections or bullet points, but it is efficient for the information provided.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, no annotations, and 0% schema coverage, the description is incomplete. It does not describe the return value (boolean), error handling, or any side effects. Only the basic operation and parameter range are covered, leaving gaps for an AI agent to use correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so description must add meaning. It explains IP as robot address and index as register subscript with range [0,23]. This adds basic semantics beyond the schema, but does not detail data types or constraints beyond range. Sufficient but not rich.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it gets the value of a Bool register for a specified IP robot, with parameters IP and index. It is specific about the resource (Bool register) and verb (get). However, it does not explicitly differentiate from sibling tools like get_output_double_register or get_output_int_register, relying on the name for distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives (e.g., get_output_int_register) or any prerequisites. It lacks explicit context for when it is appropriate or not to use this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_output_double_registerA

获取指定IP机器人Double寄存器的值, IP:机器人地址 index:寄存器下标,范围是[0,23]

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes
indexYes

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, but description implies a read-only operation (获取值). No side effects or requirements disclosed. For a simple getter, this is adequate but minimal.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences, front-loaded with the purpose and parameter details. No redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and simple parameters, the description provides enough information. Could mention return format or error conditions, but not strictly necessary.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, but description explains both parameters: ip as robot address, index with range [0,23], adding meaning beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool gets the value of a double register for a specified IP robot, with parameters ip and index. It distinguishes from siblings like get_output_bit_register and get_output_int_register by the register type (double), though not explicitly mentioned.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. Does not specify when not to use or provide context for selection among sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_output_int_registerB

获取指定IP机器人Int寄存器的值, IP:机器人地址 index:寄存器下标,范围是[0,23]

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes
indexYes

TDQS

B3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description does not disclose any behavioral traits beyond the implied read operation. It does not mention side effects, permissions, or error handling, relying solely on the tool name.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is brief, using one sentence and a simple parameter list without unnecessary elaboration. It could be more structured (e.g., bullet points) but remains efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has no output schema and the description does not specify what the tool returns (e.g., value type, format) or any potential error conditions. This leaves the agent guessing about the response.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds meaningful context to both parameters: 'IP: robot address' and 'index: register subscript, range [0,23]'. This compensates for the complete lack of schema descriptions, making parameter usage clear.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'get' and the resource 'Int register of the specified IP robot', making the purpose unambiguous. However, it does not differentiate from siblings like 'get_output_bit_register' beyond the name itself.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as 'get_output_bit_register' or 'get_output_double_register'. The description only explains parameters without context on conditional usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_programsC

获取指定IP机器人的所有程序。 IP:机器人地址 username:ssh账号 password:ssh密码

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes
passwordNoeasybot
usernameNoroot

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose behavioral traits. It mentions SSH credentials but fails to describe authentication failures, network requirements, or the fact that the tool establishes a connection. The side effects or potential errors are not covered.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with only two sentences, efficiently conveying the tool's purpose and parameter meanings. No redundant information is present.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description lacks essential information such as output format, error handling, security considerations, and prerequisites (e.g., network access). For a tool that requires SSH credentials, this is insufficient for an agent to use it correctly and safely.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description compensates by explaining each parameter ('IP: robot address', 'username: SSH account', 'password: SSH password'). This adds basic context but lacks detail on default usage or constraints. It is adequate but not exceptional.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves all programs from a specified IP robot. The verb 'get' and resource 'programs' are explicit, and it distinguishes from the sibling tool 'get_program_state' which focuses on state rather than listing programs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like 'get_program_state'. The description does not include context on prerequisites, dependencies, or typical use cases.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_program_stateC

获取指定IP机器人的程序执行状态 IP:机器人地址

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the behavioral burden. It does not disclose whether the operation is safe/read-only, what happens if the IP is invalid, or any permissions required. It's a minimal statement without behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very short and to the point, with no extraneous words. It wastes no space, though it could benefit from structured formatting. It earns its two lines.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of output schema and annotations, the description is insufficient for a complete understanding. It does not describe the return format, possible statuses, or error handling. For a tool with one parameter, more detail is expected.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description must compensate. It adds that 'ip' is the robot address, which provides some meaning beyond the raw schema. However, it does not specify format, validation rules, or examples, leaving ambiguity.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: to get the program execution status of a robot specified by IP. It uses a specific verb and resource, and while it doesn't explicitly differentiate from siblings, the name itself helps distinguish it from tools like get_robot_mode.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. Sibling tools like get_robot_mode or get_safety_mode exist, but no comparison or selection criteria are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_robot_modeB

获取指定IP机器人的运行状态 IP:机器人地址

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It implies a read-only operation by using 'get', but does not explicitly state that it has no side effects, requires no special permissions, or what happens on error (e.g., unreachable robot). This is adequate for a simple status retrieval but lacks depth.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two brief lines with no wasted words. It front-loads the purpose and then clarifies the parameter. It could be more concisely combined into one sentence, but overall it is efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one parameter, no output schema, common operation), the description covers the essential purpose. However, it does not explain what the returned status looks like or provide any usage context, which could be beneficial for an agent unfamiliar with the domain.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds 'IP: robot address' to explain the single parameter, which gives domain context beyond the schema's bare type 'string'. However, it does not specify format (e.g., IPv4 vs IPv6) or constraints (e.g., must be reachable). With 0% schema description coverage, the description partially compensates but could be more explicit.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'get the running status of a specified IP robot', which specifies the verb 'get' and the resource 'running status'. It distinguishes from sibling tools like get_safety_mode or get_actual_robot_current by focusing on a general mode. However, 'running status' is somewhat vague and does not explicitly define what the output represents.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives. The description does not mention when not to use it, nor does it reference sibling tools. The agent receives no context for choosing between this and related status tools like get_program_state or get_safety_mode.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_robot_modelB

获取指定IP的机器人型号 IP:机器人地址

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It does not disclose behavioral traits such as read-only nature, side effects, network requirements, or error conditions. A simple 'Reads the robot model' would improve transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very short (two lines), which is concise, but it sacrifices completeness. It could be expanded slightly without losing conciseness to cover key aspects like return value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool simplicity (one param, no output schema), the description is barely adequate. It does not explain what the return value represents (e.g., model string), nor does it mention error cases or potential delays.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has one parameter 'ip' with no description (coverage 0%). The description adds 'IP:机器人地址' (IP: robot address), which provides minimal context but lacks details on format (IPv4/IPv6), validation, or error handling.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('获取指定IP的机器人型号' = get robot model for specified IP) and the resource (robot model). It distinguishes from sibling tools which retrieve other types of data (e.g., joint positions, currents).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit when-to-use or when-not-to-use guidance. However, the purpose is self-explanatory for a simple getter; some implied usage context exists given the sibling tool list, but no exclusions or alternatives are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_safety_modeC

获取指定IP机器人的安全模式 IP:机器人地址

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden. It does not disclose any behavioral traits such as whether the operation is safe, requires permissions, or what the response contains.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences conveying the core purpose and parameter explanation. However, the second sentence could be integrated more cleanly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple retrieval tool with one parameter and no output schema, the description is minimally adequate but could be improved by explaining what safety mode values exist or how the result is formatted.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter 'ip' has no description in the schema (0% coverage). The description adds 'IP: robot address', which clarifies its purpose but still lacks format constraints or examples.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves the safety mode of a specified robot identified by IP. This is a specific verb-resource combination that distinguishes it from sibling tools like get_robot_mode, which retrieves a different mode.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as get_robot_mode or other data retrieval tools. There is no mention of prerequisites or context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_serial_numberC

获取指定IP机器人的序列号 IP:机器人地址

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description discloses no behavioral traits beyond the basic action. It does not mention whether the operation is read-only (assumed), potential errors, or side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very short, consisting of two concise lines. It is front-loaded with the purpose and contains no unnecessary words. However, it could benefit from slightly more detail without becoming verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one parameter, no output schema), the description provides the essential information. It could mention the return type or any prerequisites, but it is adequate for a basic retrieval tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It only restates the parameter 'IP' without adding format, constraints, or examples. This adds minimal value over the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool retrieves the serial number of a robot given its IP address. The verb 'get' and resource 'serial number' are specific. Among sibling getter tools, this is distinct as the only one retrieving serial numbers, but the description does not explicitly differentiate it.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, no prerequisites, and no exclusions. It simply states the function without context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_timeA

根据用户提供的IP,获取指定机器人的开机时长(秒) IP:机器人地址

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must convey behavior. It implies a read operation by saying 'get', but does not elaborate on side effects, permissions, or connection requirements. It is minimally transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise: two sentences covering the main purpose and the input parameter. Every word earns its place, front-loading the core action.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter getter, the description covers what it does and the input. It lacks output specification (e.g., return type or unit), but the tool is straightforward enough that this is a minor gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds that 'IP' is the robot address, providing context beyond the naked schema, but no format or validation details. With 0% schema coverage, it partially compensates but is not comprehensive.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves the power-on duration of a robot given an IP address. It uses a specific verb ('get') and resource ('power-on duration'), distinguishing it from sibling tools that retrieve other robot parameters.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives, such as when to check power-on duration vs other robot status parameters. No exclusions or prerequisites mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_ur_software_versionC

根据用户提供的IP,获取指定机器人的软件版本 IP:机器人地址

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of disclosing behavioral traits. It does not mention whether the tool requires network connectivity, what happens if the IP is unreachable, or if the operation is read-only. The description is minimal and lacks behavioral context beyond the basic purpose.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with two short sentences and no extraneous information. It front-loads the action and parameter explanation. While not formally structured, it efficiently conveys the essential information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one parameter and no output schema, the description is adequate but incomplete. It tells what it does and what the parameter means, but omits details like return format, error handling, or usage examples. Given the lack of output schema, some description of the result would improve completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0% description coverage for the 'ip' parameter. The description adds the note 'IP:机器人地址' (IP: robot address), which clarifies the parameter's purpose. However, it does not specify IP format (e.g., IPv4) or validation rules. The description adds some value but is basic.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves the software version of a robot given an IP address. It specifies the verb 'get' and the resource 'software version', making the purpose clear. However, it does not differentiate from sibling tools like get_robot_model or get_serial_number, which also retrieve robot information.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, context, or exclude other tools. For example, it does not note that other getter tools might be more appropriate for different robot attributes.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

movejB

发送新的关节姿态到指定IP的机器人,使每个关节都旋转至指定弧度。 IP:机器人地址, q:各关节角度, a:加速度(米每平方秒), v:速度(米每秒), t:移动时长(秒), r:交融半径(米)。

ParametersJSON Schema
NameRequiredDescriptionDefault
aNo
qYes
rNo
tNo
vNo
ipYes

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It fails to disclose critical behaviors such as whether the movement is blocking or non-blocking, safety requirements, error handling, or side effects like joint limits. The brief parameter list does not cover operational context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is relatively concise but lacks structure. It lists parameters in a plain text line-by-line format without proper formatting or grouping. While front-loaded with the purpose, the parameter list is verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, no annotations, and 6 parameters, the description is incomplete. It does not explain return values, error conditions, or prerequisites like robot connectivity or power state. The tool requires more extensive documentation for safe usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Despite 0% schema coverage, the description adds meaningful parameter explanations with units (e.g., 'a:加速度(米每平方秒)'). This compensates for the bare schema, though it could be more precise about defaults and constraints.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it sends joint angles to a robot, specifying the action as '发送新的关节姿态' (send new joint pose) and the resource as '机器人' (robot). It distinguishes from siblings like 'movel' (linear move) by focusing on joints.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like 'movel' or other move functions. The description does not mention prerequisites, constraints, or typical use cases, leaving the agent without context for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

movelA

发送新的TCP位置到指定IP的机器人,使TCP移动到指定位置,移动期间TCP作直线移动。 IP:机器人地址 pose:TCP位置 a:加速度(米每平方秒) v:速度(米每秒) t:移动时长(秒) r:交融半径(米)

ParametersJSON Schema
NameRequiredDescriptionDefault
aNo
rNo
tNo
vNo
ipYes
poseYes

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It explains the tool sends a command and mentions linear movement, but lacks details on error behavior, prerequisites (e.g., robot connection), or what happens if the target is unreachable.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single paragraph that efficiently lists parameters with definitions. It is clear and not overly long, though a more structured format (e.g., bullet points) could improve readability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the tool's basic functionality and parameters, but lacks information about return values, error handling, and the need for a prior robot connection. Given no output schema and no annotations, more context would be beneficial.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema coverage, the description adds significant value by explaining each parameter: IP as robot address, pose as TCP position, a as acceleration, v as velocity, t as duration, r as blend radius. Units are included for a and v, but pose structure is not detailed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool sends a new TCP position to a robot at a given IP, specifying that the TCP moves linearly. It lists all parameters with their meanings, making the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not explicitly guide when to use this tool versus alternatives like movej or movel_x/y/z. The context of linear movement is implied, but no direct comparison or exclusion criteria are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

movel_xC

命令指定IP机器人的TCP沿X轴方向移动 IP:机器人地址 distance:移动距离(米)

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes
distanceYes

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It mentions the move direction and distance units, but discloses no behavioral traits such as blocking behavior, acceleration profiles, error handling, or whether negative distances reverse the direction. This is insufficient for a robot control tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with parameter explanations, making it concise and front-loaded. It wastes no words, though it could be more structured with separate sections for behavior and parameters.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of a robot movement tool, the description is incomplete. It does not explain return values (no output schema), synchronization behavior, prerequisites (e.g., robot must be connected), or potential side effects. Annotations are absent, leaving many gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds meaning to the two parameters: IP is the robot address, distance is in meters. This is helpful since the schema has no parameter descriptions. However, it does not specify expected formats (e.g., IP address format) or range constraints for distance, which would improve usability.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool moves a robot's TCP along the X-axis, with IP and distance parameters. It distinguishes from siblings like movel_y and movel_z by specifying the axis. However, it does not explicitly state that this is a linear move (as 'movel' implies), which could be deduced from the name.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to use this tool versus alternatives like movel (general linear move) or movel_y/movel_z. The description lacks context for selection based on desired axis of movement or other criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

movel_yB

命令指定IP机器人的TCP沿Y轴方向移动 IP:机器人地址 distance:移动距离(米)

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes
distanceYes

TDQS

B3.1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided. The description only says it moves the TCP along Y; it does not disclose any behavioral traits like blocking nature, error handling, timeouts, or required robot state.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very short (two lines) and gets to the point. It could be improved by front-loading the action, but it is concise without wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and simple parameters, the description lacks information on return values, error handling, or prerequisites. It is incomplete for a command that likely requires a connected robot.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description adds meaning by explaining ip as robot address and distance as movement distance in meters. However, it lacks details like allowed ranges or format.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool moves the robot's TCP along the Y-axis, specifying the parameters IP and distance in meters. It distinguishes from sibling tools like movel_x and movel_z.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not provide guidance on when to use this tool vs alternatives such as movel, movel_x, or movel_z. There is no mention of prerequisites or context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

movel_zD

命令指定IP机器人的TCP沿Y轴方向移动 IP:机器人地址 distance:移动距离(米)

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes
distanceYes

TDQS

D1.7/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided. The description fails to disclose behavioral traits such as relative vs absolute movement, error handling, safety implications, or the return format.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short but poorly structured, containing a single sentence with an error (wrong axis). Conciseness is undermined by inaccuracy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given many sibling tools for different axes, the description fails to specify the correct axis. No output schema means return values are undocumented, leaving the agent uninformed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, but the description adds meaning by explaining 'ip' as '机器人地址' (robot address) and 'distance' as '移动距离(米)' (movement distance in meters), which is not present in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states '沿Y轴方向移动' (move along Y-axis), but the tool name is 'movel_z', indicating Z-axis. This mismatch creates confusion about the tool's actual function.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus siblings like movel, movel_x, movel_y. The description does not mention alternative tools or provide usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

optimize_trajectoryB
优化轨迹(时间、能耗或平滑度)

参数:
- ip: 机器人IP地址
- waypoints: 路径点列表
- optimization_type: 优化类型,可选值包括"time", "energy", "smoothness"

返回:
- 优化后的路径
ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes
waypointsYes
optimization_typeNotime

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It only states it returns an optimized path, but does not disclose safety implications, required permissions, or side effects on robot state.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Short description with bullet points for parameters and return. Front-loaded purpose. Could be more structured but adequate.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Lacks explanation of return format, failure cases, prerequisites, or integration with robot state. Given no output schema and no annotations, the description is insufficient for an optimization tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so description must compensate. It briefly explains each parameter (ip, waypoints, optimization_type) and lists possible values for optimization_type. However, waypoints format is undefined, and ip is trivial.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool optimizes a trajectory based on time, energy, or smoothness. It uses a specific verb and resource, and distinguishes from sibling tools (no other optimization tool).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when or when not to use this tool. No mention of prerequisites, alternatives, or context for using different optimization types.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

send_program_scriptC

发送脚本到指定IP的机器人。 IP:机器人地址 script:脚本内容

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes
scriptYes

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It does not disclose whether the script is executed, any side effects, required permissions, or return behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very short, but it is not well-structured or informative. It achieves brevity but at the cost of necessary detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema and many sibling tools, the description is insufficient. It omits what happens after sending, error handling, and return values, making it incomplete for effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description only rephrases parameter names ('IP: robot address, script: script content') without adding format, constraints, or examples. It adds minimal value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action 'send script to robot at specified IP', with specific verb and resource. It distinguishes from sibling tools which are about connecting, moving, or analyzing data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives, prerequisites, or context. The description only states its function without any usage advice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

setup_multi_robot_coordinationB
设置多机器人协同工作环境

参数:
- robot_ids: 参与协同的机器人ID列表
- collaboration_mode: 协作模式,可选值包括"sequential", "parallel", "synchronous", "hierarchical"

返回:
- 成功或失败的消息
ParametersJSON Schema
NameRequiredDescriptionDefault
robot_idsYes
collaboration_modeNoparallel

TDQS

B3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description lacks behavioral context: it does not disclose side effects, required conditions (e.g., robot connectivity), or what 'coordination environment' entails. With no annotations, the description fails to inform the agent about important behavioral aspects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with a brief summary followed by parameter explanations. It is well-organized and efficient, though could be slightly more structured with a clear separation sections.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (multi-robot coordination) and lack of output schema, the description is incomplete. It does not explain return format, error conditions, or prerequisites, leaving gaps for the agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds meaning beyond the schema: it explains robot_ids as 'list of robot IDs participating in coordination' and collaboration_mode with possible values, compensating for the 0% schema description coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (setup) and resource (multi-robot coordination environment). However, it does not differentiate from sibling tools like create_collaborative_task or execute_collaborative_task, which have overlapping purposes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives, nor any prerequisites or context for its invocation. The description only lists parameters and return value without usage hints.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

start_data_recordingA
开始记录机器人数据

参数:
- robot_id: 机器人ID
- record_types: 记录类型列表,可选值包括"robot_state", "joint_data", "tcp_data", "error_data"
- duration: 记录持续时间(秒),0表示持续记录直到停止

返回:
- 记录会话ID
ParametersJSON Schema
NameRequiredDescriptionDefault
durationNo
robot_idYes
record_typesYes

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description provides key behavioral traits: recording starts, duration 0 means continuous until stopped, and returns a session ID. It lacks details on concurrency limits or prerequisites but is adequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short and front-loaded with purpose, followed by a clear parameter list and return value. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description mentions the return value (session ID). It covers the main aspects but could mention prerequisites like robot connectivity. Overall sufficient for a simple recording start tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description fully explains all three parameters: robot_id, record_types with listed optional values, and duration with default 0 meaning continuous recording. This adds significant value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: '开始记录机器人数据' (start recording robot data), which is a specific verb+resource. It is easily distinguished from sibling tools like 'stop_data_recording' and other analysis tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for starting data recording but does not explicitly say when to use it versus alternatives or when not to use it. No exclusions are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

stop_data_recordingC
停止数据记录

参数:
- session_id: 记录会话ID

返回:
- 停止状态
ParametersJSON Schema
NameRequiredDescriptionDefault
session_idYes

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose behavioral traits. It only says '停止数据记录' but does not explain side effects (e.g., whether in-flight data is saved, if stopping is instant, or if it requires a running session).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very concise, but it lacks substance for a tool with one parameter. Every sentence should add value; here the parameter description is trivial.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (1 required param, no output schema), the description is minimally complete for stopping a recording. However, it does not address preconditions (e.g., an active recording) or postconditions (e.g., data availability).

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description should compensate. It lists 'session_id: 记录会话ID', which adds minimal meaning (it is a session ID) but does not explain format, constraints, or relationship to the recording session.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description '停止数据记录' clearly states the verb (stop) and resource (data recording), distinguishing it from sibling tools like start_data_recording. It is unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives, such as start_data_recording or other control tools. The context is implied but not explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 16 tool updatesv1.0.0
    • Addedanalyze_robot_data
    • Addedcompare_robots_performance
    • Addedcreate_collaborative_task
    • Changeddraw_circle3 fields changed
      • removedInput schema / properties / center / additionalProperties
        Removed value: -true
      • addedInput schema / properties / center / items
        Added value: +{}
      • changedInput schema / properties / center / type
        Previous value: -"object"New value: +"array"
    • Changeddraw_rectangle3 fields changed
      • removedInput schema / properties / origin / additionalProperties
        Removed value: -true
      • addedInput schema / properties / origin / items
        Added value: +{}
      • changedInput schema / properties / origin / type
        Previous value: -"object"New value: +"array"
    • Changeddraw_square3 fields changed
      • removedInput schema / properties / origin / additionalProperties
        Removed value: -true
      • addedInput schema / properties / origin / items
        Added value: +{}
      • changedInput schema / properties / origin / type
        Previous value: -"object"New value: +"array"
    • Addedexecute_collaborative_task
    • Addedgenerate_bezier_path
    • Addedgenerate_robot_report
    • Changedget_time1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "properties": {
        -    "result": {
        -      "title": "Result",
        -      "type": "string"
        -    }
        -  },
        -  "required": [
        -    "result"
        -  ],
        -  "title": "get_timeOutput",
        -  "type": "object"
        -}New value: +null
    • Changedmovej3 fields changed
      • removedInput schema / properties / q / additionalProperties
        Removed value: -true
      • addedInput schema / properties / q / items
        Added value: +{}
      • changedInput schema / properties / q / type
        Previous value: -"object"New value: +"array"
    • Changedmovel3 fields changed
      • removedInput schema / properties / pose / additionalProperties
        Removed value: -true
      • addedInput schema / properties / pose / items
        Added value: +{}
      • changedInput schema / properties / pose / type
        Previous value: -"object"New value: +"array"
    • Addedoptimize_trajectory
    • Addedsetup_multi_robot_coordination
    • Addedstart_data_recording
    • Addedstop_data_recording
  2. 29 tool updates
    • First observedconnect_ur
    • First observeddisconnect_ur
    • First observeddraw_circle
    • First observeddraw_rectangle
    • First observeddraw_square
    • First observedget_actual_joint_current
    • First observedget_actual_joint_pose
    • First observedget_actual_joint_voltage
    • First observedget_actual_robot_current
    • First observedget_actual_robot_voltage
    • First observedget_actual_tcp_pose
    • First observedget_joint_temperatures
    • First observedget_output_bit_register
    • First observedget_output_double_register
    • First observedget_output_int_register
    • First observedget_program_state
    • First observedget_programs
    • First observedget_robot_mode
    • First observedget_robot_model
    • First observedget_safety_mode
    • First observedget_serial_number
    • First observedget_time
    • First observedget_ur_software_version
    • First observedmovej
    • First observedmovel
    • First observedmovel_x
    • First observedmovel_y
    • First observedmovel_z
    • First observedsend_program_script

TDQS

C2.7/5.0

Scored across 39 tools

Disambiguation4/5

Most tools have distinct purposes, but movel_z has a description that incorrectly says '沿Y轴方向移动' (Y axis) while the name suggests Z axis, causing confusion. Additionally, draw_square and draw_rectangle are very similar but still distinguishable.

Naming Consistency3/5

Naming is a mix of verb_noun (e.g., draw_circle), concatenated abbreviations (movej, movel), and underscores (movel_x). The 'get_' tools are consistent, but the movement commands break the pattern. Overall, the convention is not uniform.

Tool Count2/5

With 39 tools, the server has a high count that exceeds the typical well-scoped range of 3-15. While the domain may justify many tools, there are redundancies (e.g., multiple movel_axis commands) that could be parameterized, making the surface feel bloated.

Completeness4/5

The tool set covers connection, movement, drawing, data recording, analysis, multi-robot coordination, and robot information. Minor gaps include the lack of an explicit stop or emergency stop command, but overall it is comprehensive for UR robot control.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    F
    maintenance
    A Python-based server that enables AI assistants to control robots by integrating the Model Context Protocol (MCP) with ROS 2, allowing for natural language commands that translate into robot movement via the /cmd\_vel topic.
    83
    -
  • A
    license
    D
    quality
    F
    maintenance
    A server built on the Model Context Protocol that enables controlling the Unitree Go2 robot using natural language commands, which are translated into ROS2 instructions for the robot to perform corresponding actions.
    12
    87
    Apache 2.0
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to control Universal Robots through real-time connection management, status monitoring, and precise joint/linear motion control. Provides safe robot operation with built-in collision detection and simulation mode for development without physical hardware.
    6
    GPL 3.0