Developers
Run Bozok's production loop from your own code or from an AI assistant. There is a REST API and a remote MCP server, and both work with the same API key.
Create an API key
Sign in to Bozok, open Settings > API keys and create a new key. The key is shown only once, so copy it somewhere safe. A key acts in the workspace as the person who created it and can never go beyond the scopes you choose.
Scopes
Every key carries one or more scopes. Read is on every key.
Read
Sees runs, outputs, channels and the calendar. Spends no credits. Every key has it.
Edit
Edits the calendar, channel profiles and assistant conversations. Spends no credits.
Spend
Starts productions, moves approval gates forward and spends credits. Only owners and admins can grant it.
Publish
Approves a video for publishing. Only owners and admins can grant it.
REST API
Base URL: https://bozok.org/api/v1
Send the key in the Authorization header on every request:
curl https://bozok.org/api/v1/me \
-H "Authorization: Bearer bzk_..."All endpoints are in the OpenAPI 3.1 document: /api/v1/openapi.json
Limits: 120 requests per minute and 10 run starts per hour for each key. Video, caption and cover downloads are counted separately: 600 requests per minute. Going over answers 429 with a Retry-After header.
MCP server
Server URL: https://bozok.org/api/mcp
Streamable HTTP transport, stateless: every request carries its own key. Only the Authorization: Bearer header is accepted, cookie sessions are not. Each tool uses the same scopes and the same limits as the REST endpoint that does the same job.
Tools and the scope each one needs
Tools that spend credits say so in their descriptions. Ask your assistant to show the cost with estimate_run before it starts a run. Publishing (approve_package_and_publish) also requires confirm: true.
Read
whoamilist_channelsget_channellist_formatslist_playbooksestimate_runlist_runsget_runget_run_outputslist_calendarlist_trendsget_usage
Edit
update_channel_profilecancel_runpreview_packagemove_calendar_item
Spend
create_runapprove_gateresume_runcreate_versionask_producerlaunch_proposalrefresh_trends
Publish
approve_package_and_publish
Connect
Replace bzk_... with your own key. Never put the key in a public repository.
Claude Code
claude mcp add --transport http bozok https://bozok.org/api/mcp --header "Authorization: Bearer bzk_..."Claude Desktop
Claude Desktop runs local commands from its configuration file. To add an Authorization header to a remote server, use the mcp-remote bridge; it needs Node.js.
{
"mcpServers": {
"bozok": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://bozok.org/api/mcp",
"--header",
"Authorization:${BOZOK_AUTHORIZATION}"
],
"env": {
"BOZOK_AUTHORIZATION": "Bearer bzk_..."
}
}
}
}Cursor
In Cursor this goes into mcp.json.
{
"mcpServers": {
"bozok": {
"url": "https://bozok.org/api/mcp",
"headers": {
"Authorization": "Bearer bzk_..."
}
}
}
}One-click connectors
One-click (OAuth) connectors in Claude.ai on the web and in ChatGPT are not supported yet. For now you connect with an API key only.