> ## Documentation Index
> Fetch the complete documentation index at: https://docs.agentify.jp/llms.txt
> Use this file to discover all available pages before exploring further.

# 🛠️ ツール

左側のナビゲーションパネルにある「ツール」メニューをクリックすると、以下のような**統合ツールライブラリ**が表示されます。

<CardGroup cols={2}>
  <Card title="カスタムツール" icon="wrench" href="/welcom/tool_1">
    ユーザー自身が作成した独自のツール
  </Card>

  <Card title="公式ツール" icon="toolbox" href="/welcom/web_1">
    システムが提供するプリセット済みのツールセット
  </Card>
</CardGroup>

<Info>
  この画面では、**自分で開発したツール**や**利用権限を持つ外部ツール**など、アカウントに関連付けられたすべてのツールが一括して表示されます。
</Info>

<Frame>
  <img src="https://mintcdn.com/trendoinc/W7au8HHjxar5wx-e/images/41.png?fit=max&auto=format&n=W7au8HHjxar5wx-e&q=85&s=e5182dceaaccd8fc1758ed0d28c98047" alt="ツールライブラリで公式ツールを確認する画面" width="2313" height="1533" data-path="images/41.png" />
</Frame>

## 公式ツール

公式ツールは、よく使われる業務処理をすぐに利用できるように用意されたプリセットツールです。

<CardGroup cols={2}>
  <Card title="Webスクレイピング" icon="globe" href="/welcom/web_1">
    Web サイトから必要な情報を定期的に取得し、Agent やナレッジベースと連携できます。
  </Card>

  <Card title="ドキュメント比較" icon="file-diff" href="/welcom/tool_document_compare">
    複数の文書が指定条件を満たしているかを確認し、レビュー業務を支援します。
  </Card>
</CardGroup>

## 🔌 ツールモジュール

利用したいツールは、**キャンバス（画面上のフロー設計画面）にドラッグ＆ドロップ**することで簡単に組み込むことができます。

<Frame>
  <img src="https://mintcdn.com/trendoinc/W7au8HHjxar5wx-e/images/42.png?fit=max&auto=format&n=W7au8HHjxar5wx-e&q=85&s=6ec31263d4f52398ae94f0a219ea90c6" alt="キャンバスにツールモジュールを追加する画面" width="2313" height="1533" data-path="images/42.png" />
</Frame>

## カスタムツールの作成

