mcpField
U
uipath-mcp-servers

uipath-mcp-servers

github.com/uipathエージェントワークフロー17546 回インストール今日更新
リポジトリ

uipath-mcp-servers について

UiPath Orchestrator の Agent Gateway と `uip agenthub` コマンドラインを使い、MCP サーバーとツールを管理するスキルです。サーバーのライフサイクル、ツール設定、接続確認、クライアント接続用 URL の取得を扱います。

主な機能

  1. 01MCP サーバーの作成と管理
  2. 02サーバーツールの更新
  3. 03接続とツールの確認
  4. 04UiPath 項目のツール化
  5. 05platform サーバーツールの設定
  6. 06クライアント接続 URL の取得

活用シーン

  1. 01Agent Gateway MCP サーバーの設定
  2. 02プロセスやエージェントのツール化
  3. 03サーバー接続とツールの確認
  4. 04platform サービスのツールを検索

MCP 対応

`uip agenthub mcp` と `mcp-tools` による MCP サーバーとツールの管理を案内します。クライアントが接続する MCP URL の取得も扱います。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/uipath/skills --skill uipath-mcp-servers

インストール後、Claude Code で/uipath-mcp-serversを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
tools-guide.md
troubleshooting-guide.md
updating-servers-guide.md

詳細

UiPath Agent Gateway MCP サーバー

Agent Gateway は、MCP サーバーと A2A エージェントのための Orchestrator のハブです:概要、MCP サーバーの種類。このスキルでは、その MCP サーバーを扱います。CLI グループ名は agenthub です。uip agenthub mcp でサーバーを管理し、uip agenthub mcp-tools で各サーバーのツールを管理します。

このスキルを使用する場面

サーバー — uip agenthub mcp。platform 名を調べるには uip agenthub platform-services/platform-tools も使用します:

  • あらゆる種類の MCP サーバーを作成、更新、削除、一覧表示、取得したり、ツールを更新したりします(それぞれを使う場面についてはサーバーの種類を参照)。
  • サーバーが機能するかどうかを確認します:Integration Service の接続と、そのツール(サーバーの確認を参照)。
  • MCP クライアントが接続する McpUrl を取得します。
  • platform サーバーが公開できる UiPath サービス名とツール名を調べます。

ツール — uip agenthub mcp-tools:

  • Orchestrator のプロセス、エージェント、エージェント型プロセス、または API ワークフローを uipath サーバー上のツールとしてバインドし、編集または削除します。
  • platform サーバー上のツールを追加または削除します。
  • あらゆるサーバーのツールを一覧表示または取得します。

このスキルの対象外: MCP ツールを呼び出すエージェント → uipath-agents。uip CLI 自体を MCP サーバーとして実行する方法(uip mcp serve)→ uipath-platform。A2A エージェント(uip agenthub remote-a2a-agent --help。これを扱うスキルはありません)。MCP サーバー自体の作成(uipath-mcp Python SDK、FastMCP、セルフホスト型ランタイム)を扱うスキルはありません:uipath-mcp クイックスタートを参照してください。

重要なルール

