Skip to main content

概要

フォルダ検索ツール(search_private_folderssearch_team_folders)は、個人またはチームのフォルダ階層内でフォルダを名前から見つけるための統一された方法を提供します。どちらのツールも NFC 正規化を伴う大文字小文字を区別しない部分一致を使用しており、韓国語やその他の CJK テキストでも確実に一致します。
  • search_private_folders — 個人の(共有されていない)フォルダを検索します。
  • search_team_folders — チーム(ワークスペースで共有された)フォルダを検索します。
どちらのツールもシグネチャと動作は同一で、唯一の違いは個人フォルダとチーム共有フォルダのどちらを検索するかです。どちらも mcp:folders:read スコープを必要とし、デフォルトでは API key のワークスペースを対象とします。別のワークスペースを対象にする場合は、明示的な workspaceGuidlist_workspaces から取得)を渡してください。 主なユースケース:
  • 名前の一部しか覚えていないときに特定のフォルダを名前で見つける(例: “general” は “0.General”、“General”、“general-things” に一致)。
  • ワークスペース内のすべてのフォルダを列挙する(空のキーワードですべてをページネーション付きで返します)。
  • 韓国語文字の検索: keyword="네이버""네이버 모니터링""0.네이버" などに一致します。
主な特長:
  • 大文字小文字を区別しない部分一致(CJK の信頼性のため NFC 正規化済み)。
  • フォルダは一致位置(名前の先頭に近いほど上位)で並べ替えられ、その次に名前の長さ(短いほど上位)で並べ替えられます。
  • 各結果にはフォルダのパンくずパスが含まれます(例: "Engineering > Q1 Planning > Sprint 1")。
  • 空のキーワードはすべてのフォルダをページネーション付きで返します。
  • 後方互換性のための 2 つのレスポンスフィールド: content(推奨)と folders(レガシーエイリアス)。
v1 の実装に関する注記: これらのツールは呼び出しごとにアップストリームのフォルダツリーを一度取得し、サーバー側でフィルタリングします。ネイティブなバックエンドのフォルダ検索 endpoint は v2 ロードマップに含まれています。追加されても MCP のシグネチャは変わりません。これは実装上の詳細です。

パラメータ

search_private_folderssearch_team_folders は同一のパラメータを受け取ります。

keyword (optional)

大文字小文字を区別しない部分一致です。検索は NFC(正規分解の後に正規合成)で正規化され、韓国語・日本語・中国語などの CJK テキストを確実に処理します。 キーワードが空または省略された場合は、すべてのフォルダをページネーション付きで返します。 例:
  • "general""0.General""General""general-things" に一致します(一致位置、次に名前の長さで並べ替え)。
  • "네이버""네이버 모니터링""0.네이버""팀별 > 네이버" に一致します。

cursor (optional)

前回のレスポンスの nextCursor を渡すと次のページを取得します。最初のページでは省略します。

size (optional)

1 ページあたりの結果数です。デフォルト 30、最大 100。ページが小さいほど高速に返り、大きいほど往復回数を減らせます。

レスポンス形式

成功レスポンス (search_private_folders)

フィールドの説明:
レスポンスには後方互換性のため content(推奨、新しい命名)と folders(レガシーエイリアス)の両方が含まれます。これらは同じ配列オブジェクトを参照しています。コードが好む方を選び、もう一方は無視してください。

使用例

例 1: search_private_folders — シンプルなキーワード

リクエスト:
“general” に一致するすべての個人フォルダ(大文字小文字を区別しない)をページネーション付きで返します。 レスポンス:

例 2: search_team_folders — 韓国語のキーワード

リクエスト:
名前に “네이버” を含むすべてのチームフォルダを返します(CJK 一致のため NFC 正規化済み)。 レスポンス:

例 3: すべてのフォルダを列挙(空のキーワード)

リクエスト:
最初の 50 件のフォルダ(トップレベルとネストされたものすべて)を、特定の順序なしで返します。 レスポンス:

例 4: ページネーション

最初のページ(cursor を省略):
2 ページ目(最初のレスポンスの nextCursor を使用):

並び順

結果は一致位置で並べ替えられ、次にフォルダ名の長さで並べ替えられます(同じ一致位置では短い名前が上位)。
  1. 一致位置の昇順name がキーワードで始まるフォルダは、名前の後方にキーワードを含むフォルダより上位になります。
    • keyword="general""General"(位置 0)は "0.General"(位置 2)より上位。
  2. 名前の長さの昇順 — 一致位置が同じ場合は、短い名前が上位になります。
    • どちらも位置 0 で始まり “gen” に一致する場合: "General"(7 文字)は "General Announcements"(21 文字)より上位。
これにより、最も具体的に一致するものが先頭に表示されます。

ベストプラクティス

search_private_folders は個人の(共有されていない)フォルダを検索し、search_team_folders はチーム(ワークスペースで共有された)フォルダを検索します。どちらも mcp:folders:read スコープを持つ任意の API key を受け付けます。ツールはフォルダの種類で選んでください。一致するフォルダがない場合、結果は空のリストになります(エラーではありません)。
どちらのツールもデフォルトでは API key のワークスペースを対象とします。アクセスできる別のワークスペースのフォルダを検索するには、list_workspaces から取得した workspaceGuid を渡してください。
韓国語・日本語・中国語のテキストはサーバー側で自動的に NFC 正規化されます。キーワードを前処理する必要はありません。生のテキストをそのまま渡せば、一致エンジンが処理します。例: keyword="네이버" は、同じテキストの合成形・分解形いずれのフォルダにも一致します。
必ず前回のレスポンスで返された nextCursor を使用してください。オフセットを自分で計算しないでください。ページネーションの動作は将来のリリースで変更される可能性があります。
フィルタリングせずにフォルダの完全なリストを取得するには、keyword を省略するか空文字列を渡してください。sizenextCursor を使って結果セット全体をページネーションします。

よくあるエラー

スコープが不足

解決方法: お使いの API key に mcp:folders:read スコープがありません。正しいスコープで新しいキーを生成するか、ワークスペース管理者にアクセス権の付与を依頼してください。

トークン使用量

フォルダ検索は軽量です。結果には名前とパスのみが含まれ、コンテンツは含まれません。

スコープ要件

search_private_folderssearch_team_folders はどちらも mcp:folders:read スコープを必要とします。API key は Tiro Platform API Keys で構成してください。
注記: mcp:folders:write スコープは(2026-05-06 時点で)もう存在しません。すべてのフォルダ書き込み操作は削除されました。mcp:folders:write を持つ古い API key をお持ちの場合、そのスコープは無視され、使用されません。

関連ツール

  • list_notesfilter.folderId を使って特定のフォルダ内のノートを見つけます(別途「フォルダ一覧」ツールは不要です)。
  • search_notesfilter.folderId を使ってフォルダ内のノートを検索します(キーワード必須の深い検索)。