問題があります。いわゆる「コードがコンパイルできない」問題ではありません。「アイデアやプロジェクトやメモが多すぎて、脳が諦めて再起動してしまう」問題です。
そこで、当然のことながら私は、Open Claw の中に AI エージェントを作りました。役目はただひとつ――Notion に、美しく、すべてを記録すること。名前は Escriber です。
これが私の Notion MCP Challenge への提出です。集中して単一の目的だけを担うエージェントを、14 個の Notion ツールで構築する――これは、聞こえてくるとおりに大いに満足のいく作業でした。
私が作ったもの
Escriber は、私の OpenClaw マルチエージェントチームにおける5人のうちのエージェント #2 です。
彼の SOUL.md には、まさにこれが書かれています。「私は記録する。美しく。Notion で。」 そして OpenClaw を使ったことがない人のために言うと、これらのエージェントには Soul.md ファイルが用意されていて、そのエージェントが誰で、どんな小さな個性を持つのかを定義してくれます。
それだけです。これで終わり。彼はあなたのコードのデバッグはできません。人生相談もできません。彼のレーンはひとつで、そこに留まります――正直、それは私がたいてい持ち合わせていない以上の規律です。
彼は Discord 上でボットとして生きています。あるいは Web チャットのインターフェースを使って、彼を直接呼び出すこともできます。彼は少し職人芸的です。ドライなウィットが最初から織り込まれているのは、ドキュメントが魂のないものにならなくていいからです。彼は私の Synap ボットを使って、プロジェクトの要約を書き、私が言うように整えたうえで、そのあと Synap から返ってきた内容を保存します。
彼は万能ナイフではありません。これは鉛筆削りのような、スカルペルです。で、時にはそれこそが必要なものなんです。
動画デモ
コードを見せて
Escriber は mcporter を通じて Notion と会話します。mcporter は MCP リレーで、ツール呼び出しを Notion の公式 MCP サーバーにプロキシします。Notion とのやり取りはすべて、こんな見た目になります。
mcporter call notion.<tool_name> --args '{ ... }'
きれい。首尾一貫。どれを相手にするにも同じパターンで支配する。
こちらが全装備――14 個のツール、1 人(1 エージェント)、そしてドキュメントのないプロジェクトに言い訳はゼロ:
| ツール | 何をするか |
|---|---|
notion.search |
複製を作る前に、既存のページ/データベースを見つける |
notion.create_page |
ワークスペースのどこにでも新しいページを作る |
notion.retrieve_page |
ページのメタデータを読む |
notion.update_page |
ページのプロパティを更新する |
notion.append_block_children |
既存のページにコンテンツブロックを追加する |
notion.retrieve_block_children |
ページにすでに何があるかを読む |
notion.retrieve_block |
特定のブロックを取得する |
notion.update_block |
既存のブロックを編集する |
notion.delete_block |
ブロックを削除する |
notion.create_database |
新しいデータベースを作る |
notion.retrieve_database |
データベース構造を読む |
notion.update_database |
データベースのスキーマを変更する |
notion.query_database |
データベースのエントリをフィルタし、検索する |
notion.create_database_item |
データベースに行を追加する |
また Escriber には、指示の中にワークフローのルールが組み込まれています。規律のないツールは、ただの「API 付きのカオス」にすぎないからです:
- 最初に検索。 新しいページを作る前に、必ずそのページがすでに存在しないか確認します。
- 書く前に読む。 構造上の大惨事を避けるため、追加する前にブロックの子要素を取得します。
- 正しいブロック種別。 判断にはコールアウト。詳細にはトグル。構造には見出し。すべてが段落になるわけではありません。
- 意図して構造化する。 二度測って、一度切る。
Notion MCP の使い方
これが実際にどう動くのかを説明しましょう。
mcporter は Escriber を Notion の公式 MCP サーバーである https://mcp.notion.com/mcp に接続します。すべてのツール呼び出しは、このリレーを経由してプロキシされます――直接 API をゴニョゴニョいじったり、独自のリクエストビルダーを作ったりはしません。MCP 層がそれを引き受けます。Escriber はただツールを話せばいいのです。
日々の様子はこうです:
新しいプロジェクトが始まった?
create_page でプロジェクトのハブを立ち上げます。create_database_item で、それをマスタープロジェクトのデータベースに記録します。数秒で完了。
ビルドセッションをまとめる?
既存のプロジェクトページに append_block_children を使って追記します。ビルドノート、下した判断、起きたこと・起きなかったこと。構造化されています。タイムスタンプ付き。あとでちゃんと見つけられます。
JB の求人リスト
create_page 私のリクルーターエージェントが、毎朝 Esciber を使って求人リストを保存しました。未来の自分は感謝するでしょう。過去の自分はこんなことをしていませんでした。これらは Notion に日次で保存され、並び替えもできます ☠️
これを「現実にした」恥ずかしさの瞬間について話させてください。
数週間前、私は自分の Notion ワークスペースを遡って見ました。「ideas v3 FINAL」とか「project notes DO NOT DELETE」といったタイトルのページ。中身は……ちょうど箇条書きが3つと YouTube のリンクだけ。以上です。そう、それがレガシーです。善意の墓場。☠️
Escriber は、私よりもドキュメントの規律を持った誰かが必要だったから存在します。結局、その「誰か」は、ソウルファイルと 14 個の Notion ツールを持った、集中型の AI エージェントでした。
仕事は 1 つ。レーンは 1 つ。本当の個性。そしてドキュメントは今ちゃんと書かれています。
「最適化は、単一の失敗ポイント――あるいは単一の成功ポイントから始まる。レーンを自分のものにしろ。」
あと、この記事を書くために時間を取って手伝ってくれた Bloggy にも感謝です。
Escriber は私の OpenClaw エージェントチームの一部です。openclaw でマルチエージェント構成を作ることに興味があるなら、コメントしてください――このスタック全体が組み上がっていく過程で、もっと書いていきます。


