Skip to main content
Configuration is minimal. Two environment variables connect the MCP server; everything else has sensible defaults.

Environment Variables

AMFS_HTTP_URL is the API host, not the dashboard. SenseLab accounts point at https://amfs-login.sense-lab.ai; the dashboard you log into at amfs.sense-lab.ai will not serve API requests. Self-hosted deployments point at their own API host.

Who reads these

This is the part worth getting right, because the two surfaces behave differently:
Setting the environment variables alone will not connect the SDKs. Without an adapter, Python writes to .amfs/ in your working directory and TypeScript writes to memory — the calls succeed, and nothing reaches your account.
If AMFS_HTTP_URL is set but amfs-adapter-http isn’t installed, the MCP server logs a warning and quietly falls back to local storage, so install it alongside the server when you’re wiring things up by hand.

SDK Options

When using the Python SDK directly, pass options to the constructor:
Install the adapter with pip install amfs-adapter-http. The Python and TypeScript guides cover the rest of the surface.

Agent Identity

Agents are identified by their agent_id. This determines:
  • Who gets credit for writes (provenance)
  • What shows up in the Dashboard
  • How recall() and my_entries() scope results
MCP agents should call amfs_set_identity at the start of each session. Without it, identity is auto-detected from the environment, in this order:
An IDE signal beats AMFS_AGENT_ID, so the variable does not rename an agent running inside Cursor or Claude Code. That is deliberate: it stops a server-side AMFS_AGENT_ID inherited by your shell from relabelling your local sessions. To name an agent in an IDE, call amfs_set_identity.
SDK and REST clients pass agent_id in the constructor or header.

Scoped API Keys

API keys can be restricted to specific entity paths and permissions:
Create and manage scoped keys in Dashboard → Settings → API Keys. Use the narrowest scope that works — one key per agent or service.

Namespaces

Namespaces isolate memory between environments. Entries in different namespaces don’t see each other. Namespaces are managed through the Dashboard. The default namespace is default.

Next Steps

Quick Start

Write, read, and search memory.

MCP Setup

Connect your IDE to SenseLab.

Core Concepts

How SenseLab works under the hood.

Environment Variables

Full reference with all options.