本文へスキップ
GuilduoDocs
EnglishWeb Appを開く

リファレンス GUILDUO

Guilduo API・MCPリファレンス:endpointと操作例

RESTとMCPは同じ作業ルールを使います。実際の入力は、このDocsの根拠となる公開OpenAPIとMCPスキーマを確認し、接続中サーバーの契約に合わせてください。

REST・MCP・Appwriteを区別する

通常のMCP接続は/mcpを使います。/mcp-nextは検証レーンです。Appwrite APIへWorkerのQuest経路を送る設定に置き換えません。

用途URL利用方法
ブラウザhttps://app.guilduo.com/Guilduo / Relay Forge
Remote MCPhttps://mcp.guilduo.com/mcpOAuth対応AIクライアント
Worker RESThttps://mcp.guilduo.com/v1/questsOpenAPIの/v1経路
Appwrite APIhttps://api.guilduo.com/v1Appwrite SDKとWorkerの接続先

認証とスキーマを確認する

一般のMCP利用者はOAuthを使います。OpenAPIはOAuthとAppwrite JWTのBearer認証を定義しています。固定APIキーを通常利用者へ配る方式ではありません。

api/openapi.jsonがRESTの経路・入力・応答を、api/mcp-tools.jsonがツール名・入力・出力を定義します。必須フィールド、enum、文字数制限は呼び出し前に確認します。

ツール発見は認証・Agent許可の代わりではありません。get_current_agent_contextで接続主体と実効スコープを読み、操作対象の現在状態を取得します。

Quest一覧を読み取る

以下はlist_questsの読み取り入力です。結果のquests、total、nextCursorを確認します。nextCursorがあればcursorとして次の呼び出しへ渡します。

  1. OAuth MCPを接続し、get_current_agent_contextで本人のAgentと必要なquests:readを確認します。
  2. 上記入力でlist_questsを呼び、Web AppのBacklogと比較します。
  3. 対象IDをget_questのquestIdへ渡し、詳細とupdatedAtを読みます。IDを表示名から推測しません。
  4. RESTなら認証済みでGET /v1/quests?view=backlog&kind=todo&limit=5を使います。未認証の401を保存や通信の失敗と混同しません。
json
{
  "view": "backlog",
  "kind": "todo",
  "limit": 5
}

用途別のツールとREST経路

CLIは人間・CI向けのRESTクライアントです。書き込みは--executeを付けた場合に実行します。OAuth MCPのツール発見とCLIを同じ接続方式として扱いません。

用途MCPREST
一覧・詳細list_quests / get_questGET /v1/quests / GET /v1/quests/{questId}
階層get_quest_treeGET /v1/quests/tree
作成・編集create_quest / update_questPOST /v1/quests / PATCH /v1/quests/{questId}
Handofftransition_quest_handoffPOST /v1/quests/{questId}/handoff
Human依頼request_human_reviewPOST /v1/quests/{questId}/review-requests
Human一覧list_human_requestsGET /v1/human-requests
人の回答MCP書き込みなし本人Web認証のPOST /v1/quests/{questId}/review-response

書き込みとエラーの契約

  • assign_quest_to_agentとrequest_human_reviewはプレビュー後に最新expectedUpdatedAtで実行します。transition_quest_handoffはexpectedStateを使います。
  • create_questとupdate_questに未定義のdryRunを追加しません。入力がadditionalProperties=falseのツールは未定義フィールドを許しません。
  • 401は認証、403は許可や主体、409は競合を確認します。requestKeyはHuman依頼の同じラウンドの再送用で、一般のQuest作成の再送保証ではありません。
  • 競合時は最新状態を読み、再プレビューします。古いtimestampで連続再送したり、一般更新で人の回答を作ったりしません。
  • ツール数と版数は更新されます。接続中のtools/listと公開契約を比較し、必要なツール名とスキーマで互換性を確認します。

この記事の出典

公開GitHubの資料をもとに編集しています。仕様の詳細は原文を確認できます。

内容確認日: · 公開資料の版: 5125178