Dureachはdureach.<action>という名前のMCPツールを14種類公開しています。すべてのツールは未知のフィールドを厳密に検証します。余分なフィールドがあると検証エラーを返します。以下に示す上限値を正確に使用してください。範囲外の値はinvalid_argumentsを返します。
利用可能なツールは何ですか
| ツール | リスク | 必要なスコープ | 目的 |
|---|---|---|---|
dureach.workspace.context | R0 | workspace:read | ワークスペースID、名前、呼び出し者の役割、付与済みスコープを返します。 |
dureach.workspace.capabilities | R0 | workspace:read | この接続で利用できる操作を一覧表示します。 |
dureach.companies.search | R1 | companies:read | キーワードで企業レコードを検索します。 |
dureach.companies.read | R1 | companies:read | UUIDで企業1件を読み取ります。 |
dureach.trade.search | R1 | trade:read | 貿易活動レコードを検索します。 |
dureach.trade.query | R1 | trade:read | 出荷ビューの読み取り専用SQLクエリを実行します。 |
dureach.contacts.search | R1 | contacts:read | キーワードで担当者レコードを検索します。 |
dureach.contacts.query | R1 | contacts:read | 担当者ビューの読み取り専用SQLクエリを実行します。 |
dureach.leads.list | R1 | leads:read | ワークスペースのリードをページネーション付きで一覧表示します。 |
dureach.leads.create | R2 | leads:create | リードを作成します。ドライランプレビューと冪等キーに対応します。 |
dureach.campaigns.list | R1 | campaigns:read | キャンペーンをページネーション付きで一覧表示します。 |
dureach.campaigns.draft | R2 | campaigns:create | キャンペーンの下書きを作成します。ドライランプレビューと冪等キーに対応します。 |
dureach.email.send | R3 | emails:send | 所有者が確認した常設ポリシー経由で送信します。有効なpolicy_idが必須で、ドライランプレビューと冪等キーに対応します。 |
dureach.sms.send | R3 | sms:send | 所有者が確認した常設ポリシー経由で送信します。メール送信と同じ規則です。 |
tools/list で接続に利用できるツールを確認してください。利用範囲は付与された権限とワークスペースの利用資格によって異なります。読み取り権限から始め、不足する権限は管理者に確認してください。広範な権限を要求しないでください。
各ツールが受け付ける引数は何ですか
workspace.contextとworkspace.capabilities
引数なし。{}を送信します。
{"jsonrpc": "2.0", "id": 1, "method": "tools/call",
"params": {"name": "dureach.workspace.capabilities", "arguments": {}}}companies.search
| フィールド | 型 | 上限 | 既定値 |
|---|---|---|---|
query | string | 1–200文字、空白のみ不可 | 必須 |
page | integer | 1–20 | 1 |
limit | integer | 1–50 | 25 |
{"query": "industrial valves", "page": 1, "limit": 10}companies.read
| フィールド | 型 | 詳細 |
|---|---|---|
company_id | UUID | 必須 |
存在しないIDはcompany_not_foundを返します。
trade.search
| フィールド | 型 | 上限 | 既定値 |
|---|---|---|---|
query | string | 3–100文字 | 必須 |
dataset | enum | all、imports、exports、shipments | all |
page | integer | 1–20 | 1 |
limit | integer | 1–50 | 25 |
contacts.search
| フィールド | 型 | 上限 | 既定値 |
|---|---|---|---|
query | string | 3–100文字 | 必須 |
page | integer | 1–40 | 1 |
limit | integer | 1–25 | 25 |
3文字未満の短いクエリは検証エラーを返します。キーワード検索の絞り込みが不十分な場合はcontacts.queryを使用します。
contacts.queryとtrade.query
| フィールド | 型 | 上限 | 既定値 |
|---|---|---|---|
sql | string | 最大16 KiB UTF-8、読み取り専用文法 | 必須 |
page | integer | 1–20 | 1 |
limit | integer | 1–50 | 25 |
SQLのLIMIT/OFFSETは含めず、page/limitを使用します。ページ2以降はORDER BYが必要です。文法の詳細はMCP SQLリーダーに記載されています。
leads.listとcampaigns.list
| フィールド | 型 | 上限 | 既定値 |
|---|---|---|---|
page | integer | 1–20 | 1 |
limit | integer | 1–50 | 25 |
leads.create
| フィールド | 型 | 詳細 |
|---|---|---|
email | 必須、最大254文字 | |
first_name | string | 任意、最大255文字 |
last_name | string | 任意、最大255文字 |
company_name | string | 任意、最大255文字 |
idempotency_key | UUID | 実際の書き込みや送信には必須です。同じ引数で同じ操作を再試行する場合は同じ UUID を使用してください。 |
dry_run | boolean | 任意、既定値false。trueは書き込まずにプレビューします。 |
campaigns.draft
| フィールド | 型 | 詳細 |
|---|---|---|
name | string | 必須、最大255文字 |
idempotency_key | UUID | 実際の書き込みや送信には必須です。同じ引数で同じ操作を再試行する場合は同じ UUID を使用してください。 |
dry_run | boolean | 任意、既定値false |
email.sendとsms.send
| フィールド | 型 | 詳細 |
|---|---|---|
policy_id | UUID | 必須。送信を許可する常設ポリシー |
recipient | string | 必須、最大255文字 |
idempotency_key | UUID | 実際の書き込みや送信には必須です。同じ引数で同じ操作を再試行する場合は同じ UUID を使用してください。 |
dry_run | boolean | 任意、既定値false |
有効なポリシーのない送信はpolicy_not_foundまたはpolicy_not_authorizedを返します。予算、上限、除外、クォータに関する失敗はpolicy_budget_exceeded、policy_daily_cap_exceeded、recipient_suppressed、recipient_already_attempted、send_quota_exceededを返します。新しい冪等キーで送信を再試行しないでください。元のキーを再利用してください。
結果とエラーの形式はどうなりますか
成功時はJSONを含むテキスト形式の項目1件と、ツール出力契約に対して検証された対応するstructuredContentオブジェクトを返します。1 MiBを超える結果は部分データの代わりにresult_too_largeを返します。
失敗時はisError: trueを返します。
{"error": {"code": "invalid_arguments", "details": {"field": "limit"}},
"request_id": "REQ_ID"}主なコード: unknown_action(表の名前をdureach.接頭辞付きで使用)、invalid_arguments、scope_required、plan_capability_required、quota_exceeded(limit_type、reset_at、retry_after付き)、company_not_found、policy_not_found、policy_not_authorized、result_too_large、action_internal_error。