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

# Quickstart

> Get started with Crosmos

Get Crosmos into an AI agent with MCP, or call the Memory API directly from your application. MCP is the fastest path for AI clients today; SDKs are the path for product integrations and backend services.

## Prerequisites

* An API key from the [Crosmos Console](https://console.crosmos.dev) (starts with `csk_...`)
* Node.js 18 or later for MCP
* A JavaScript or TypeScript runtime if you use the SDK

## Choose a path

<CardGroup cols={2}>
  <Card title="Connect an AI client" icon="puzzle-piece" href="#mcp">
    Use the MCP server with Claude Desktop, Claude Code, Cursor, VS Code, Windsurf, opencode, Cline, Roo-Cline, or Zed.
  </Card>

  <Card title="Build with the API" icon="braces" href="#sdk">
    Use the SDK when you want Crosmos memory inside an app, backend service, worker, or agent runtime.
  </Card>
</CardGroup>

## MCP

Run the interactive setup to authenticate and install to your MCP clients in one command:

```bash theme={null}
npx @crosmos/crosmos-mcp setup
```

The setup walks you through:

1. **Authenticate** — Enter your API key, which is validated and saved locally
2. **Install to clients** — Detects installed MCP clients and writes the server config automatically
3. **Install skill** — Installs the Crosmos skill into your AI editor for enhanced memory behavior

Your client now has memory tools. See [MCP](/mcp) for manual client configuration, or [MCP tools](/mcp/tools) for tool schemas and examples.

## SDK

Install the SDK and set your API key:

<CodeGroup>
  ```bash npm theme={null}
  npm install crosmos
  export CROSMOS_API_KEY="csk_..."
  ```

  ```bash bun theme={null}
  bun add crosmos
  export CROSMOS_API_KEY="csk_..."
  ```
</CodeGroup>

Then create a space, ingest content, and search it:

```ts theme={null}
import Crosmos from "crosmos";

const client = new Crosmos();

const space = await client.spaces.create({
	name: "personal-agent",
});

const ingest = await client.sources.ingest({
	space_id: space.id,
	sources: [
		{
			content: "User prefers Bun for TypeScript projects.",
			content_type: "text",
		},
	],
});

await client.jobs.getStatus(ingest.job_id);

const search = await client.search.hybrid({
	space_id: space.id,
	query: "What does the user prefer for TypeScript projects?",
});

console.log(search.candidates);
```

See [SDKs](/sdks) for the full SDK loop and [advanced SDK usage](/sdks/advanced) for retries, timeouts, and errors.

## Next steps

<CardGroup cols={2}>
  <Card title="MCP" icon="puzzle-piece" href="/mcp/overview">
    Connect Crosmos to MCP-compatible clients.
  </Card>

  <Card title="SDKs" icon="braces" href="/sdks">
    Build Crosmos memory into your application.
  </Card>

  <Card title="Memories" icon="brain" href="/memories">
    Learn how Crosmos structures and retrieves context.
  </Card>
</CardGroup>
