
How capability search keeps tool schemas out of context

Engineering
The idea
Instead of exposing every tool to the model, the server exposes a few meta-tools. The agent describes its intent and the server resolves the right capability on demand.
The flow
A request moves through four steps: search, resolve, execute and record.
Search
The agent calls search_capabilities with a plain-language query and receives a short ranked list instead of a full catalog.
Resolve
The chosen capability returns its input schema and the permissions it needs, so the agent can validate before it acts.
Execute and record
The call runs through the server, and its inputs, result and duration are logged so the run can be inspected afterwards.
Why this matters
The context window stays small, tool choice stays accurate, and credentials never have to enter the agent’s prompt.
Share this article
Related posts
Start shipping with Convio
Connect one MCP endpoint, load your Project Contract and run your first pipeline in the sandbox.
Add authentication to the app.
Loading what I already know about this project.
get_project_context
Contract loaded · 0.4s
search_skills(“authentication”)
2 skills found
activate_skill(auth-supabase)
Activated
Your project uses Supabase and team accounts. Two decisions remain: how people sign in, and whether people can join multiple teams.
request_approval(deploy: production)
Needs you
Describe what you want to ship. Type @ for tools and / for pipelines.





