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

# okraPDF

> Turn any PDF into agent-ready, cited data — from the command line, the API, MCP, the web app, or iOS.

okraPDF turns a PDF into **agent-ready data**: clean markdown, extracted tables and figures, and grounded answers with page-and-bbox citations. Everything is one set of resources — `documents`, `files`, `jobs`, `collections` — reachable from whichever surface fits your workflow.

```bash theme={null}
npm install -g @okrapdf/cli
okra upload report.pdf
okra chat "What was Q3 revenue?" --doc <docId>
```

## Pick your surface

<CardGroup cols={2}>
  <Card title="CLI" icon="terminal" href="/cli/quickstart">
    The agent-first `okra` command. Upload, extract, chat, and query collections from a script or an agent loop.
  </Card>

  <Card title="API" icon="code" href="/api-reference/introduction">
    REST endpoints under `api.okrapdf.com`, plus the TypeScript SDK and React hooks.
  </Card>

  <Card title="MCP" icon="plug" href="/mcp/overview">
    Connect okraPDF to Claude, Cursor, or any MCP client and read PDFs in chat.
  </Card>

  <Card title="Web" icon="browser" href="/web/overview">
    The visual workspace at app.okrapdf.com — the same resources, in a browser.
  </Card>

  <Card title="iOS" icon="mobile-screen" href="/ios/overview">
    A native PDF toolkit for iPhone and iPad, backed by your okraPDF account.
  </Card>
</CardGroup>

## One resource graph, every surface

A PDF you upload with `okra upload` is the same document you open on [app.okrapdf.com](https://app.okrapdf.com), read over the [API](/api-reference/documents/get-status), or query through [MCP](/mcp/overview). The nouns never change:

| Resource                          | What it is                                                             |
| --------------------------------- | ---------------------------------------------------------------------- |
| [`documents`](/cli/extract)       | Processed PDFs with markdown, page images, tables, chat, and citations |
| `files`                           | Raw uploaded assets not yet turned into a document                     |
| [`jobs`](/cli/jobs)               | Parse, render, and workflow jobs with status and results               |
| [`collections`](/cli/collections) | Groups of documents you can query together                             |

<Card title="Start with the CLI" icon="rocket" href="/cli/quickstart" horizontal>
  Install `@okrapdf/cli` and extract your first PDF in under a minute.
</Card>