CLI の --help には記載されていない注意事項です。

  1. スラッグは mcp list の出力どおりに指定してください。 作成時、CLI はスラッグを検証しません。--slug を指定しない場合、CLI は --name を小文字に変換し、他の文字を - に置き換えて送信しますが、その結果は3文字未満または50文字超になる場合があります。サービスでは ^[a-z0-9-]+$ かつ3~50文字(表示名は3~100文字)が必要なため、必ず --slug を指定してください。サービスはスラッグより先に表示名でサーバーを検索するため、別のスラッグが返される引数を mcp get、mcp update、refresh-tools、およびすべての mcp-tools ... --mcp に渡すと、拒否されます('<INPUT>' resolves to the MCP server '<SLUG>' …)。表示名や GUID は絶対に渡さないでください。mcp delete はスラッグ以外を指定すると404を返します。

  2. すべてのサーバーコマンドにフォルダーを指定してください。 フォルダーコンテキストにコマンドごとの指定方法が記載されているとおり、--folder-key <FOLDER_KEY>(GUID)または --folder-path <FOLDER_PATH>(名前または Parent/Child)を渡します。両方を同時に指定しないでください。スラッグに対する404は、通常、フォルダーが間違っています。mcp list --all-folders でサーバーを探し、その FolderKey を指定してください。

  3. ペイロードは camelCase で、それ以外の CLI 出力はすべて PascalCase です。 --file/--body のキーには、API の camelCase 名(name、slug、uri、headers、processKey、targetIdentifier など)を指定する必要があります。mcp create、mcp update、および mcp-tools の create/update 動詞は、--dry-run を使った場合も、別の大文字・小文字の表記でフィールド名を指定すると拒否されます(Payload keys differ from their fields only in case: `Name` should be `name`, …)。各キーの名前を記載どおりに変更してください。フィールド名と一致しないキーは、エラーなしで削除されます。mcp template と mcp-tools template は camelCase のペイロードを出力するため、そのまま編集して送信してください。--print-schema が示すのは camelCase のペイロードのスキーマであり、ペイロード自体ではありません。mcp get、mcp list、すべての create/update の結果、mcp-tools list、および --dry-run の計画は PascalCase で出力されます。コピーした値は、--print-schema が示す camelCase 名の下に配置してください。mcp get では、リモートサーバーの URI は Arguments として、リモート/swagger ヘッダーは EnvironmentVariables としても表示されます。

  4. フラグでヘッダーと環境変数を設定します。 remote / swagger では --header <NAME>=<VALUE> を、command では --env <KEY>=<VALUE> を使用します。create と update で、エントリーごとに1回指定します。CLI は、サービスに保存される改行区切りの Name:Value / KEY=VALUE の行を送信します。また、名前の重複や改行を含む値は拒否します。ヘッダー値が正確に %ASSETS/<ASSET_NAME>% の場合、呼び出し時に、その Orchestrator アセットの値(サーバーのフォルダーから読み取ったもの)に置き換えられます。アセットには値全体を格納する必要があります(例:Bearer <TOKEN>)。Bearer %ASSETS/<ASSET_NAME>% はそのまま送信されます。別の構文を考案しないでください。Orchestrator は、ポータルの Agent Gateway とジョブにはアセットの値を渡しますが、CLI ログインには渡しません。このようなサーバーで CLI から refresh-tools を実行すると、403 で失敗します(トラブルシューティング)。mcp update では、--header / --env によって保存済みのエントリーがすべて置き換えられます。シークレットを保持するには、mcp get で **** の値とともに表示される名前と正確に同じ名前を使い、"<NAME>=****" を渡します。

  5. 各変更の結果を確認します。 mcp create / mcp update は保存されたサーバーを返し、mcp-tools create-resource / create-raw / update は保存されたツールを返します。また、delete はすべての削除が成功した場合にのみ Deleted: true を報告します。mcp-tools enable / disable は選択情報を含まないサーバーを返します。uip agenthub mcp-tools list --mcp <SLUG> --folder-path <FOLDER_PATH> --limit 1000 --output-filter "{Names: Items[].Name, Total: Total, Count: Count}" --output json で確認してください(フィルターなしの行には、各ツールのスキーマが含まれます)。mcp get では、シークレットはどちらの場合も **** と表示されるため、マスクされた値が保持されたことを証明できません。refresh-tools はツールの再一覧表示ではなく、Data.Status で確認します(ルール7)。

  6. スカラー形式のフラグは既存の値を保持し、ペイロードは置き換えます。 スカラー形式のフラグを使用すると、mcp update はサーバーを読み取り、変更しない保存済みフィールドをすべて含めて送信します。--file / --body のペイロードはそのまま送信されます。ペイロードで省略された各フィールドが保持されるかクリアされるかは、ペイロードの表のとおりです。description を省略すると、常にクリアされます。また、selectedToolNames / useAllTools を含まない platform ペイロードでは選択がクリアされ、「すべてのツール」がオフになります。--print-schema では、すべてのフィールドについてこの動作が示されるわけではありません。uipath サーバーでは、tools を指定せずに更新するとすべてのツールが保持されます。tools を含むペイロードでは、すべてのツールが置き換えられます。mcp update を実行する前に、サーバーの更新を読んでください。

  7. refresh-tools の動作はサーバーの種類によって異なります。 新しい coded、command、または remote サーバーには、実行されるまでツールがありません。mcp create の後、および remote の --uri を変更した後に実行してください(保存済みのツールは古い URI のままです)。--dry-run の場合もフォルダーが必要です。

    • coded / command:Data: {RuntimeId, Status: "Started"}。Agent Gateway は、サーバーを Orchestrator ジョブとして起動しました(uip or jobs get <RUNTIME_ID> --output json)。ツールリストは、そのジョブがツールを登録したときにのみ変更されます。RuntimeId を報告し、ツールが更新されたと断言しないでください。
    • remote / swagger:Data: {Status: "Refreshed"}。ツールはすでに保存されています。remote ツールは URI から取得されます。swagger ツールは、保存済みヘッダーを使って再ダウンロードした swaggerUrl から再生成されます(URL がない場合は、保存済みの仕様から再生成されます)。
    • platform:Data: {Status: "Refreshed"}。サービスはキャッシュされたサービス定義を破棄します。選択は保持されます。
    • uipath / selfhosted:拒否されます。uipath ツールは mcp-tools create-resource から、selfhosted ツールはそれを提供するランタイムから取得されます。
  8. 削除にはスラッグ、フォルダー、--yes が必要です。 mcp delete と mcp-tools delete は、--dry-run を指定した場合も含め、--yes がないと実行を拒否し、確認プロンプトも表示しません。指定する前にユーザーの確認を得てください。まず削除対象を一覧表示します(mcp list --limit 1000 を実行し、Total が Count と等しいことを確認します。プレフィックスを指定する場合は --output-filter "Items[?starts_with(Slug, '<PREFIX>')].Slug" を使用します)。各スラッグを Name とともに表示し、その一覧からユーザーが確認したサーバーだけを削除してください。mcp delete では、1 回の呼び出しにつきスラッグを 1 つ指定します。各スラッグに対して実行し、その後、再度一覧表示してください。mcp delete --dry-run は、サーバーの存在を確認しません。mcp-tools delete --name <SUBSTR> は、大文字と小文字を区別せず部分文字列で一致させます。複数のツールが一致する場合は、名前が完全一致するものが優先されます。また、--allow-multiple を指定すると、一致するものをすべて削除します。ツール ID は mcp-tools list から取得して使用してください。

  9. プラットフォーム名は一覧から取得し、推測しないでください。 --service には platform-services list の値を、--tool には platform-tools list の値を、それぞれ大文字と小文字を含めて正確に指定してください。--tool フラグには 1 つの名前を指定します(「platform」の手順)。サービスは環境によって異なるため、orchestrator があると決めつけないでください。--tool と --use-all-tools はどちらか一方を指定し、両方は指定しないでください。どちらも指定しない場合、サーバーにはツールがありません。

  10. 保存済みの認証情報を別の場所に送ることで、拒否を回避してはいけません。 mcp update は、保存済みの接続トークンやシークレットヘッダーが送信される状態で、remote サーバーの接続先オリジン(スキーム、ホスト、ポート)を変更したり、swagger サーバーの仕様書を別のものに変更したりすることを拒否します。拒否メッセージの Instructions(サーバーの移動)に従ってください。ユーザーの同意なく、拒否を回避するためにヘッダーや接続を削除してはいけません。

