# Build with Paragraph (/developers)



Everything your Paragraph agent works with is also available to your own code. Publish posts, upload drafts to the publication's library, and manage subscribers from scripts, CI jobs, or other AI tools.

<Callout type="info">
  The API is in alpha, so expect some breaking changes. It's also rate-limited. If you need a higher limit, email [support@paragraph.com](mailto:support@paragraph.com).
</Callout>

<Cards>
  <Card icon="Braces" title="TypeScript SDK" href="/developers/sdk">
    A typed client for the REST API.
  </Card>

  <Card icon="Terminal" title="CLI" href="/developers/cli">
    Manage posts, drafts, and subscribers from your terminal or CI.
  </Card>

  <Card icon="Plug" title="MCP server" href="/developers/mcp">
    Connect Claude, Cursor, and other AI tools to your publication.
  </Card>

  <Card icon="Sparkles" title="Agent skills" href="/developers/agent-skills">
    Teach any coding agent how to use Paragraph.
  </Card>
</Cards>

## Authentication [#authentication]

Reading public posts and publications doesn't need a key. Writing, and reading your own drafts or subscribers, does. Create an API key in the app at [app.paragraph.com](https://app.paragraph.com) under **Settings → API keys**. Each key belongs to one publication.

Send it as a Bearer token to the base URL `https://public.api.paragraph.com/api`:

```bash
curl https://public.api.paragraph.com/api/v1/me \
  -H "Authorization: Bearer your-api-key"
```

The [API reference](/developers/api-reference) lists every endpoint, and the [OpenAPI spec](/openapi.json) works with code generators and tools like Postman.

## Docs for AI tools [#docs-for-ai-tools]

This site serves [llms.txt](/llms.txt) and [llms-full.txt](/llms-full.txt), and every page has a Markdown version (add `.md` to the URL). Give llms-full.txt to an LLM to load all of these docs in one go.
