---
title: "CloudflareとModel Context Protocolによる永続的自己ホスト型AIメモリシステム"
description: "CloudflareとSecond Brain、MCPを使用して、永続的で自己ホスト型のAIメモリシステムを構築する方法を学びます。ClaudeやGemini、Obsidianでコンテキストを共有しましょう。"
canonical_url: "https://techvoyage.dev/ja/article/use-cloudflare-as-ai-memory"
last_updated: "2026-10-20T09:53:48.383Z"
---

## AIエージェントにおける永続的メモリの重要性

AIアシスタントが日常生活に深く組み込まれるにつれ、私たちは「空白のコンテキスト問題（コンテキストの喪失）」に頻繁に遭遇することになります。先週下した決定は忘れ去られ、新しいセッションを開始するたびに、同じ技術スタックの仕様を入力し、ユーザー設定を何度も定義し直す必要が生じます。

毎回ゼロからやり直す代わりに、継続的に進化し、ユーザーの決定を恒常的に理解し、同じコンテキストの入力を繰り返す手間を完全に省くメモリシステムを構築する必要があります。

## 自己ホスト型 vs. ビルトイン型 AIメモリシステム

多くのAIエージェントにはメモリ機能が組み込まれていますが、私たちは1つのエージェントだけですべての用を足すわけではありません。プロジェクトの設計やアーキテクチャの構築にはClaudeを、コーディングにはKimiを、背景調査にはChatGPTを使用することがあります。しかし、これらの異なるエージェント間でコンテキストは共有されず、それぞれのツール内に完全に孤立（サイロ化）したままになります。

