> ## Documentation Index
> Fetch the complete documentation index at: https://docs.agentscope.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Services

> Run ReMe as a shared service and choose MCP, CLI, or HTTP as the access boundary.

Run ReMe as a shared service when multiple agents or applications should use the same workspace without owning ReMe in process. The service owns persistence, indexing, scheduled consolidation, and the configured jobs.

## Choose an Interface

MCP, CLI, and HTTP reach the same ReMe workspace and jobs. Choose the boundary your host already supports:

| Interface | Best for                                          | Boundary                                    |
| --------- | ------------------------------------------------- | ------------------------------------------- |
| MCP       | Agents and applications with an MCP client        | Discovered tools over a shared MCP endpoint |
| CLI       | Agents and automation that can run shell commands | Commands sent to the running ReMe service   |
| HTTP      | Language-neutral applications and custom clients  | JSON requests to job endpoints              |

MCP and HTTP are service protocols. The CLI is a client for the running service and is usually the simplest boundary for shell-capable agents.

## Service Lifecycle

Keep one runtime owner for a workspace. Start one shared service and let every client connect to it; do not run a second in-process `ReMe` application against the same workspace.

The service owns background indexing and scheduled consolidation. The host still owns session hooks, stable session identifiers, and decisions about when to recall or record memory.

## MCP

Start ReMe with an MCP backend:

```bash theme={null}
reme start service.backend=mcp service.transport=streamable-http
```

The default endpoint is `http://127.0.0.1:2333/mcp`. Add this URL to the MCP client, which discovers the tools exposed by the installed ReMe version. Keep the client and server ports aligned.

MCP lets the model select tools. Automatic session recording still belongs in the host's hooks or lifecycle.

## CLI

Start the service, then use ordinary `reme <action>` commands as its command client:

```bash theme={null}
reme start

reme search query="project decisions" limit=5
reme read path=digest/wiki/project-decisions.md
reme auto_memory \
  session_id="conversation-42" \
  messages='[{"role":"user","content":"Remember the Friday release rule."}]'
```

The CLI detects the running service configuration, including an MCP backend. Use `reme find_reme` and `reme health_check` before debugging client behavior.

## HTTP

The default launch mode exposes an HTTP service:

```bash theme={null}
reme start
```

Each served job maps to `POST /{action}` with a JSON body:

```bash theme={null}
curl -s http://127.0.0.1:2333/search \
  -H 'Content-Type: application/json' \
  -d '{"query":"project decisions","limit":5}'
```

Use `/docs` or `/openapi.json` on the running service for schemas that match the installed version. Avoid copying a fixed parameter table into client code.

## Next Step

After choosing and starting a service interface, see the [service-based agent integration guide](/reme/latest/en/integration/agents) for tool, plugin, and Skill patterns.
