Give your agent Capabilities, not a tool wall

Turn sprawling MCP servers into focused capability cards. Your agent can start with one typed route, zoom into tools only when needed, and keep huge schemas out of the prompt until they matter.

First route the agent sees

One card opens into inspect, search, schema, and call only when needed.

osv/inspect/search_tools/get_tool/call_tool
npm install -g caplets

Requires Node 24+. Run setup from the install section next.

Why Caplets

Agents do not need every tool at once.

Direct MCP flattens provider APIs into the prompt. The agent spends context reading tool names, giant schemas, and setup assumptions before it can do the work.

Caplets keeps the first surface small, then opens the exact operation path when the agent asks.

Direct MCP

Too many tools

Every downstream operation lands in the agent's first view.

With Caplets

The agent starts with a named capability and opens only the route it needs.

Direct MCP

Too much schema

Large tool definitions compete with the user's actual task for context.

With Caplets

Schemas stay behind inspect, search, and get_tool until they matter.

Direct MCP

Too much setup

Every agent repeats provider wiring, OAuth, secrets, and MCP config.

With Caplets

One daemon-backed Caplets surface can be reused locally or from a remote server.

Setup

Start with the smallest useful Caplet.

caplets setup wires the agent integrations you choose. Add OSV first because it needs no auth; bring in GitHub or Sourcegraph after the discovery path feels right.

Explore more Caplets
discovercards
inspecttools
calltyped
Benchmark proof

The result survived the surface cut.

Same task set, same 10/10 completion. Code Mode kept the agent focused by cutting the prompt surface instead of flattening every tool into view.

Run June 2026 with the real-world large MCP suite, openai-codex/gpt-5.5, 10 tasks, 2 runs per task, and a large no-fixture MCP stack.

The live run rows are listed here; the linked benchmark document covers the harness, deterministic surface check, and reproduction path.

Read method & reproduce
tasks cleared
10/10

Caplets Code Mode, progressive modes, direct MCP, and Executor.sh all completed the task set.

avg tokens
236,803

Request plus output estimate for the Code Mode run, averaged across live Pi evals.

vs vanilla
72.0% fewer

Reduction against direct vanilla MCP without giving up the completed-task result.

Mode: Caplets Code ModePassed: 10/10Total tokens: 236,803 tokensTool surface tokens: 31,166 surface
Mode: Caplets progressive + Code ModePassed: 10/10Total tokens: 422,861 tokensTool surface tokens: 124,772 surface
Mode: Caplets progressivePassed: 10/10Total tokens: 461,171 tokensTool surface tokens: 103,776 surface
Mode: Executor.shPassed: 10/10Total tokens: 675,842 tokensTool surface tokens: 24,570 surface
Mode: Direct vanilla MCPPassed: 10/10Total tokens: 846,048 tokensTool surface tokens: 457,818 surface
flat tool wall215
first screen cards7
surface cut79.9%

Code Mode used 72.0% fewer request + output tokens than Direct vanilla MCP and 65.0% fewer than Executor.sh. Progressive disclosure also reduced tokens while every listed mode completed 10/10 tasks.

Remote Caplets server

One auth home. Every agent gets the same tools.

Run Caplets as a small HTTP service. Provider tokens and OAuth state stay server-side; Codex, OpenCode, Pi, Claude Code, and any MCP client attach to the same capability surface.

MCP
/caplets/v1/mcp
Attach
/caplets/v1/attach
Admin
/caplets/v1/admin
Health
/caplets/v1/healthz

Client-by-client auth

Every agent carries its own provider tokens, OAuth dance, and local MCP wiring.

  • Repeat login flows
  • Copy secrets around
  • Debug each client separately

Server-held auth

One Caplets server owns provider auth; each agent attaches to the shared surface.

  • Keep tokens server-side
  • Reuse from Codex, OpenCode, Pi, Claude
  • Inspect, search, schema, and call from one place
Server owns authGitHub, Sourcegraph, OSV
Caplets exposesinspect · search · schema · call
Agents reuse itCodex · OpenCode · Pi · Claude
Serve once
caplets daemon install --start
caplets remote host approve <code> --yes
Use remotely
caplets remote login <url>
caplets attach <url>