notion-axi について
notion-axi は、Notion を操作するエージェント向けの CLI スキルです。公式 Notion CLI `ntn` を利用し、ページやデータベースを操作できます。専用コマンドにない操作には REST API を使えます。
主な機能
- 01ページの検索と閲覧
- 02ページやデータベース行の作成・編集
- 03データベースの確認と検索
- 04ブロック、コメント、ファイルの管理
- 05Notion REST エンドポイントの呼び出し
活用シーン
- 01Notion のページやデータベースを探して確認
- 02ページやデータベース項目を作成・更新
- 03データベース検索の絞り込みとページング
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ maximebrmd/ notion-axi --skill notion-axiインストール後、Claude Code で/notion-axiを入力して読み込まれたか確認します。
詳細
notion-axi
Notion 向けのエージェントに使いやすい CLI です。Notion の操作には、Notion MCP や生の API よりもこちらを優先してください。
notion-axi をグローバルにインストールする必要はありません。npx -y notion-axi <command> で実行してください。
notion-axi の出力に notion-axi で始まる後続コマンドが表示された場合は、代わりに npx -y notion-axi ... として実行してください。
notion-axi は公式の Notion CLI(ntn) をラップしており、認証を処理します。ntn をインストールしてログインしておく必要があります。
- インストール:
curl -fsSL https://ntn.dev | bash - ログイン:
ntn login(ブラウザーが開きます。ワークスペースのトークンは OS のキーチェーンに保存されます。ページを共有する手順は不要で、ユーザーとして操作します)
コマンドが NTN_NOT_INSTALLED で失敗した場合は、インストールコマンドを実行するようユーザーに依頼してください。AUTH_REQUIRED で失敗した場合は、ntn login を実行するか、NOTION_API_TOKEN をエクスポートするよう依頼してください。制限事項として、users にはワークスペースの昇格された権限が必要で、ブロックされることもよくあります。RESTRICTED_RESOURCE エラーは適切に処理してください。
使用する場面
ページやデータベースの検索、ページのプロパティやコンテンツの読み取り、別のページの下やデータベースの行としてページを作成、ページのコンテンツの追記や置換、データベースのスキーマの確認、データベースの行の一覧表示など、Notion に関わるタスクでは常に notion-axi を使用してください。
ワークフロー
- 引数なしで
npx -y notion-axiを実行すると、最近編集されたページやデータベースをコンテンツ優先で表示します。 search <query>で項目を検索し、そのidを控えます。page view <id>はプロパティと Markdown 本文を読み取ります(約 1500 文字までプレビューされます。すべて表示するには--fullを追加します)。db view <id>はデータベースのスキーマを表示し、db query <id>は行を一覧表示します(タイトルと 3 列が表示されます。すべて表示するには--full、表示数を増やすには--limit <n>を指定します)。--where Name=value(スキーマに基づいて型指定。繰り返し指定可能)または生の--filter <json>でサーバー側の結果を絞り込み、--sort Field:asc|desc(繰り返し指定可能)で並べ替え、--cursor <c>でページ送りできます(has_moreが true の場合、レスポンスにnext_cursorが返されます)。db create --parent <page_id> --title <name> --prop Name:typeでデータベースを作成し、db edit <id> --add Name:type --remove Nameでスキーマを変更します。page create --parent <id> --title <text>でページを作成します。データベースの行にするには--dbを追加し、本文を初期設定するには--content <markdown>を追加します。行のプロパティを設定するには--set Name=value(繰り返し指定可能)を追加します。page update <id>でページを編集します。Markdown 本文を--append/--replace(または--*-file形式のオプション)で追記または置換し、必要に応じて--set Name=valueでプロパティ(Status、Date、Select など)を変更します。page archive <id>でページをゴミ箱に移動します(元に戻すには--restoreを指定)。page move <id> --to <parent>で親を変更します。block list <page_id>/block delete <id>はブロック単位で操作します。comments list/add/delete <id>、users get <id>、whoamiではそれぞれコメントの一覧表示/追加/削除、ユーザーの取得、トークンの本人情報の表示を行います。file upload <path> [--attach <page_id>]でローカルファイルをアップロードします(マルチパート送信による単一パート方式)。必要に応じてページに添付できます。api <method> <path> [--body <json>]で任意の Notion REST エンドポイントを直接呼び出せます。専用コマンドで対応していない操作に使うための手段です。- すべてのレスポンスの末尾には、状況に応じた次の手順のヒントが
help:の下に表示されます。これに従ってください。
コマンド
commands[11]:
(none)=home, search, page, db, block, users, comments, whoami, file, api, setup
page subcommands: view, create, update, archive, move
db subcommands: view, query, create, edit
block subcommands: list, delete
users subcommands: (none)=list, get
comments subcommands: list, add, delete
file subcommands: upload
グローバルフラグについては npx -y notion-axi --help を実行してください。コマンドごとの使い方については npx -y notion-axi <command> --help を実行してください。
ヒント
- 出力は TOON 形式でエンコードされ、トークン効率に優れています。リストが非常に長い場合に限り、grep/head にパイプしてください。
ntn loginのワークスペーストークンはユーザーとして動作するため、ユーザーがアクセスできるものすべてにアクセスできます。OBJECT_NOT_FOUNDは通常、共有権限の不足ではなく、ID の誤りを意味します。dbコマンドでは、<id>にデータベース ID またはデータソース ID を指定できます。データベースを指定した場合は、最初のデータソースが自動的に解決されます(特定のデータソースを対象にするには--source <id>を使用してください)。- リストはデフォルトで最小限の内容です。対象を広げるには
--fields url(検索)または--fields a,b(db クエリ)を追加し、データベースの全列を取得するには--fullを指定してください。 db queryはサーバー側でフィルターと並べ替えを行います。すべての行を取得してから自分でフィルターするのではなく、スキーマからコンパイルされる--where Status=Todoを優先してください。--filter <json>は Notion のフィルターをそのまま渡します(--whereとは併用できません)。--cursorを使って上限のあるチャンク単位でページ処理してください。レスポンスのnext_cursorを使うと、has_moreが示した位置から続けられます。- ページ本文は Notion API 経由の Markdown 形式です。そのため、
--append/--replaceと--contentにはすべて Markdown を指定します(または--*-fileフラグを使ってファイルから読み込みます)。 --set Name=valueは繰り返し指定でき、スキーマに従って型が決まります。日付はstart..end、複数選択/ユーザー/リレーションはカンマ区切り、チェックボックスは true/false で指定します。page archiveは冪等で、アーカイブ済みのページをアーカイブしても何も起こりません。whoamiは現在のログインに対応する ID(ボットかユーザーか)とワークスペースを表示します。usersの実行には昇格されたワークスペース権限が必要で、多くの場合RESTRICTED_RESOURCEになります。- 専用コマンドがないもの(ビュー、議事録、テンプレート、ページ分割されたプロパティ項目)は
apiから利用できます。Notion REST API 全体が利用可能です。 - 終了コード:0 は成功、1 はエラー、2 は使用方法のエラーです。エラーは
error、code、helpの各リストを含む構造化データです。