Self-learning memory infrastructure for AI products
Project description
Agent Magnet
Self-learning memory infrastructure for AI products. It learns from what users do — not what they say.
Installation
pip install agent-magnet
Two Integration Modes
1. MCP Server (Free, Self-Hosted)
Run on your own infrastructure. You control your data.
Add to your MCP config (Claude Desktop / Cursor / any MCP client):
{
"mcpServers": {
"agent-magnet": {
"command": "agent-magnet-mcp",
"env": {
"MAGNET_REDIS_URL": "your_redis_url",
"MAGNET_OPENAI_KEY": "your_openai_key"
}
}
}
}
Tools available:
get_profile— get learned memory profile for a userinject_memory— get memory injection string for system promptadd_signal— record a behavioral signalget_cold_start— get onboarding profile for new usersget_team_profile— get shared team memory (requires Redis)get_merged_injection— merged user + team + org memory injectionget_project_memory— per-user breakdown of what was learned in a projectshare_to_team— explicitly share a personal preference to team memoryforget_team— remove a preference from team memoryadd_team_signal— record a signal directly to team scope
2. Proxy (Hosted, Dashboard included)
Change one line. We handle the infrastructure.
from openai import OpenAI
client = OpenAI(
api_key="mg_sk_...",
base_url="https://magnet-gateway.onrender.com/v1",
default_headers={"x-session-id": "user_123"}
)
Get your API key: agentmagnet.app
Team Memory
Memory works for individual users out of the box. To share memory across a team, add Redis and a shared MAGNET_TEAM_ID.
Solo (local SQLite, no Redis needed):
agent-magnet init
# Use local storage? Y
# Team ID: (press Enter to skip)
Each person's preferences are stored privately on their machine.
Team (shared Redis):
agent-magnet init
# Use local storage? N
# Redis URL: redis://your-redis-host:6379
# Team ID: acme-eng
All team members point to the same Redis. Memory is scoped per-user but team-level insights are available.
What team memory gives you:
get_project_memory(project_id="acme-app")
# →
# {
# "contributors": {
# "ahmet": {"prefers": ["short responses", "Turkish"], "watch_out": ["never use em-dashes"]},
# "ayse": {"prefers": ["detailed explanations"], "dislikes": ["bullet lists"]}
# },
# "team_shared": {
# "prefers": ["short responses"], ← promoted because 2+ users share it
# "watch_out": []
# }
# }
Explicitly share a preference to team:
share_to_team(user_id="ahmet", fact_or_subject="short responses", team_id="acme-eng")
Team memory requires Redis. If you try to use team tools in local mode you'll get:
Team memory requires shared storage. Set MAGNET_REDIS_URL for all team members to use the same Redis instance.
How It Learns
Magnet observes behavioral signals — corrections, rejections, implicit patterns — and builds a living profile per user. No configuration required.
Three memory layers:
- Behavioral (Redis) — real-time, every request
- Episodic (Qdrant) — semantic recall when relevant
- Knowledge (Neo4j) — long-term entity relationships
Free vs Premium
Agent Magnet is fully usable without an account. The free tier is not a demo — it's the real thing.
Free (no account needed)
- Local SQLite memory — no Redis, no external services
- Single-user behavioral memory (preferences, corrections, forgetting)
- Cross-tool identity — same memory across Claude Code, Cursor, any MCP client
- Context compression (
compress_context,retrieve_original) - Bring your own OpenAI key (BYOK)
Premium (API key from agentmagnet.app)
- Team memory — share learned preferences across a team with a shared Redis
- Hosted storage — Magnet-managed Redis, no infra to run
- Compression analytics (
compression_stats) - Priority support
To enable premium features, set MAGNET_API_KEY=mg_sk_... in your environment or pass it during agent-magnet init.
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file agent_magnet-0.1.17.tar.gz.
File metadata
- Download URL: agent_magnet-0.1.17.tar.gz
- Upload date:
- Size: 65.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a20bb617807ce0e8a15e4960ee18ca3df4747f6e9678194ac86b4275a15bafb9
|
|
| MD5 |
bd57fca5fca52d7ec2315a3fe896cb62
|
|
| BLAKE2b-256 |
38f369a729cdce86f10ee6be1b2314c7f48a828f006c5a0fc48fd622b473a90c
|
File details
Details for the file agent_magnet-0.1.17-py3-none-any.whl.
File metadata
- Download URL: agent_magnet-0.1.17-py3-none-any.whl
- Upload date:
- Size: 70.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
96372b0dde83c52bc0ca040819906783245214e2736f25268155a53aa7d30f06
|
|
| MD5 |
e83c12ac8614a37f10af3169109db873
|
|
| BLAKE2b-256 |
ac2f9fa9ffc71de960713ea50194a985624ec57f05ab0d8e79ecb1fc074ef995
|