AI Tools 2026年4月18日

Claude Memory Tool完全解説:会話をまたいで情報を保存する長期記憶API

2025年9月29日betaリリースのClaude Memory Toolを解説。クライアントサイドメモリの仕組み、Context Editingとの組み合わせによる長期エージェント設計、実装パターンを網羅。

TL;DR

  • Claudeが会話をまたいで情報を保存・参照・更新できるツール
  • ストレージはクライアントサイド管理(開発者が保存先を自由に選択)
  • Context Editing と組み合わせると長期エージェントでのコンテキスト溢れを防止

概要

Claude Memory Tool は、2025年9月29日にbetaとして公開されたメモリ管理ツールです。Claudeが自律的に情報を保存・参照・更新し、セッションをまたいでコンテキストを維持できます。

ストレージはサーバーサイドではなくクライアントサイドで管理します。保存先はファイル・データベース・ベクターストアなど開発者が自由に選べます。


ツールの種類

Memory Toolは3種類の操作をカバーします:

ツール名操作用途
memory_create新規保存新しい情報を記録
memory_read読み取り過去の情報を参照
memory_update更新既存情報を最新化

基本的な使い方

import anthropic
import json

client = anthropic.Anthropic()

# メモリストア(シンプルなdict例)
memory_store = {}

def handle_memory_tool(tool_name, tool_input):
    """Memory Toolの実行ハンドラー"""
    if tool_name == "memory_create":
        key = tool_input["key"]
        memory_store[key] = tool_input["value"]
        return f"保存しました: {key}"

    elif tool_name == "memory_read":
        key = tool_input.get("key")
        if key:
            return memory_store.get(key, "データが見つかりません")
        return json.dumps(memory_store)  # 全件返す

    elif tool_name == "memory_update":
        key = tool_input["key"]
        memory_store[key] = tool_input["value"]
        return f"更新しました: {key}"

# Memory Tool を組み込んだエージェントループ
response = client.beta.messages.create(
    model="claude-opus-4-7",
    max_tokens=1024,
    tools=[{"type": "memory_20250818", "name": "memory"}],
    messages=[
        {
            "role": "user",
            "content": "私は田中省伍です。Webエンジニアとして働いています。覚えておいてください。"
        }
    ],
    betas=["memory-tool-2025-09-12"],
)

Context Editing との組み合わせ

長期エージェントでは、処理を続けるとツール出力が蓄積してコンテキストウィンドウを消費します。Context Editing と組み合わせることで、古いツール結果を削除しながら重要情報だけをメモリに保持できます。

# コンテキスト削減 + メモリ保持の組み合わせ例

# 1. エージェントが重要情報をMemory Toolで保存
# 2. 古いtool_resultをContext Editingで削除
# 3. 次のステップでMemory Toolから必要な情報を読み取る

# SDKのtool_runner(自動コンパクション内蔵)を使う場合
from anthropic import tool_runner

result = tool_runner.run(
    client=client,
    model="claude-opus-4-7",
    tools=[{"type": "memory_20250818", "name": "memory"}],
    messages=[...],
    betas=["memory-tool-2025-09-12"],
    handle_tool_call=handle_memory_tool,
)

Claude.ai のメモリとの違い

項目Memory Tool(API)Claude.ai メモリ
管理者開発者(クライアント側)Anthropic(サーバー側)
保存先自由(DB・ファイル等)Anthropicのシステム
ユーザー操作開発者が設計claude.ai UIから管理
対象API利用アプリclaude.ai ユーザー
カスタマイズ完全に自由限定的

対応モデル

  • Claude Opus 4.1 / Opus 4
  • Claude Sonnet 4.6 / Sonnet 4
  • Claude Haiku 4.5

参考リンク