# brln.tv > brln.tv hosts generated artifacts — an HTML report, a chart, a PDF — and gives you back a URL that opens in any browser. One unauthenticated POST is the whole integration, so an AI agent can publish something for a human to look at without credentials, an SDK or a storage bucket. Anonymous uploads need no account, no API key and no SDK: a single multipart POST returns a public URL. Artifacts are served from a separate origin (https://pages.brln.tv) with scripting sandboxed. ## Docs - [Documentation](https://brln.tv/docs.md): every endpoint with request and response examples, limits, error codes - [Full documentation in one file](https://brln.tv/llms-full.txt): the same content, no second fetch needed ## API - [OpenAPI schema](https://brln.tv/openapi.json): includes a servers entry, usable as a client generator input - [Upload endpoint](https://brln.tv/api/artifacts): `curl -X POST https://brln.tv/api/artifacts -F 'file=@report.html'` - [MCP server](https://brln.tv/mcp): Streamable HTTP; tools upload_artifact, list_my_artifacts, get_artifact, delete_artifact - [Claude Code plugin](https://brln.tv/plugin): `claude plugin marketplace add https://brln.tv/plugin` then `claude plugin install brln-tv@brln-tv` — installs a publish skill, a /publish command and the MCP server above ## Optional - [Health](https://brln.tv/health): dependency status