フォルダーコンテキスト

コマンドフォルダー入力
mcp list--folder-key、--folder-path、--all-folders のいずれかが必須
mcp get、mcp create <TYPE>、mcp update(--print-schema、--dry-run を含む)、mcp delete、mcp refresh-tools--folder-key または --folder-path が必須
--mcp を受け取るすべての mcp-tools 動詞サーバーのフォルダーが必須。create-resource、create-raw、update は、別のフォルダーにあるターゲットを指定するための --target-folder-key/--target-folder-path も受け取ります
mcp-tools candidates省略可。指定しない場合はテナント全体が対象
mcp create <TYPE> --print-schema不要(フォルダーフラグは無視されます)
mcp template、mcp-tools template、platform-services list、platform-tools list不要。フォルダーフラグを指定すると unknown option エラーになります
  • フォルダーを検索するには、uip or folders list --output json を実行します。行の Key を --folder-key に、Path を --folder-path に指定してください。
  • 個人用ワークスペースフォルダー(<USER_EMAIL>'s workspace)は名前では解決できません。--folder-key を使用してください。
  • 同じ名前のフォルダーが入れ子になっている場合、完全なパスが完全一致するフォルダーが選択されます。一致しない場合、CLI は候補を表示します。Parent/Child または --folder-key を指定して再実行してください。
  • mcp list --all-folders は、読み取り可能なすべてのフォルダーにあるサーバーを一覧表示し、各行に FolderKey を含めます(mcp-tools には --all-folders がありません)。読み取りできないフォルダーは、stderr にのみ報告されます。
  • create coded でスカラー値を指定すると、どちらのフォルダーフラグからもペイロードの folderKey が設定されます。coded の --file/--body では、folderKey を自分で指定する必要があります。

CLI を信頼する

  • uip agenthub mcp create <TYPE> --print-schema --output json — タイプごとの作成ペイロードのフィールドを表示します。ログインもフォルダーも不要です。
  • uip agenthub mcp template <TYPE> --output json — --file のひな形を作成します。値を編集し、そのまま送信してください。
  • uip agenthub mcp update <SLUG> --folder-path <FOLDER_PATH> --print-schema --output json — そのサーバーのタイプに応じた更新フィールドを表示します。サーバーを読み取るため、ログイン、フォルダー、正確なスラッグが必要です。省略した場合の動作が示されるのは一部のフィールドのみです。ペイロードの表ですべてのフィールドを確認できます。
  • platform の名前は uip agenthub platform-services list と uip agenthub platform-tools list から取得します。platform の手順に記載されたとおりに実行してください。
  • uip agenthub mcp-tools candidates --category <CATEGORY> --output json — uipath サーバー上のツールにできる Orchestrator リソースを表示します。<CATEGORY> ∈ automation | agent | agentic-process | api-workflow。--category が使えるのは、uipath サーバーのツール(candidates、create-resource、create-raw)のみです。
  • uip agenthub mcp get <SLUG> --folder-path <FOLDER_PATH> --output json — McpUrl は、MCP クライアントが接続するエンドポイントです。ユーザーが名前を指定したサーバーを表示するには、mcp list で Name から Slug を探し、mcp get を実行してツールを一覧表示します(ルール 5)。
  • mcp get/mcp list は Type を数値で出力します。0 は uipath、1 は command、2 は coded、3 は selfhosted、4 は remote、6 は platform、7 は swagger です。Status の 1 は接続済み、0 は未接続です。ツールの Type は別の数値です。null のフィールドは省略されます。ConnectionId がなければ、Integration Service 接続はありません。swagger サーバーでは、mcp get は仕様 URL(SwaggerUrl。インライン仕様の場合は省略)も出力します。読み取れない場合は、標準エラー出力に警告([WARN] Could not read the spec URL …)を表示し、その情報を含めずにサーバーを表示します。
  • --output-filter <JMESPATH> は、各コマンドが出力するキーに対して機能します。キーは PascalCase(Items[].Slug)で、mcp template と --print-schema では camelCase(uri)です。結果も同じ形式のキーになるため、フィルターで出力をペイロードのキーに変換することはできません。mcp list と mcp-tools list は現在のページ(デフォルトは --limit 50)のみをフィルタリングします。--limit 1000 を渡し、Total が Count と一致することを確認してください。platform-services list/platform-tools list では、--limit を指定しないとフィルターを使用できません。
  • --dry-run は CLI のチェックを実行し、変更を加えずに計画(Code: DryRun)を出力します。mcp update、refresh-tools、mcp-tools の変更処理ではサーバーの読み取りが引き続き必要です(ログイン、正確なスラッグ、フォルダー)。また、mcp update の拒否条件はドライランでもすべて適用されます。サービス側の検証は実行されないため、ドライランが正常でも実際の呼び出しが成功するとは限りません。
  • 失敗時には ErrorCode、Retry、Message、Instructions に加え、該当する場合は NextCommand(値はシェル用に引用符で囲まれます)、Errors(400 で拒否されたフィールド)、Context.HttpStatus が出力されます。終了コードではなく、ErrorCode、Retry、Instructions に基づいて対処してください。NextCommand は通常フォルダーフラグを繰り返しますが、動詞しか示さない場合もあります(platform サーバーでは mcp-tools enable --mcp <SLUG>、uipath サーバーでは mcp-tools create-resource --mcp <SLUG> --folder-key <GUID>)。実行する前に、フォルダーと必要なフラグを追加してください。
  • ほとんどの --help の例ではフォルダーフラグが省略されています(mcp delete --dry-run では --yes も省略され、mcp-tools update の例では --mcp が省略されています)。また、出力キーの大文字・小文字の形式は実際の出力と異なります。例ではなく、ルール 3 の形式を使用してください。

サーバーのタイプ

uip agenthub mcp create <TYPE>では、--name、--slug、--description、--version、--file/--body/--print-schema、--dry-run、--folder-path/--folder-key、--login-validityを共通で指定できます。スカラー値を指定するフラグ、--file、--bodyのいずれか1つだけを使用してください。CLIでは必須フィールドのチェックは行われません(必須フィールドは--print-schemaで確認できます)。サービスはErrorsとともに400を返します。ただし、--spec-urlもswaggerContentも指定せずにswaggerを作成した場合は、HTTP 409 Either SwaggerUrl or SwaggerContent must be providedで失敗します。

Type種類固有のフラグ使用する場面ツールの取得元詳細
uipath(なし)Orchestratorのプロセス、エージェント、エージェント型プロセス、またはAPIワークフローを実行するツールを追加するサーバーです。mcp-tools create-resourceツール、バインド、uipathの更新
coded--process-key <PROCESS_KEY>公開済みのコード作成型MCP サーバーパッケージ(uipath-mcp Python SDK、プロセスタイプはMCPServer)です。サーバーのフォルダー内でジョブとして起動します。コード作成型エージェントではありません。refresh-tools(非同期)ペイロード、更新エラー
command--command <CMD>、--arg <ARG>(繰り返し指定可、最低1つ)、--env <KEY>=<VALUE>(繰り返し指定可)Agent Gatewayがサーバーレスジョブ内でコマンド(npx/uvx+パッケージ)として起動する、stdio MCP サーバーです。refresh-tools(非同期)マスクされた値、更新エラー
remote--uri <URL>、--header <NAME>=<VALUE>(繰り返し指定可)、--connection-id <CONNECTION_ID>、--use-relayベンダーがホストするHTTP MCP サーバー、またはRelay経由で社内ネットワーク内に接続するHTTP MCP サーバーです。refresh-tools(同期)マスクされた値、サーバーの移動、ネットワークエラー
swagger--spec-url <URL>、--header <NAME>=<VALUE>(繰り返し指定可)、--use-relayOpenAPIドキュメントを含むREST APIです。操作ごとにツールが1つ作成されます。作成時およびrefresh-tools時の仕様書(同期)ペイロード、サーバーの移動、ネットワークエラー
platform--service <SERVICE_NAME>、続けて--tool <TOOL_NAME>(繰り返し指定可)または--use-all-toolsUiPathのファーストパーティサービス(例:Test Manager)です。選択したツールセット、または後から追加されるツールも含むすべてのツールを使用します。選択したツール、またはすべてのツールプラットフォームの選択、プラットフォームエラー
  • coded: --process-key は、uip or processes list --folder-key <FOLDER_KEY> --process-type MCPServer --output json が返すプロセス(リリース)の Key GUID であり、ProcessKey フィールド(パッケージ名)ではありません。プロセスはサーバーと同じフォルダーに存在する必要があります。また、サービスは作成時にそのキーを確認しないため、誤ったキーはサーバーの実行時に初めて問題として現れます。mcp template coded には processKey / folderKey のプレースホルダーがあるため、両方を GUID に置き換えてください。

  • command: サービスは arguments をスペースで分割するため、1 つの --arg の値にスペースを含めることはできません。

  • remote / swagger: --use-relay を指定しない場合、サービスはプライベートホストをブロックします(URL blocked for security reasons: …)。指定すると、絶対 http(s) URL はすべて Relay 経由でアクセスされます(swagger の場合、仕様のダウンロードと API 呼び出しの両方が対象です)。mcp update では、--use-relay / --no-use-relay で Relay を切り替えられます。どちらも指定しない場合、設定はそのまま保持されます。--connection-id(remote)は、呼び出しの認証に使われるトークンを持つ Integration Service 接続の GUID です。これは、コネクター uipath-uipath-mcp の OAuth 接続で、コネクターキーを指定した uip is connections list <CONNECTOR_KEY> --all-folders --output json から取得します。

  • swagger: テナントで Swagger MCP 機能が必要です(有効でない場合は HTTP 404 になります)。--header の値は、仕様のダウンロードとすべての API 呼び出しに適用されます。インライン仕様(swaggerContent)は --file / --body にのみ指定します。--filter は受け付けられますが、送信されません。作成結果には仕様全体が含まれるため、フィルターしてください(--output-filter "{Slug: Slug, McpUrl: McpUrl}")。

  • platform:

    1. uip agenthub platform-services list --output json — ユーザーの表現を DisplayName と照合し、その ServiceName を渡します。複数の名前に同じ語句が含まれる場合があります(Test Manager、Test Manager External、Test Manager Performance Testing)。完全一致するものを選び、一致するものがなければ確認してください。
    2. uip agenthub platform-tools list --service <SERVICE_NAME> --limit 1000 --output-filter "{Names: Items[].Name, Total: Total}" --output json — ツール名を取得します。フィルターなしの行には JSON スキーマが含まれ、数百 KB に及ぶことがあります。--name <SUBSTR> は検索を行い、Description を含む全行を返します。リクエストに使うツールを選ぶ前に、候補ごとの Description を確認してください(「テストケースを一覧表示する」場合は Get_Automated_Test_Cases_For_Folder ではなく Get_test_cases)。選んだ正確な名前をユーザーに伝えてください。
    3. uip agenthub mcp create platform --name <NAME> --slug <SLUG> --service <SERVICE_NAME> --tool <TOOL_NAME> --tool <TOOL_NAME> --folder-path <FOLDER_PATH> --output json を実行するか、--tool の代わりに --use-all-tools を指定します。
    4. uip agenthub mcp-tools list --mcp <SLUG> --folder-path <FOLDER_PATH> --limit 1000 --output-filter "{Names: Items[].Name, Total: Total, Count: Count}" --output json — 公開されるツールを取得します(All tools サーバーでは、そのサービスのすべてのツールが対象です)。

    mcp get では、サービスは Arguments、モードは UseAllTools として表示されます。テナントで Platform MCP が有効でない場合、2 つの一覧取得コマンドは Platform MCP is not enabled on this tenant. で失敗し、create platform と platform の mcp update は本文のない HTTP 404 を返します。

  • selfhosted / process-assistant: mcp template はどちらも受け付けますが、mcp create にはこの種類がありません。セルフホスト型サーバーは、uipath-mcp Python ランタイムの起動時に自身を登録します。CLI ではそのサーバーの list / get / delete を実行できますが、mcp update と refresh-tools は拒否されます。process-assistant はレガシー値です。

サーバーの更新

mcp update <SLUG> はサーバーを読み込み、そのタイプの更新内容全体を送信します。スカラーのフラグで変更されるのは、フラグで指定した項目だけです。--file/--body と組み合わせることはできません。ペイロードでは、含めなかった項目はペイロードの表のとおり保持またはクリアされます。キーは camelCase とし、type は含めません。どのタイプでも --name、--description、--version を指定できます。そのタイプでは使用できないフラグは拒否されます(単一のフラグの場合は applies となり、<FLAGS> apply only to <TYPES> servers; '<SLUG>' is a <TYPE> server. が表示されます)。--service も拒否されます。

タイプ変更方法
uipathほかのフラグはありません。ツールは保持されます。ツールを変更するには mcp-tools を使用します。ペイロードの tools リストで、すべてのツールが置き換えられます(ガイド)。
coded--process-key。folderKey はサーバー自身のフォルダーに保持されます。
command--command、--arg(引数をすべて置き換えます)、--env(変数をすべて置き換えます。ルール 4)。
remote--uri、--header(すべて置き換えます。ルール 4)、--use-relay/--no-use-relay、--connection-id <CONNECTION_ID> または --clear-connection(どちらも指定しない場合、接続は保持されます)。
swagger--spec-url(仕様を再ダウンロードし、ツールを再生成します)、--header(すべて置き換えます)、--use-relay/--no-use-relay。
platform--tool(選択内容全体を置き換えます)、--use-all-tools/--no-use-all-tools。これらを指定しない場合、選択内容とモードは保持されます。All tools サーバーでは、--tool に --no-use-all-tools が必要です。
selfhosted、process-assistant拒否されます。

タイプごとのペイロードフィールド、uipath のツールリスト、マスクされた値、サーバーを別のホストに移動する方法については、references/updating-servers-guide.md を参照してください。

サーバーの確認

Agent Gateway の Check connection はサーバーの Integration Service 接続をテストし、Refresh tools はサーバー自体をテストします。

  • 接続: mcp get で取得した ConnectionId を使って、uip is connections ping <CONNECTION_ID> --force-refresh --output json を実行します(ConnectionId がない場合、そのサーバーには確認対象の接続がありません)。Data.Status: "Enabled" は接続が有効であることを示します。それ以外のステータスでは Connection '<CONNECTION_ID>' is not enabled (status: <STATUS>). というエラーになります。Expired の接続は、所有者が再度サインインする必要があります(uip is connections edit <CONNECTION_ID>、またはポータルの Integration Service を使用)。ユーザーにその旨を伝えてください。これを回避するために、接続を作成、切り替え、またはクリアしてはいけません。
  • サーバー: refresh-tools(ルール 7)。remote と swagger では、Refreshed は Agent Gateway がサーバー(または仕様)に自身の認証情報で接続し、一覧表示されたツールを保存したことを意味します。mcp-tools list で確認してください(ルール 5)。失敗した場合は原因が示されます(トラブルシューティング)。coded/command ではジョブを開始するだけです。サーバーにユーザーごとの接続がある場合は呼び出し元自身の接続を使い、ない場合はサーバーの ConnectionId を使って認証します。CLI ではユーザーごとの接続を一覧表示できません。
  • refresh-tools は書き込み操作です。remote と swagger では、ツールリストのいずれかのフィールドが保存済みのものと異なると、すべてのツールが新しい ID で再作成され、ツールのガードレールが削除されます。ユーザーがサーバーの確認だけを依頼した場合は、実行前にそのことを伝えてください。

ツール(uip agenthub mcp-tools)

動詞対象
create-resource、create-raw、update、deleteuipath サーバーのみ
enable、disableplatform サーバーのみ
list、get --name <NAME>すべての種類
get <TOOL_ID>platform 以外のすべての種類(404:そのツールは保存されていません)
template、candidatesサーバーは不要です
  • リソースをバインドする: mcp-tools candidates --category <CATEGORY> --name <SUBSTR> --output json(1ページ、デフォルトは50件。--name で絞り込み、Name の隣に行の Folder.Name を表示)から行を選び、uip agenthub mcp-tools create-resource --mcp <SLUG> --name <NAME> --description "<DESCRIPTION>" --category <CATEGORY> --target-identifier <RESOURCE_ID> --target-folder-key <RESOURCE_FOLDER_KEY> --folder-path <FOLDER_PATH> --output json を実行します。行の Id と Folder.Key を指定してください。--description(サービスで必須です。行にない場合は、リクエストから説明を作成してください)と --category は必ず指定してください。candidates --name は部分一致です(EchoAgent では Coded copy of EchoAgent も見つかります)。Name が完全一致する行を選び、一致するものがない場合や複数ある場合は、それぞれの Name と Folder.Name を表示してユーザーに確認してください。誤った行を選んでも動作するツールが作成されるため、結果の TargetIdentifier がその行の Id と一致することを確認してください。
  • プラットフォームの選択: uip agenthub mcp-tools enable/disable --mcp <SLUG> --name <TOOL_NAME> --folder-path <FOLDER_PATH> --output json(--name は繰り返し指定可能)で、指定したツールを追加または削除し、残りのツールはそのままにします。All tools サーバーでは、enable は何も変更せず、disable は拒否されます。先に uip agenthub mcp update <SLUG> --no-use-all-tools --folder-path <FOLDER_PATH> --output json を実行してください。これにより、すべてのツールが選択された状態は維持されます。サービスで定義されていない名前に対する disable は拒否されます(Tools not found in the <SERVICE_NAME> service: …)。一方、サービスでは定義されていてもサーバーで選択されていない名前に対する disable は成功し、何も変更しません。先にツールを一覧表示し、その名前が含まれていない場合は実行せずにユーザーに伝えてください。
  • ツールを編集する: ツール自体のフィールドは mcp-tools update <TOOL_ID> で変更し、サーバーは mcp update で変更します。ID は mcp-tools list から取得してください。--name は部分一致で、複数一致する場合は、名前が完全一致するツールが優先されます(大文字と小文字は区別されます)。編集できるのは uipath ツールのみです。それ以外の種類のツールは、それぞれのソース(URI、仕様、コマンド、パッケージ、サービス)から取得され、refresh-tools はそのソースから再構築します。
  • mcp-tools template は camelCase のペイロードを出力します(ルール3)。create-raw はスカラー値のフラグを無視するため、--file/--body と一緒にのみ使用してください。mcp-tools update --rename は Name を変更します。MCP クライアントに表示される名前である McpName は変更しません。

フラグ、デフォルト値、対象フォルダー、update、delete、get、ページ分割については、references/tools-guide.md を参照してください。ほとんどの内容は uipath および platform サーバー向けです。それ以外の種類では、一覧表示のセクションのみが該当します。

トラブルシューティング

  • Payload keys differ from their fields only in case: … — ルール 3 に従って、各キーの名前を変更します。mcp get または mcp-tools list からコピーしたキーは PascalCase です。--description を指定せずに create-resource を実行すると HTTP 400 が返される — --description を指定します。
  • AgentHub requires a folder context. … — フォルダフラグを追加します(フォルダーコンテキスト)。No folder named '<NAME>' was found. — タイプミス、または個人用ワークスペースです。Key を --folder-key として指定します。
  • '<INPUT>' resolves to the MCP server '<SLUG>', … — 保存済みの <SLUG> を指定します(ルール 1)。<INPUT> が別のサーバーのスラッグである場合は、先に <SLUG> の名前を変更します。スラッグに対して HTTP 404 が返される — フォルダーが間違っているか、スラッグではありません(ルール 1、2)。
  • --uri moves '<SLUG>' to another origin, … / --spec-url gives '<SLUG>' a new spec, …(または --file / --body の場合は The payload's …)— ルール 10。
  • This command requires a <EXPECTED_TYPE> MCP server; <SLUG> is <TYPE>. — mcp-tools の動詞は、そのタイプには適用されません。coded / command / remote / swagger の場合は、NextCommand(refresh-tools)を実行します。platform の場合、NextCommand は --name もフォルダーも指定せずに mcp-tools enable を指定しています。両方を追加します。
  • Platform MCP is not enabled on this tenant.、または create platform で HTTP 404 が返される — このテナントでは機能が無効です。別のテナントまたはサーバータイプを使用します。

リファレンスの案内

  • references/updating-servers-guide.md — タイプごとのペイロードフィールド、uipath サーバーの更新、マスクされた値、サーバーの別のホストへの移動。
  • references/tools-guide.md — uipath サーバーの mcp-tools(バインド、更新、削除、対象フォルダー)と platform サーバー(選択)。任意のタイプのツールの一覧表示と読み取り。
  • references/troubleshooting-guide.md — その他すべての uip agenthub メッセージと、その修正方法。

やってはいけないこと

  • プラットフォームサービス名やツール名を推測したり、orchestrator と決めつけたりしないでください(ルール 9)。
  • PascalCase の CLI 出力をそのままペイロードに貼り付けないでください(ルール 3)。
  • スラッグを指定する箇所に、表示名や GUID を渡さないでください(ルール 1)。
  • ユーザーが削除を確認する前に --yes を渡さないでください(ルール 8)。
  • Status: "Started" が返された場合、coded / command の更新が完了したと報告しないでください(ルール 7)。
  • 省略されているフォルダフラグを追加せずに、--help の例をコピーしないでください。

コメント