---
title: Choose an interface
description: Decide between application memory, hosted MCP, CLI, and local MCP.
product: start
lifecycle: stable
appliesTo: current public interfaces
sourceArtifact: docs-site@v1
owner: Sift docs
raw: /raw/start/choose-an-interface.md
---

| You need                                        | Runtime constraint                       | Use        | Why                                                                              |
| ----------------------------------------------- | ---------------------------------------- | ---------- | -------------------------------------------------------------------------------- |
| Durable grounded memory inside your application | Server-side runtime                      | Memory SDK | Application-owned items, operations, recall bundles, and evidence. Preview only. |
| A remote agent connected to a Sift workspace    | Streamable HTTP and browser OAuth        | Hosted MCP | No local process; the connected user's workspace permissions apply.              |
| Direct terminal work or automation              | Node.js 20+, interactive or headless     | CLI        | Stable public package with structured output and explicit version pinning.       |
| An agent that only supports stdio               | Local process and local credential store | Local MCP  | `sift mcp serve` exposes the same permission-filtered tool registry locally.     |

Application memory does not grant workspace-agent access. Connecting an agent does not embed a memory runtime into your application. Choose by the job and trust boundary, not by which command looks shortest.

## Recommended fallback order

1. Use hosted MCP when the client supports Streamable HTTP and OAuth.
2. Use the CLI for terminal or headless work.
3. Use local MCP when a client needs stdio or cannot complete remote OAuth.
