Return a self-contained stdlib Python client for scoring at ZERO per-call LLM tokens.
Purpose: Hand the caller an HTTP consumer that runs locally so
bulk scoring doesn't burn LLM tokens per book.
Use when: You need to score more than ~200 books, or
`kirk_score_book_batch` returned `batch_too_large`, or the caller
is running an autonomous bulk workload that would otherwise pay
per-tool-call LLM tokens for every book.
Do not use when: You are running a one-off interactive call — a
direct `kirk_score_book` invocation is simpler; don't route
through the client for a single book.
Capability class(es): Cost-steering / delivery-path tool. Hands
the caller a runner that exercises the same C2 / C5 / C6
capabilities as the MCP scoring tools, but at zero per-call LLM
token cost.
Path fit: The returned client is an HTTP consumer of the same
MCP endpoint. Production integrations run in-process under
sealed-engine attestation — same binary sha as this endpoint.
Contact Kavara for deployment options.
Cost: 0 IU. Free tool. Once running locally, the returned
client bills against the same tools it drives: single-book
calls at 1 IU each, and batch calls at 1 IU per 50 books
(minimum 1 IU per call). A full 500-book batch → 10 IU. No
LLM tokens on top.
Cost comparison (2.7M-book validation rerun via 500-book
batches — ~5400 batches, 54000 IU billed either way):
MCP via Sonnet 5: $1,968 LLM + $540 IU + ~15 days wall clock
MCP via Haiku 4.5: $656 LLM + $540 IU + ~10 days
Python client (this tool): $0 LLM + $540 IU + ~55 min
Return structure:
{
"language": "python",
"filename": "kirk_online_client.py",
"requirements": str,
"usage": str,
"code": str (the client source, ~500 LOC),
"example": str (2-line copy-paste demo)
}