8 core APIs · 0 credits · free forever

Persistent Memory for AI Agents

8 core memory APIs free forever

Every LLM call starts with a blank slate. Your agent runs a task, figures something out, and then forgets it the moment the session ends. Here's how to fix that without standing up a database.

The stateless agent problem

Context windows are not memory. When your agent session ends, everything the agent learned is gone. Next run, it starts over. This causes real problems:

The obvious fix is to add a database. But now you need to provision it, model the schema, write read/write code, handle serialization, and keep it in sync. For a prototype, that's a lot of overhead before you've proven the idea works.

Slopshop memory: zero setup, zero cost

Every Slopshop account includes a persistent key-value store, queue system, and counter API. All memory operations cost 0 credits. They're free on every plan, including the free tier.

0cr · FREE FOREVER

Memory operations — set, get, delete, list, search, queue push/pop, counter increment — are permanently free. Not a trial. Not a feature flag. Free.

memory-set and memory-get

The simplest case: store something, retrieve it later. Works across sessions, across agents, across machines — as long as you use the same API key.

Store a valuecurl
curl -X POST https://slopshop.gg/v1/tools/run \
  -H "Authorization: Bearer demo_key_slopshop" \
  -H "Content-Type: application/json" \
  -d '{
    "tool": "memory_set",
    "input": {
      "key": "user:42:preferences",
      "value": {
        "language": "Python",
        "timezone": "America/New_York",
        "notify_on_complete": true
      },
      "ttl": 86400
    }
  }'

# Response:
# { "ok": true, "stored": true, "credits_used": 0 }
Retrieve it in the next sessioncurl
curl -X POST https://slopshop.gg/v1/tools/run \
  -H "Authorization: Bearer demo_key_slopshop" \
  -H "Content-Type: application/json" \
  -d '{
    "tool": "memory_get",
    "input": { "key": "user:42:preferences" }
  }'
Responsejson
{
  "ok": true,
  "value": {
    "language": "Python",
    "timezone": "America/New_York",
    "notify_on_complete": true
  },
  "ttl_remaining": 85201,
  "credits_used": 0
}

memory-search — semantic search over stored facts

Store facts as strings, then search them by meaning — not just exact key match. The search runs a vector-like semantic similarity pass over your stored values.

Store facts and search by meaningcurl
# Store some facts
curl -X POST https://slopshop.gg/v1/tools/run \
  -H "Authorization: Bearer demo_key_slopshop" \
  -d '{
    "tool": "memory_set",
    "input": {
      "key": "fact:stripe-api",
      "value": "Stripe requires idempotency keys for POST requests to avoid duplicate charges"
    }
  }'

# Search by meaning later
curl -X POST https://slopshop.gg/v1/tools/run \
  -H "Authorization: Bearer demo_key_slopshop" \
  -d '{
    "tool": "memory_search",
    "input": {
      "query": "how to prevent duplicate payments",
      "limit": 5
    }
  }'
Search responsejson
{
  "ok": true,
  "results": [
    {
      "key": "fact:stripe-api",
      "value": "Stripe requires idempotency keys for POST requests...",
      "score": 0.92
    }
  ],
  "credits_used": 0
}

All memory operations

memory_set
0 credits

Store any JSON value at a key. Optional TTL in seconds.

memory_get
0 credits

Retrieve a value by exact key. Returns null if missing or expired.

memory_search
0 credits

Semantic search across string values. Returns ranked results with similarity scores.

memory_delete
0 credits

Remove a key immediately, regardless of TTL.

counter_increment
0 credits

Atomic increment/decrement. Safe for concurrent agents.

queue_push / queue_pop
0 credits

FIFO queue for agent task coordination. Pop blocks until an item is available.

Agent Mode: auto-persist

When you run tasks through /v1/agent/run, the agent automatically persists its intermediate findings to memory between steps. You don't have to wire this up manually.

// Agent Mode — auto-persist between steps
curl -X POST https://slopshop.gg/v1/agent/run \
  -H "Authorization: Bearer demo_key_slopshop" \
  -d '{
    "task": "Research the top 3 Python async frameworks and save a summary",
    "persist_results": true,
    "memory_key": "research:async-frameworks"
  }'

# Results auto-saved to memory_key after completion.
# Retrieve next session:
# memory_get("research:async-frameworks")

Practical example: agent that remembers between runs

Agent with session memory — Pythonpython
import requests

BASE = "https://slopshop.gg/v1/tools/run"
HEADERS = {"Authorization": "Bearer demo_key_slopshop"}

def mem_get(key):
    r = requests.post(BASE, headers=HEADERS,
        json={"tool": "memory_get", "input": {"key": key}})
    return r.json().get("value")

def mem_set(key, value, ttl=None):
    payload = {"tool": "memory_set", "input": {"key": key, "value": value}}
    if ttl: payload["input"]["ttl"] = ttl
    requests.post(BASE, headers=HEADERS, json=payload)

# Load previous context (0 credits)
context = mem_get("agent:session:context") or {}

# ... run agent logic ...
context["last_run"] = "2026-03-26"
context["facts_learned"] = ["stripe uses idempotency keys"]

# Save for next session (0 credits)
mem_set("agent:session:context", context, ttl=604800)

Memory is free forever

Sign up, get 500 credits for paid tools, and unlimited free memory. No credit card required.

$ npm install -g slopshop
$ slopshop signup
✓ Memory enabled. 0 credits, no limits.