cf-memory
CF Memory Plugin
모든 AI 코딩 에이전트와 LLM 프레임워크를 위한 Cloudflare Agent Memory.
에이전트에게 지속적이고 세션 간 유지되는 메모리를 제공합니다. Cloudflare Agent Memory가 지원하는 관리형 서비스로, 리콜(recall), 사실 추출, 프로필 요약을 처리합니다. 실행해야 할 벡터 DB도, 관리해야 할 임베딩도, 배포해야 할 Worker도 없습니다.
대상 사용자
세션 간 컨텍스트를 기억해야 하는 AI 코딩 에이전트 (Claude Code, Codex, Cursor, Hermes, OpenClaw, TRAE, OpenCode, pi)
영구 메모리로 에이전트를 구축하는 LLM 프레임워크 (LangChain, LangGraph)
MCP 클라이언트 (Model Context Protocol을 지원하는 모든 도구)
A2A 프로토콜을 사용하는 에이전트 간 시스템
자신의 AI 에이전트를 위한 간단한 호스팅형 메모리 백엔드를 원하는 모든 사용자
기능
기능 | 설명 |
Remember | 사실, 지침, 이벤트 저장 — CF가 자동으로 분류합니다. |
Recall | 종합적인 답변을 제공하는 시맨틱 검색 (단순 문자열 매칭 결과가 아님) |
Ingest | 대화 턴을 입력하면 CF가 사실/이벤트/지침/작업을 추출합니다. |
Summary | 저장된 모든 정보를 자동으로 생성한 Markdown 프로필 |
Namespaces | 앱, 사용자, 환경별로 메모리를 격리합니다. |
빠른 시작 (모든 에이전트)
pip install git+https://github.com/hansakoch/cf-memory-plugin.git
# Set credentials
export MCP_CLOUDFLARE_API_KEY="your-cf-api-token"
export CF_ACCOUNT_ID="your-account-id"
# Test it works
cf-memory test에이전트 통합
MCP 클라이언트 (범용)
MCP와 호환되는 모든 클라이언트에서 작동합니다: Claude Desktop, Cursor, Windsurf, Continue, Zed 등.
{
"mcpServers": {
"cf-memory": {
"command": "cf-memory",
"args": ["serve"],
"env": {
"MCP_CLOUDFLARE_API_KEY": "your-token",
"CF_ACCOUNT_ID": "your-account-id"
}
}
}
}노출되는 도구: remember, recall, list_memories, get_memory, delete_memory, ingest, summary, list_namespaces, create_namespace, delete_namespace
Hermes
pip 진입점을 통해 자동으로 감지됩니다. 복사할 파일이 없습니다.
# Install
pip install git+https://github.com/hansakoch/cf-memory-plugin.git
# Activate
hermes config set memory.provider cloudflare-memory
# Verify
hermes memory status
# Management
hermes cloudflare-memory status
hermes cloudflare-memory test
hermes cloudflare-memory namespaces
hermes cloudflare-memory cardHermes가 제공받는 기능:
prefetch()— 0ms (캐시 + 백그라운드 recall)sync_turn()— 0ms (데몬 스레드 ingest)에이전트 도구 6개:
cf_remember,cf_recall,cf_list,cf_get,cf_summary,cf_deleteon_session_end— 전체 세션을 자동 ingest하여 사실 추출프로바이더 상태와 함께 시스템 프롬프트 주입
Claude Code
프로젝트의 .claude/mcp.json에 추가하세요:
{
"mcpServers": {
"cf-memory": {
"command": "cf-memory",
"args": ["serve"],
"env": {
"MCP_CLOUDFLARE_API_KEY": "your-token",
"CF_ACCOUNT_ID": "your-account-id"
}
}
}
}또는 전역으로 추가: claude mcp add cf-memory -- cf-memory serve
Codex (OpenAI)
~/.codex/config.toml에 추가하세요:
[mcp_servers.cf-memory]
command = "cf-memory"
args = ["serve"]
env = { MCP_CLOUDFLARE_API_KEY = "your-token", CF_ACCOUNT_ID = "your-account-id" }Cursor
프로젝트의 .cursor/mcp.json에 추가하세요:
{
"mcpServers": {
"cf-memory": {
"command": "cf-memory",
"args": ["serve"],
"env": {
"MCP_CLOUDFLARE_API_KEY": "your-token",
"CF_ACCOUNT_ID": "your-account-id"
}
}
}
}OpenClaw
OpenClaw 구성에 추가하세요:
{
"mcpServers": {
"cf-memory": {
"command": "cf-memory",
"args": ["serve"],
"env": {
"MCP_CLOUDFLARE_API_KEY": "your-token",
"CF_ACCOUNT_ID": "your-account-id"
}
}
}
}TRAE / TRAE CN / TraeCode CLI 2.0
TRAE 설정 또는 .trae/mcp.json에 MCP 서버를 추가하세요:
{
"mcpServers": {
"cf-memory": {
"command": "cf-memory",
"args": ["serve"],
"env": {
"MCP_CLOUDFLARE_API_KEY": "your-token",
"CF_ACCOUNT_ID": "your-account-id"
}
}
}
}OpenCode
~/.opencode/config.json에 추가하세요:
{
"mcp": {
"cf-memory": {
"command": "cf-memory",
"args": ["serve"],
"env": {
"MCP_CLOUDFLARE_API_KEY": "your-token",
"CF_ACCOUNT_ID": "your-account-id"
}
}
}
}pi
pi 구성에 MCP 서버를 추가하세요:
{
"mcpServers": {
"cf-memory": {
"command": "cf-memory",
"args": ["serve"],
"env": {
"MCP_CLOUDFLARE_API_KEY": "your-token",
"CF_ACCOUNT_ID = "your-account-id"
}
}
}
}Agent Plugins 1.0
플러그인으로 설치하세요:
pip install git+https://github.com/hansakoch/cf-memory-plugin.git이 패키지는 hermes_agent.memory_providers 진입점을 통해 등록됩니다. Agent Plugins 1.0과 호환되는 모든 호스트는 이를 자동으로 감지합니다.
LangChain / LangGraph
import asyncio
from cloudflare_memory import CloudflareMemoryClient
# Use as a memory backend in your LangChain/LangGraph agent
client = CloudflareMemoryClient(
account_id="your-account-id",
api_token="your-token",
namespace="my-agent",
profile="user-123",
)
# Store a fact
entry = asyncio.run(client.remember("User prefers Python over JavaScript."))
# Recall
result = asyncio.run(client.recall("What programming language does the user prefer?"))
print(result.answer) # "Python"
# Ingest a conversation
asyncio.run(client.ingest([
{"role": "user", "content": "I'm building a RAG pipeline."},
{"role": "assistant", "content": "Great! Let me help with that."},
]))
# Get summary
summary = asyncio.run(client.get_summary())A2A (Agent-to-Agent)
피어 에이전트가 발견하고 호출할 수 있도록 A2A 서버를 시작하세요:
cf-memory a2a --port 9120에이전트 카드: http://localhost:9120/.well-known/agent.json
스킬: remember, recall, ingest, list, get, summary
Python (독립형)
import asyncio
from cloudflare_memory import CloudflareMemoryClient
async def main():
async with CloudflareMemoryClient(
account_id="your-account-id",
api_token="your-token",
namespace="my-app",
profile="default",
) as client:
# Remember
entry = await client.remember("User is based in London.")
print(f"[{entry.type}] {entry.summary}")
# Recall
result = await client.recall("Where is the user based?")
print(result.answer)
# Ingest conversation (async — memories appear 3-8s later)
await client.ingest([
{"role": "user", "content": "I prefer dark mode."},
{"role": "assistant", "content": "Noted!"},
])
# Summary
print(await client.get_summary())
asyncio.run(main())구성
환경 변수
변수 | 필수 | 설명 |
| 예 | Agent Memory 권한이 있는 Cloudflare API 토큰 |
| 아니오 | Cloudflare 계정 ID (기본값: Iceberg Media) |
| 아니오 | 네임스페이스 이름 (기본값: |
| 아니오 | 프로필 이름 (기본값: |
Cloudflare API 토큰 만들기
Cloudflare 대시보드 → API 토큰(으)로 이동하세요.
Agent Memory 권한이 있는 토큰을 만드세요.
유료 Workers 구독과 Agent Memory에 대한 베타 액세스가 필요합니다.
제한 사항 (공식)
항목 | 제한 |
ingest()당 메시지 수 | 500 |
메시지 내용 | 32 KB UTF-8 |
Recall 쿼리 | 1 KB UTF-8 |
세션 ID | 64자 |
프로필 이름 | 100자 |
네임스페이스 이름 | 32자 |
성능
에이전트의 턴에 레이턴시를 추가하지 않도록 설계되었습니다:
작업 | 지연 시간 | 차단 여부? |
| 0ms | 아니요 — 캐시 + 백그라운드 |
| 0ms | 아니요 — 데몬 스레드 |
| 1.3–3.8s | 사용자 요청 시 |
| ~5s | 사용자 요청 시 |
| ~0.4s | 사용자 요청 시 |
| ~0.8s | 사용자 요청 시 |
CLI 참조
# Standalone
cf-memory test # Connectivity check
cf-memory serve [--transport stdio|sse] # MCP server
cf-memory a2a [--port 9120] # A2A agent server
cf-memory card # Print agent card JSON
# Hermes plugin
hermes cloudflare-memory status # Provider status
hermes cloudflare-memory test # Full connectivity test
hermes cloudflare-memory namespaces # List namespaces
hermes cloudflare-memory create-ns NAME # Create namespace
hermes cloudflare-memory delete-ns NAME # Delete namespace
hermes cloudflare-memory card # Print agent card개발
git clone https://github.com/hansakoch/cf-memory-plugin.git
cd cloudflare-memory
python -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"
pytest tests/ -v라이선스
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Shared, governed long-term memory for AI agents across tools and sessions via MCP and REST.
Shared long-term memory vault for AI agents with 20 MCP tools.
Your memory, everywhere AI goes. Build knowledge once, access it via MCP anywhere.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/hansakoch/cf-memory-plugin'
If you have feedback or need assistance with the MCP directory API, please join our Discord server