<Steps>
  <Step title="ナビゲーション">
    左側のナビゲーションバーで「**ツール**」をクリックし、「**カスタムツール**」を選択します。
  </Step>

  <Step title="作成方法の選択">
    現在、作成方法は「**手動入力**」と「**クイックインポート**」の2種類があります。

    <Info>
      特に**APIドキュメントやURLがある場合は「クイックインポート」がおすすめ**です。よりスピーディかつ簡単にツールを作成できます。
    </Info>

    ### インポート方法

    <CardGroup cols={3}>
      <Card title="ファイルをインポート" icon="file-import">
        APIドキュメントファイルから自動的にツール設定を読み込みます
      </Card>

      <Card title="URLをインポート" icon="link">
        APIドキュメントのURLを指定して設定を取得します
      </Card>

      <Card title="テキストをインポート" icon="text">
        APIドキュメントのテキストを直接貼り付けて設定します
      </Card>
    </CardGroup>

    <Warning>
      インポート内容が不完全な場合、**必須項目は手動で補完する必要があります。**
    </Warning>
  </Step>

  <Step title="リクエスト方式の設定">
    カスタムツールでは、以下5種類のHTTPリクエスト方式をサポートしています。

    <CardGroup cols={2}>
      <Card title="GET（取得リクエスト）" icon="download">
        **定義:** サーバー上の特定リソースへのアクセスを要求するために使用されます。主に情報の取得・検索に用いられ、サーバーの状態を変更しません。

        **使用シーン:** ユーザー一覧の取得、記事詳細の表示など

        **例:** 商品価格の取得：`GET https://api.example.com/products/123`
      </Card>

      <Card title="POST（新規作成）" icon="plus">
        **定義:** サーバーにデータを送信して新しいリソースを作成したり、データ処理を行うために使用されます。

        **使用シーン:** 新規ユーザー登録、フォーム送信、ファイルアップロードなど

        **例:** 新規ユーザーの作成：`POST https://api.example.com/users`
      </Card>

      <Card title="PUT（リソース置換）" icon="arrows-rotate">
        **定義:** 既存リソースを完全に置換または新規作成する際に使用されます。送信するデータはリソースの全情報が必要です。

        **使用シーン:** ユーザー情報の更新、ファイルの置き換えなど

        **例:** ユーザープロフィールの更新：`PUT https://api.example.com/users/456`
      </Card>

      <Card title="DELETE（削除）" icon="trash">
        **定義:** 指定されたリソースを削除するために使用されます。べきとう性を持ち、複数回実行しても結果は変わりません。

        **使用シーン:** ファイル削除、ユーザーアカウント削除など

        **例:** ブログ記事の削除：`DELETE https://api.example.com/blogs/789`
      </Card>

      <Card title="PATCH（部分更新）" icon="pen-to-square">
        **定義:** リソースの一部のみを更新する場合に使用されます。PUT よりも柔軟性が高く、変更したい項目だけ送信すればよいのが特徴です。

        **使用シーン:** 記事タイトルの変更、ユーザー設定の一部更新など

        **例:** 記事タイトルの変更：`PATCH https://api.example.com/articles/1010`
      </Card>
    </CardGroup>

    <Tip>
      使用するリクエスト方式は、各APIの仕様書（インターフェース定義）を参考に正しく選んでください。
    </Tip>
  </Step>

  <Step title="認証方式の設定">
    Webリクエストにおいて、認証はリクエスト元の正当性を検証する手段です。以下の方式に対応しています。

    <AccordionGroup>
      <Accordion title="Basic 認証" icon="user-lock">
        **定義:** ユーザー名とパスワードを使った基本的な認証方式です。

        **操作方法:** ユーザー名とパスワードを「:」（コロン）で連結し、**Base64でエンコード**します。

        **例:**

        ```http theme={null}
        Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=
        ```
      </Accordion>

      <Accordion title="Bearer Token 認証" icon="key">
        **定義:** 事前に取得したアクセストークンを `Authorization` ヘッダーに設定して認証する方式です。

        <Warning>
          現時点では、プラットフォームは OAuth 2.0 の認可フローに対応していません。OAuth 2.0 が必要な外部 API を利用する場合は、外部側で取得済みのアクセストークンを Bearer Token として設定してください。
        </Warning>

        **例:**

        ```http theme={null}
        Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9
        ```
      </Accordion>

      <Accordion title="カスタム認証" icon="sliders">
        **定義:** 任意のリクエストヘッダーを使用して、開発者が独自に定義した認証方式です。

        **操作方法:** リクエストヘッダーに任意のキーと値を追加します。

        **例:**

        ```http theme={null}
        X-Custom-Auth: my-custom-value
        ```
      </Accordion>
    </AccordionGroup>

    <Tip>
      用途に応じて、適切な認証方式を選択してください。
    </Tip>
  </Step>

  <Step title="入力・出力パラメータの設定">
    ### 対応データ型

    現在サポートされているパラメータのデータ型は、**string（文字列）**、**boolean（真偽値）**、**any（任意型）** の3種類です。

    <CardGroup cols={3}>
      <Card title="string（文字列）" icon="text">
        テキストデータを扱う型
      </Card>

      <Card title="boolean（真偽値）" icon="toggle-on">
        true/falseの2値を扱う型
      </Card>

      <Card title="any（任意型）" icon="asterisk">
        任意のデータ型を受け入れる型
      </Card>
    </CardGroup>

    <Info>
      入力または出力のパラメータで明確な型が判別できない場合は、**デフォルトで string 型**として扱われます。
    </Info>

    ### パラメータの送信方法

    <CardGroup cols={2}>
      <Card title="form（フォーム形式）" icon="file-lines">
        フォームデータとしてリクエストボディを送信します。

        一般的に `application/x-www-form-urlencoded` または `multipart/form-data` の形式で使用され、主にフォーム送信に用いられます。
      </Card>

      <Card title="raw（生データ形式）" icon="code">
        JSON、XML、プレーンテキストなどの生データをそのままリクエストボディに含めて送信します。

        この場合、`Content-Type` は通常 `application/json` または `text/plain` が使われます。
      </Card>
    </CardGroup>
  </Step>

  <Step title="デバッグと検証">
    ツールを保存した後は、**デバッグと検証** に進みます。
    対応する入力項目を入力し、APIリクエストを送信して動作確認を行います。

    <CardGroup cols={2}>
      <Card title="テスト成功" icon="circle-check" color="#10b981">
        **公開（リリース）可能**
      </Card>

      <Card title="テスト失敗" icon="circle-xmark" color="#ef4444">
        **保存は可能だが、公開は不可**
      </Card>
    </CardGroup>
  </Step>
</Steps>

## ツールの公開と管理

保存およびデバッグが完了すると、作成したツールが一覧に表示されます。

### ツール一覧での操作

<CardGroup cols={4}>
  <Card title="編集" icon="pen-to-square">
    ツールの設定を変更します
  </Card>

  <Card title="削除" icon="trash">
    ツールを削除します
  </Card>

  <Card title="公開" icon="upload">
    ツールを公開します
  </Card>

  <Card title="非公開" icon="eye-slash">
    下書き状態に戻します
  </Card>
</CardGroup>

### 重要な注意点

<Warning>
  **デバッグに成功したツールのみ公開可能**です。
</Warning>

<Info>
  **公開されたツール**は、ワークフロー（フロー設計）画面で**ドラッグ＆ドロップして使用可能**になります。
</Info>

<Note>
  ツールが**非公開状態**になると、サイドバーには表示されなくなりますが、**過去に使用されたエージェントには影響しません**。
</Note>