ソフトウェアエンジニアリングの観点から、私たちは不透明なブラックボックスを信頼しません。観察可能で、監査可能であり、そして完全に私たちの制御下にあるAIメモリシステムが必要です。オープンソースプロジェクトである [Second Brain](https://github.com/Tech-Voyage-Dev/second-brain-cloudflare/tree/main)（[https://github.com/rahilp/second-brain-cloudflare](https://github.com/rahilp/second-brain-cloudflare) のフォーク）は、Model Context Protocol（MCP）をサポートした、永続的で自己ホスト（セルフホスト）型のメモリシステムを提供します。Claude、ChatGPT、Kimi CodeなどのMCP対応AIエージェントであれば、共通の統一されたメモリコンテキストを完全に共有できます。

## Cloudflare上でSecond Brain AIメモリを構築する方法

Second Brainメモリシステムは、世界中に分散された超低レイテンシのサーバーレス実行インフラを提供する **Cloudflare Workers** 上に展開されます。これにより、メモリの検索（recall）や保存などの処理を、AIの推論ループ内で遅延を感じさせることなく、ほぼ瞬時に実行することができます。

ベクトルの生成には、**Workers AI** の埋め込み（embedding）モデルが使用されます。生成された埋め込みベクトルは、高度に最適化され、世界中に分散配置されたベクトルデータベースである **Cloudflare Vectorize** に保存されます。**Cloudflare Vectorize** は、セマンティックな（意味的な）関連性を持つメモリを正確に特定するために、コサイン類似度（cosine similarity）検索を実行します。

Second Brainには、インテリジェントな重複検出とマージ（融合）メカニズムも備わっています。意味の類似度が85%未満のコンテンツは新規メモリとして保存され、それ以上の類似度を持つものは重複候補としてブロックまたはマークされます。1,600文字を超える長いテキストは、文脈の喪失を防ぐために、文の境界や改行位置で適切に分割され、隣り合うチャンク間で200文字の重複（overlap）が維持されます。分割された各チャンクはそれぞれベクトル化され、極めて精度の高いマッチングを実現します。

AIエージェントから直接呼び出して使用するために、以下のツールがMCPインターフェースとして公開されています：

- `remember`: アイデア、決定事項、好み、プロジェクトのコンテキストを保存する
- `append`: 既存のメモリに新しい更新情報や追記を追加する
- `update`: 既存のメモリを完全に置き換える
- `recall`: 完全一致するキーワードではなく、セマンティックな意味に基づいてメモリを検索する
- `list_recent`: 最近保存されたメモリを一覧表示する
- `forget`: メモリを完全に、恒久的に削除する
- `link/connections`: 関連するメモリ同士を明示的にリンクする（V2グラフ機能）

### CloudflareでのSecond Brainのセットアップ

1. [Githubリポジトリ](https://github.com/Tech-Voyage-Dev/second-brain-cloudflare) ページの `Deploy to Cloudflare` をクリックします。 [[![GitHubページ上のDeploy to Cloudflareボタンのハイライト表示](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/deploy-to-cloudflare-button.webp)]]
2. 表示されたCloudflare Workerのフォームに入力します。
![Cloudflare Workersのデプロイ設定フォーム画面](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/cloudflare-worker-deployment-form.webp)
3. Dimensions（次元数）に '384' を入力し、Metric（指標）に 'cosine' を選択して、Deployボタンをクリックします。
![Cloudflare Vectorizeデータベース作成設定画面](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/cloudflare-vectorize-configuration.webp)
4. 以下は、Cloudflare Worker内に展開されたSecond Brainの管理ダッシュボードの概要です：
![デプロイされたSecond Brain Workerの概要ダッシュボード](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/cloudflare-worker-second-brain-overview.webp)
5. 'Settings'（設定）タブをクリックし、安全なアクセスキーを作成するために 'AUTH_TOKEN' の編集アイコンをクリックします：
![AUTH_TOKENがハイライトされたCloudflare Workerの変数設定](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/cloudflare-worker-auth-token-settings.webp)
6. 'Rotate' リンクをクリックして、新しい値を入力できるようにします： ![AUTH_TOKEN変数の編集およびローテーション画面](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/cloudflare-worker-auth-token-rotate.webp)![生成されたランダムな文字列をAUTH_TOKENの値フィールドに入力する様子](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/cloudflare-worker-auth-token-value-input.webp)
7. macOSのターミナルで `openssl rand -base64 32` コマンドを実行して安全なランダム値を生成し、それを 'Value' 入力フィールドに貼り付けます。
8. 'Deploy' ボタンをクリックして、'AUTH_TOKEN' の新しい値を保存します。
9. ウェブブラウザで、作成したSecond BrainのWorker URLを開きます。
![Bearer Token入力欄があるSecond Brain Web UIのログイン画面](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/second-brain-web-ui-login.webp)
10. 作成した 'AUTH_TOKEN' を `Bearer token` フィールドに入力し、'Connect' ボタンをクリックして管理用の Web UI にログインします。

### MCP経由でのClaude Desktopの統合

1. Claude Desktopの設定画面で 'Customize'（カスタマイズ）をクリックします。
![Claude Desktop画面上のCustomizeボタンの指示位置](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/claude-desktop-customize-button.webp)
2. 'Developer'（デベロッパー）をクリックして、MCPサーバーの設定ファイルをエディタで直接開きます：
![MCP設定にアクセスするためのClaude Desktopデベロッパー設定メニュー](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/claude-desktop-developer-menu.webp)
3. `claude_desktop_config.json` ファイルの `mcpServers` セクションに以下のコードブロックを追加します：

```json
"second-brain": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://<your-worker-url>/mcp",
        "--header",
        "Authorization: Bearer <your-token>"
      ]
    }
```

![Second Brainサーバーを含むClaude DesktopのMCP設定JSONファイル](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/claude-desktop-mcp-config-json.webp)
4. Claude Desktopを再起動し、'Local MCP servers' のリストを確認します。ステータスが 'running'（実行中）と表示されていれば成功です。
![Second Brain MCPサーバーが正常に実行中であることを示すClaude Desktop](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/claude-desktop-mcp-status-running.webp)

### MCP経由でのClaude Codeの統合

- ターミナルで以下のコマンドを実行して、新しいMCPサーバーを追加します：

```shell
claude mcp add --transport http second-brain https://<your-worker-url>/mcp
```

- Claude Codeはエンドポイントが認証を必要とすることを自動的に検出し、ウェブブラウザでログインページを開きます。ブラウザ上で `AUTH_TOKEN` を入力して認証を完了させます。
- `~/.claude` ディレクトリ内に `CLAUDE.md` ファイルを作成し、[CLAUDE_INSTRUCTIONS.md](https://github.com/rahilp/second-brain-cloudflare/blob/main/AI_Instructions/CLAUDE_INSTRUCTIONS.md) に記載されている指示を記述しておきます。

### MCP経由でのGemini CLIの統合

1. 以下のMCPサーバー設定を、お使いの './.gemini/settings.json' ファイルに追加します：

```json
"second-brain": {
      "httpUrl": "https://<your-worker-url>/mcp",
      "oauth": {
        "enabled": true
      }
    }
```

1. Gemini CLIを起動します。

### AIエージェントでのSecond Brainのテスト

1. **Claude Desktop** 上で、簡単なブランドのカラーパレット設定を指示してみます。初期状態では、Second Brainは呼び出されません。
![Second Brainメモリ層が有効になっていない状態でのClaude Desktopでの最初のテスト](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/claude-desktop-first-run-brand-palette.webp)
2. 単に 'remember' という言葉を使ってみても、**Claude Desktop** のローカルビルトインツールである `memory_user-edits` のみが実行され、リモートのSecond Brainメモリ層は無視されます。
![Second Brainではなくローカルの組み込みツールにフォールバックするClaude Desktop](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/claude-desktop-remember-built-in-tool-fallback.webp)
3. 次に、**Claude Code** 上で以下のプロンプトを入力して送信すると、Second Brainが正しく呼び出されます：

```text
Remember Our brand palette uses `#1a1a2e` as primary, `#16213e` as secondary, and `#e94560` as accent. Never use pure black."
```

![Second Brain MCPの正常なトリガーを示すClaude Codeのターミナル画面](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/claude-code-second-brain-mcp-called.webp)
4. **Cloudflare上のSecond Brain** ダッシュボードを開き、新しいカラー設定が保存されていることを確認します：
![Second Brain Web UIで保存されたブランドカラーコードのデータを確認する画面](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/second-brain-web-ui-color-verification.webp)
- *Claude Codeがシームレスに機能したのは、プロジェクトフォルダ内の CLAUDE_INSTRUCTIONS.md に 'Second Brain' に関連するトリガー指示が含まれていたためです。*
5. **Claude Desktop** でも同様に機能させるには、プロンプトの中で 'Second Brain' という言葉を明示的に含めて、この永続メモリ層への保存または読み込みを強制する必要があります。
![キーワードを明示的に指定してClaude DesktopでSecond Brainをトリガーする様子](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/claude-desktop-second-brain-explicit-trigger.webp)
6. **Gemini CLI** も同様で、Second Brain MCPをトリガーするために、プロンプト内で 'Second Brain' に言及する必要があります。
![Second Brain MCPの正常な呼び出しを示すGemini CLIのターミナル画面](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/gemini-cli-second-brain-trigger.webp)
- *CLAUDE_INSTRUCTIONS.md と同じように、お使いの GEMINI.md ファイルに類似の指示を追加しておくことで、プロンプトでキーワードを意識して入力しなくても、背後で自動的にSecond Brainがトリガーされるようになります。*

### Webブラウザ拡張機能

- Google Chrome、Mozilla Firefox、および Microsoft Edge 向けに公式拡張機能が提供されています。
- 拡張機能では以下の操作が可能です：

  - **現在のページをキャプチャする** — 表示中のページのタイトルとURLをSecond Brainに即座に保存します。
  - **選択したテキストをキャプチャする** — ページ上の任意のテキストをドラッグ選択してから拡張機能アイコンをクリックすると、その抜粋がページのタイトルとURLとともに保存されます。
  - **クイックメモを追加する** — 保存する前に、拡張機能のポップアップ内に直接メモを入力したり、`#hashtags` を割り当てたりできます。ハッシュタグは自動的にメタデータタグとして抽出されます。

### Obsidianプラグインによる個人知識の同期

- ローカルの Obsidian Vault 内のノートを、Cloudflare上のSecond Brainと直接、選択的に同期するための専用プラグインが提供されています。
- 特定のノートに特定のタグを追加するだけで、その内容が永続ベクトルストレージに同期されます。

#### Obsidianプラグインのインストール

1. Obsidianを起動し、<span>

Settings（設定）

</span>

 → <span>

Community Plugins（コミュニティプラグイン）

</span>

 を開きます。
![Community Plugins（コミュニティプラグイン）セクションへ遷移するObsidianの設定画面](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/obsidian-settings-community-plugins.webp)
2. <span>

Browse（閲覧）

</span>

 ボタンをクリックします。
![Browse（閲覧）ボタンが表示されたObsidianのコミュニティプラグイン検索画面](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/obsidian-community-plugins-browse.webp)
3. 'Second Brain Sync' を検索します。
![Obsidianプラグインストアで「Second Brain Sync」プラグインを検索する画面](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/obsidian-community-plugins-search-second-brain.webp)
4. <span>

Install（インストール）

</span>

 ボタンをクリックし、続いて <span>

Enable（有効化）

</span>

 ボタンをクリックします。
![Obsidianで「Second Brain Sync」プラグインをインストールして有効化する様子](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/obsidian-plugin-install-and-enable.webp)

#### Obsidianプラグインの設定

1. <span>

Settings（設定）

</span>

 → <span>

Second Brain Sync

</span>

 を開きます。
2. 作成したWorkerの「URL」と「Auth token（認証トークン）」を入力します。
![Obsidianプラグイン設定画面でWorkerのURLと認証トークンを入力する様子](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/obsidian-plugin-configuration-credentials.webp)
3. <span>

Test

</span>

 ボタンをクリックし、接続が正常に確立されていることを検証します。
![Obsidianプラグインの接続テストが正常に成功したことを示すダイアログ](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/obsidian-plugin-connection-test-success.webp)
4. 同期動作を設定します。<span>

Sync tag

</span>

 に同期対象ノートを判別するタグ名を設定し、<span>

Auto-sync on save（保存時に自動同期）

</span>

 を有効にします。
![Obsidianプラグイン設定で同期タグ（Sync tag）を設定し、保存時の自動同期を有効化する画面](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/obsidian-plugin-sync-behavior-settings.webp)
5. Obsidianのノート内に、設定した同期用タグ（例： `second-brain`）を記述して保存します。
![同期用タグ「second-brain」を付与した新規Obsidianノートの作成画面](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/obsidian-note-with-sync-tag.webp)
6. 保存されたノートは、即座にCloudflare上に展開されたSecond Brainへ自動同期されます。
![同期が成功したObsidianのノートをSecond Brain Web UI側で確認する様子](https://inimages.techvoyage.dev/articles/Use%20Cloudflare%20as%20AI%20memory/second-brain-web-ui-synced-note-verification.webp)

## 結論

Second Brainは、現在のAIエージェントにおける最大の難題の一つである「コンテキストの喪失とメモリの欠如」に対する、洗練されたオープンソースの解法を提供します。このプロジェクトをCloudflareの拡張性の高いサーバーレスインフラと融合させることで、グローバルに分散され、極めて遅延の少ない、完全に自己ホストされたセマンティックメモリレイヤーを手にすることができます。さらにModel Context Protocol（MCP）規格に準拠しているため、この知識ベースは多様なAIアシスタント間で完全にポータブル（移植可能）です。

Obsidianプラグインの存在は、このアーキテクチャを個人の知識管理と推論ループを橋渡しするものへと昇華させます。ユーザーの散らばった個人ノートが、AIエージェントがいつでも意味的に解釈・呼び出し可能な構造化された文脈データへと進化します。

自己ホスト型アプローチ、セマンティックベクトル検索、そしてMCPのようなオープンな標準規格を高度に融合させることで、Second Brainは単なる情報置き場を超え、真の意味で実用的な独自の「AIアシスタントエコシステム」を構築するための強固な設計基盤であることを証明しています。

## 参考文献：

- [https://www.thesecondbrain.dev/](https://www.thesecondbrain.dev/)
- [https://github.com/rahilp/second-brain-cloudflare/wiki/How-It-Works](https://github.com/rahilp/second-brain-cloudflare/wiki/How-It-Works)
- [Connect to AI Clients](https://github.com/rahilp/second-brain-cloudflare/wiki/Connect-to-AI-Clients)
- [Second Brain Obsidian Plugin](https://github.com/rahilp/second-brain-cloudflare/wiki/Obsidian-Plugin)
- [https://github.com/rahilp/second-brain-obsidian-plugin](https://github.com/rahilp/second-brain-obsidian-plugin)
