{"name":"io.github.helinakdogan/agent-magnet","slug":"helinakdogan-agent-magnet","title":null,"description":"Behavioral memory layer for AI tools. Learns preferences and context across Claude, Cursor, Codex.","url":"https://mcp.market/server/helinakdogan-agent-magnet","rating":null,"grade":"A","score":85,"certified":false,"status":"active","category":"ai","tags":["ai"],"presence":{"score":36,"stars":14,"forks":5,"downloads_week":86,"last_push_at":"2026-09-05T21:45:08.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"pypi","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/helinakdogan/magnet-gateway","website":null,"version":"0.1.11","remotes":[],"packages":[{"registryType":"pypi","identifier":"agent-magnet","version":"0.1.11","transport":{"type":"stdio"},"environmentVariables":[{"description":"Your identifier used as the memory key across all tools","isRequired":true,"name":"MAGNET_USER_ID"},{"description":"OpenAI API key for the reflector and classifier models","name":"MAGNET_OPENAI_KEY"},{"description":"Set to 1 to use local SQLite storage — no Redis or external services needed","name":"MAGNET_LOCAL_MODE"},{"description":"Redis connection URL for persistent shared storage (overrides local mode)","name":"MAGNET_REDIS_URL"},{"description":"Namespace for memory isolation across projects (defaults to 'default')","name":"MAGNET_PROJECT_ID"}]}],"tools":[{"name":"add_signal","description":"Record a behavioral signal from user interaction","write_action":false,"price_micros":0,"input_schema":null},{"name":"end_session","description":"Summarize and save current session to memory","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_cold_start","description":"Get cold start profile for a new user","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_profile","description":"Get the learned memory profile for a user","write_action":false,"price_micros":0,"input_schema":null},{"name":"inject_memory","description":"Get memory injection string for system prompt","write_action":false,"price_micros":0,"input_schema":null},{"name":"save_session","description":"Manually save current session to memory (use when the Stop hook is unavailable)","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":85,"grade":"A","scanned_at":"2026-09-26T21:22:43.647Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-26T21:22:43.584Z","components":{"code":{"score":20,"max":25,"notes":["18 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":12,"max":15,"notes":["local package, no credentials required"]},"maintenance":{"score":15,"max":15,"notes":["last push 21 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[{"id":"exec.eval","severity":"medium","component":"code","title":"eval / new Function used","evidence":"agent_magnet-0.1.11/magnet/buffer.py: …edis: results = self._redis.eval(_ATOMIC_FLUSH_SCRIPT, 1, key) …"}],"inputs":{"packages":[{"registryType":"pypi","identifier":"agent-magnet","version":"0.1.11","found":true,"weeklyDownloads":86,"license":"MIT","dependencyCount":11,"publishedAt":"2026-06-18T01:29:57.087779Z","repositoryUrl":"https://github.com/helinakdogan/agentmagnet"}],"repo":{"found":true,"owner":"helinakdogan","repo":"magnet-gateway","archived":false,"pushedAt":"2026-09-05T21:45:08Z","stars":14,"forks":5,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/85782760?v=4","ownerCreatedAt":"2021-06-12T07:43:08Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/85782760?v=4&s=128","source":"github"},"presence":{"stars":14,"forks":5,"downloadsWeek":86,"license":"MIT","lastPushAt":"2026-09-05T21:45:08.000Z","score":36}}}},"grade_history":[],"reviews":[]}