Browse documentation
MCP profiles: two tools for grounding, or the full set
A profile shapes what tools/list advertises. The grounding profile lists two tools; the default lists every one, and every tool stays callable on both.
Why profiles exist
A model choosing among many tools reaches for plain search more often than for the call that would answer in one round trip, and every tool’s schema is context spent on every request. For most tasks the right surface is two tools: one that grounds an objective and one that fetches a document. The graph operations are still there for the tasks that need them.
Selecting one
Append ?profile= to the endpoint URL:
https://api.unlob.com/mcp?profile=grounding
https://api.unlob.com/mcp?profile=full
| Profile | tools/list reports |
|---|---|
grounding | ground, get_document |
full (default) | Every tool: web_search, get_document, similar, why_not, browse, related, corroborate, authorities, dossier, path, assemble_context, ground, evidence_changes |
An unknown profile name falls back to the default rather than to an empty list, so a typo cannot produce the characteristic MCP failure of zero tools and no error.
The same subset is readable without a session at
https://api.unlob.com/mcp/tools.json?profile=grounding, which is what the
tool reference is generated from.
Discovery, not permission
A profile changes what tools/list says. It does not change what tools/call accepts: a
client connected on grounding that calls corroborate by name gets corroborate. The
split is deliberate — a client that knows a tool’s name should never be refused, and a
client that does not should not have to read about it.
Claude Code, for example
claude mcp add --transport http unlob "https://api.unlob.com/mcp?profile=grounding" \
--header "x-api-key: $UNLOB_API_KEY"
Every client on Connect a client takes the profile the same way: it is part of the URL. Frameworks that let you filter tools client-side still can; the profile is the server-side default for clients that cannot.
Over stdio
The stdio server has no query string. Set UNLOB_MCP_PROFILE=grounding in its environment
and it advertises the same two tools; the startup line names the profile and the tool
count.
Next
- Grounding — what the two-tool profile is for.
- MCP overview — transports and the lifecycle.
- MCP tools — the reference for every tool.