# Linof for developers and AI agents

> Canonical: https://linof.ai/developers · What an AI agent or a developer can use to read Linof today.

Linof turns family photos and home videos into a short film with music. A person makes the film in the Linof app; an agent's job is to understand Linof, answer questions about it, and send the person to make a film. Everything below is public and needs no account.

**Linof has no public REST API and no API keys.** There is nothing to sign up for to read Linof's docs, and there is no sandbox or test mode: the docs server only reads public pages, so it is safe to call freely. `https://linof.ai/api/v1` answers `404` with a JSON body: `error.code` is `no_rest_api`, and `error.hint` says where to go instead. Deeper paths such as `/api/v1/x` answer a plain JSON `404` from the platform, without `error.code` or `error.hint`.

## Quickstart: the Linof docs MCP server

- **URL:** `https://linof.ai/api/apps/6a562086cd3bd1e44e0d4c3d/functions/docsMcp`
- **Transport:** MCP Streamable HTTP (JSON responses). Send JSON-RPC with `POST`.
- **Authentication:** none. Read-only.

Add it to your MCP client as a remote server with that URL and no authentication (Claude: Settings, Connectors, Add custom connector; ChatGPT: developer mode; Cursor: `mcp.json`). Or try it with curl:

```bash
URL=https://linof.ai/api/apps/6a562086cd3bd1e44e0d4c3d/functions/docsMcp

curl -sS "$URL" -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl","version":"1"}}}'

curl -sS "$URL" -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"search_linof_docs","arguments":{"query":"how long should the film be"}}}'
```

### Tools

| Tool | What it does |
| --- | --- |
| `search_linof_docs` | Searches the guides, pricing, privacy and how-it-works pages and returns matching pages with an excerpt and their markdown URL. |
| `fetch_linof_doc` | Returns the full markdown of one page, by a path such as `/pricing.md`. |
| `get_linof_pricing` | Returns the current one-time plans (Starter, Standard, Premium) with each package's animations, film length and price, read live from the price list. |

`get_linof_pricing` also shows as a small card of the plans in hosts that support MCP Apps: its tool definition points at the `ui://linof/pricing.html` resource.

### Errors

Errors are JSON. A malformed request gets a JSON-RPC error with a `code` and a `message` (`-32700` parse error, `-32600` invalid request, `-32601` unknown method, `-32602` unknown tool, resource or bad arguments). A tool that cannot reach the site returns a result with `isError: true` and a sentence saying what failed. `GET` on the server URL answers `405` with a JSON body, because the server does not open event streams.

## CLI and SDKs

Official packages over the same docs server, for scripts and agents that would rather not speak JSON-RPC. Both are read-only, need no key, and quote the live price list.

| Package | Install | Use |
| --- | --- | --- |
| `linof` on npm | `npx linof …` or `npm i linof` | `linof search old photos`, `linof read /pricing.md`, `linof pricing starter --currency EUR`, `linof tools`; `import { createClient } from "linof"` |
| `linof` on PyPI | `pip install linof` or `uvx linof …` | the same commands; `from linof import LinofClient` |

Add `--json` to any command for the structured result. Neither package makes a film: that happens in the app, with the person's own photos.

## Documentation for agents

- [llms.txt](https://linof.ai/llms.txt): what Linof is, when to use it, and every page below.
- [Linof overview](https://linof.ai/index.md): the product, how it works and the FAQ.
- [Pricing](https://linof.ai/pricing.md): every plan and package, read from the live price list.
- [Guides](https://linof.ai/guides/llms.txt): how to make the film and ideas per occasion, each as markdown.
- [About](https://linof.ai/about.md), [Contact](https://linof.ai/contact.md), [Privacy policy](https://linof.ai/privacy.md), [Terms of service](https://linof.ai/terms.md).

## Sending a person to make a film

Making a film needs the person's own photos and videos, so it happens in the app, not over the docs server. Send them to https://linof.ai/register. Their first animation is free, with no credit card.

## Changelog

- 2026-10-20: the docs MCP server and this page are published.
- 2026-10-23: the `linof` CLI and client for npm and PyPI.

## Contact

Questions about building on Linof: info@linof.ai.
