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

# Choose an integration

> Pick the Almanac surface that matches your runtime, authentication, and write needs.

All four surfaces use the same hosted wiki. Choose based on where your code runs
and whether it needs local files or write access.

<div className="almanac-diagram" tabIndex="0">
  <img src="https://mintcdn.com/almanac-e141534d/PSPQxvCsHo2cfSd-/images/diagrams/integration-map.svg?fit=max&auto=format&n=PSPQxvCsHo2cfSd-&q=85&s=0a015e25cab7929a2a2c3720926a648e" alt="The CLI, Python SDK, REST API, and MCP all connect to one hosted Almanac wiki; MCP is read-only." width="1200" height="620" data-path="images/diagrams/integration-map.svg" />
</div>

## Compare the surfaces

| Surface                   | Best for                                | Access          | Auth                          | Wiki identifier               | File upload                                 |
| ------------------------- | --------------------------------------- | --------------- | ----------------------------- | ----------------------------- | ------------------------------------------- |
| [CLI](/cli/overview)      | People, coding agents, shell automation | Read + write    | Browser session or API key    | Handle                        | Files and recursive folders                 |
| [Python SDK](/sdk/python) | Python services and scripts             | Read + write    | Reused CLI session or API key | Handle                        | Individual file paths                       |
| [REST API](/api/overview) | Services in any language                | Key permissions | API key                       | Resource IDs                  | Prepare, upload to signed storage, complete |
| [MCP](/mcp/remote)        | Remote AI clients that need context     | Read-only       | Browser-approved OAuth        | Explicit handle on every call | None                                        |

## A practical default

* Start with the **CLI** when a person or agent can use a terminal. It is the only
  surface that recursively discovers local folders.
* Use the **Python SDK** when Python code should work with validated models and a
  resolved wiki handle.
* Use the **REST API** for non-Python services or direct control over `/v1`.
* Use **MCP** when an AI client only needs to search and read existing knowledge.

<CardGroup cols={2}>
  <Card title="Use the CLI" icon="terminal" href="/cli/overview">
    Work interactively or automate with JSON and stable exit codes.
  </Card>

  <Card title="Use the Python SDK" icon="braces" href="/sdk/python">
    Search, upload, and follow jobs from Python.
  </Card>

  <Card title="Call the REST API" icon="webhook" href="/api/overview">
    Authenticate, discover IDs, and make a direct request.
  </Card>

  <Card title="Connect through MCP" icon="bot" href="/mcp/remote">
    Give an AI client read-only wiki context.
  </Card>
</CardGroup>
