Printing Press: The CLI Factory That Out-Tokens Every MCP
AI Infrastructure Lead
Printing Press (printingpress.dev) is a CLI factory plus a community library of ~50 pre-built CLIs designed specifically for AI agents. It exists because three years into the MCP era a lot of people have quietly realized that MCP isn't actually the right shape for agentic work — CLIs are. The benchmark cited at launch: MCP used 35× more tokens than the equivalent CLI on the same task, and reliability dropped from 100% to 72% as tasks got harder.
This review walks through what Printing Press is, the token math that makes it interesting, the pre-built catalog, how the factory builds custom CLIs for tools without a public API (ESPN, Craigslist, Domino's, school.com — all things "no API" used to make impossible), the setup, the tradeoffs, and a comparison against Playwright MCP for cases where a browser is unavoidable.
📋 Table of Contents
What Is Printing Press?
Printing Press is two things in one product. The first is a library of ~50 pre-built CLIs — Linear, Shopify, ESPN, Craigslist, eBay, Airbnb, Domino's, TikTok Shops, Amazon, school.com, and dozens more. The second is a factory — a Claude Code skill that generates new CLIs for any tool you point it at, even tools that don't have a public API.

The project draws its inspiration from a familiar problem in the agent-tooling world: the official CLIs that big platforms ship are often built for humans, not autonomous agents. Peter Steinberger (creator of OpenClaw) ended up writing his own GOG CLI — a Google wrapper — because the official GW CLI wasn't fit for agent consumption. Printing Press generalizes that pattern: rather than wait for vendors to ship agent-friendly CLIs, you generate one in ten minutes.
The CLI > API > MCP Hierarchy
Three options exist for letting an agent talk to an external tool. They have different costs:
CLI (best)
Local, fast, composable, SQLite-backed, agent-native. Output is ~200 tokens of clean pre-formatted text. Auth is solved once when the CLI holds the token. Lazy discovery — the agent only loads the commands it asks for.
API (second)
Raw and built for code, not agents. You get a massive JSON body back — sometimes useful, often token-expensive. Pagination and OAuth flows trip up agents that pay per token.
MCP (last)
Solves discovery — you can glance at 50 tools from a single server. But it loads every tool description into context on every session, which adds overhead and bloats your context window even when the MCP isn't being invoked.
If you've got a long-running Claude Code session and you run /context with a few MCP servers loaded, you can see exactly how many tokens those server tool definitions are eating every single turn — whether or not you actually called any of them.
The Token Math (35× Benchmark)
The benchmark at the heart of the pitch:
| Metric | CLI | MCP |
|---|---|---|
| Tokens used on same task | 1× | 35× |
| Task reliability (easy) | 100% | ~95% |
| Task reliability (hard) | 100% | 72% |
| Output format | ~200 tokens, pre-formatted | Variable, often verbose |
| Per-session tool loading | Lazy (only on call) | All tool descriptions eagerly loaded |
A concrete example: a CLI request to fetch ten community posts. The underlying service returned ~132,000 tokens of raw data. The CLI processed it locally and surfaced only a ~2,000-token summary to Claude Code's context. The 130,000 tokens of difference never touched your context window. That's the whole game — when an agent pays per token, the cheapest tool is the one that does the cleanup before the model sees it.

The Pre-Built Catalog
The library at printingpress.dev currently lists ~50 community CLIs across consumer, commerce, and developer-tooling categories. A non-exhaustive sample:
- Sports & entertainment: ESPN, Flight Goat, Movie Goat, Recipe Goat
- Commerce: Amazon, eBay, Craigslist, Shopify, TikTok Shops, Airbnb
- Developer tools: Linear, GitHub-style wrappers, internal task trackers
- Local services: Domino's, AllRecipes (uses a real Chrome session to bypass anti-scrape)
The recommended on-ramp is the starter pack — ESPN, Flight Goat, Movie Goat, and Recipe Goat — which gives you four working CLIs immediately and acts as the reference implementation when you start cloning others or building your own.
The Factory — Build Your Own CLI
This is where Printing Press separates from a regular tool catalog. The factory is a Claude Code skill that generates new CLIs from natural-language descriptions. The workflow that's been demonstrated end-to-end:
- Point Claude Code at the factory skill. Paste the three Printing Press URLs (factory, catalog, starter pack repo) and say "install everything I need."
- Describe the target. "Turn the YouTube Data API into a CLI" or "Reverse-engineer school.com — I want to fetch posts in the wins category."
- Wait ~10 minutes. The factory generates the binary, a Claude Code skill wrapper, and a local SQLite mirror. For tools without an API, it does deep discovery against the website to figure out the endpoints.
- Use it in natural language. "What NBA games are on tonight?" routes through the ESPN CLI without you ever knowing it.
The factory output is a properly packaged Go binary plus a Claude skill. The skill is the part Claude Code's /skills registry picks up automatically — meaning the next time you ask the agent to do something the CLI can handle, it picks the CLI on its own.
Setup & Install
Only one prerequisite outside the Claude Code workflow itself: Go. It's Google's open-source language, free, ~1 minute to install. Printing Press CLIs are compiled Go binaries — that's why they're fast and stable.
The fastest path: open Claude Code, drop in the three URLs (factory + catalog + starter pack), say "Help me get this set up — install whatever I need." The agent will tell you to install Go first, then handle the rest. Total time from zero to a working ESPN CLI is under five minutes.
Once the starter pack is in, the discovery query is just "Can you take a look at our Printing Press library of CLIs and tell me what we have access to?" Claude Code uses the catalog skill to list installed CLIs and (on confirmation) available ones in the public catalog.
Real Use Cases (Sites with No Public API)
The most interesting Printing Press wins are sites that don't expose an API at all:
- ESPN — no public stats API. The community CLI delivers game schedules and live scores in clean text.
- Craigslist — no API. Search and post fetching via CLI.
- school.com — no API. The factory reverse-engineered the site and produced a "pp school" CLI that fetches posts by category, finds wins, and returns the strongest ones with verification links.
- Domino's — no API for ordering. CLI wraps the order flow.
- AllRecipes — aggressive anti-scrape protection. The Printing Press CLI uses a real Chrome session under the hood to get through.
This last category — sites that actively don't want to be scraped — is the part to be careful about. The CLI working today doesn't mean the site won't change its protections tomorrow, and some terms of service explicitly forbid automated access regardless of method. Use these for personal projects; verify ToS before running them at scale on a commercial workflow.
When to Use Playwright MCP Instead
Printing Press is the right tool when you want a long-lived, repeatable, low-token interface to a specific service. It's not the right tool when the workflow is genuinely browser-shaped — clicking through a multi-step form, debugging a flaky checkout, capturing a screenshot of a dynamic page. That's where Playwright MCP still earns its place.

The decision rule: if you'll hit the same operation more than three times, build the Printing Press CLI. If it's a one-shot inspection task, drive a browser. The 35× token multiplier is the cost of generality — Playwright MCP can do anything in a browser, which is why it pays per session whether you use that flexibility or not.
Limitations & Tradeoffs
- Go dependency. If you've never installed Go and don't want to, this isn't for you. (It's quick, but it's still a system-level install.)
- Newness. The tool is brand-new and the catalog is community-driven. Quality across the 50 CLIs is uneven — the starter pack four are solid, but a random clone might need fixes.
- No central CLI for everything. Each tool wraps one service. If your workflow stitches five services together, you still need agent-level orchestration on top.
- Reverse-engineered CLIs are fragile. The school.com CLI works today because the site's structure was stable when Printing Press scraped it. When the site changes, the CLI may need a rebuild. Treat scraped CLIs as snapshot-in-time tools, not infrastructure.
- Auth still lives on your machine. Some users will want this (no third-party server holds your tokens). Some will want to share CLIs across a team, which means handing out instructions for each teammate to substitute their own keys.
Frequently Asked Questions
Recommended AI Tools
Emergent.sh
Build production-ready apps in hours, not weeks. Full-stack with auth, payments, hosting included. $20-200/mo pricing.
View Review →Emergent.sh
Build production-ready apps in hours, not weeks. Full-stack with auth, payments, hosting included. $20-200/mo pricing.
View Review →Kie.ai
Unified API gateway for every frontier generative AI model — Veo, Suno, Midjourney, Flux, Nano Banana Pro, Runway Aleph. 30-80% cheaper than official pricing.
View Review →HeyGen
AI avatar video creation platform with 700+ avatars, 175+ languages, and Avatar IV full-body motion.
View Review →