Dots
Remote MCPとOAuthでDotsをNowledge Memに接続します。4つの設定手順と会話の同期方法を説明します。
DotをNowledge Memに接続すると、保存済みの知識を検索できます。 送信した会話の原文を保存してThreadsから読み返せます。 同じ会話IDとメッセージIDを使って同じ原文を再送しても、複製は増えません。 後から送信した過去のメッセージも、会話の順序に沿って補えます。
Memはクライアントが実際に送信した原文だけを保存します。 Dotの全履歴を自動で取得することはありません。
Desktopワークスペースでは、Nowledge Memを起動し、公開トンネルを接続したまま、OpenAIアカウントにMCPプラグインを追加します。
Hosted Cloudワークスペースでは、そのワークスペースの完全なCloud MCP URLとCloudログインを使います。 DesktopのペアリングとAccess Anywhereは不要です。 以下の4つの手順はDesktop向けです。
Nowledge Memを起動する
Nowledge Memを起動し、そのまま実行しておきます。
Settings → Access AnywhereのListening onを確認し、表示された実際のアドレスを使います。
通常は127.0.0.1:14242です。
Access Anywhereを設定して開始する
Settings → Access Anywhereで接続方法を選びます。 自分のCloudflareドメインを使う場合は、次のように設定します。
- Cloudflareでトンネルを作成または選択し、公開ホスト名のService URLを実際の待ち受けアドレスに向けます。
例:
http://127.0.0.1:14242。 - MemのPublic URLには、
https://mem.example.comのようなHTTPSのドメインルートを入力します。 ここには/mcpや/remote-apiを付けません。 - CloudflareのTunnel tokenをMemに保存してから、Access Anywhereを有効にします。 このトークンはトンネルを実行するためのもので、MemのAPI keyやOAuth tokenとは別です。
トンネルが接続済みになってから次に進みます。 固定ドメインが不要なら、Quick linkも使えます。 詳しくはAccess Anywhereを参照してください。 Dotが接続を使う間は、Memとトンネルを動かしておきます。
OpenAI PluginsにMCPを追加する
MemのConnectors → AI Tools → Remote MCP over OAuthから設定を開始し、新しいブラウザーのペアリングページを開きます。
次にOpenAI Pluginsを開き、+ → Add custom MCP serverを選びます。
名前をNowledge Memとして、公開MCP URLを入力します。
https://mem.example.com/mcp認証方法はOAuthを選び、プラグインの作成を進めます。 ペアリングと承認には同じブラウザープロファイルを使ってください。 例えば、同じDiaプロファイルです。 現在の操作はOpenAIの接続ガイドで確認できます。 アカウントやワークスペースのポリシーによって利用できる操作は異なります。
必要な権限を承認する
MemのOAuthページで、クライアントが要求する権限を確認して承認します。
threads:readは会話の検索と読み取りを許可します。
会話を同期するには、クライアントがthreads:syncも明示的に要求する必要があります。
承認後、プラグインのツール一覧にsync_threadがあることを確認します。
読み取り専用の既存接続は、threads:syncを含む新しい要求で再承認が必要です。
ツール一覧を更新するだけでは、書き込み権限は増えません。
OpenAIのOAuth設定には、Tunnel tokenやMemのAPI keyを入力しないでください。
保存結果を確認する
まず、Memに保存済みの内容をDotに検索させ、見つかることを確認します。 次の2つのテストメッセージで同期を確認します。
Nowledge Memのsync_threadで、以下の2つのテストメッセージを保存してください。
新しい会話IDと固定のメッセージIDを使い、この原文だけを保存して処理結果を表示してください。
user: これはDotsの接続テストです。
assistant: これはテスト用の返信です。成功した処理結果にはsnapshot_saved: trueが含まれます。
初回は2つのメッセージが追加されます。
同じIDと原文を再送すると、messages_addedは0になるはずです。
MemのThreadsで会話を開き、原文、役割、順序を確認します。
抜けていた履歴を補うときは、保存済みの全メッセージと不足分を会話の順序で送信し、IDと原文を維持します。
処理結果のspace_idも引き続き使ってください。
Threadを保存しても、内容を整理したMemoriesが自動で作られるわけではありません。
Pairing expiredまたはApproval expiredが表示されたら、同じブラウザープロファイルでMemから設定と承認をやり直します。 古い承認URLは再利用しないでください。 ツールが見つからない場合は、クライアントに承認した権限を確認し、再承認してからツール一覧を更新します。
保存した原文は、Threadsから引き続き検索して利用できます。
