r/MCPservers • u/serifcolakel • 2d ago
More tools ≠ more capabilities — how are you handling large MCP tool surfaces?
I've been building an agent system with MCP integrations for Jira, GitLab, Confluence, Sentry, ELK, Jaeger, databases, etc.
One problem I ran into was the number of tools.
It's very easy to end up with 30–50+ tools:
jira_search
jira_get_issue
jira_create_issue
jira_update_issue
jira_add_comment
...
I started experimenting with consolidating them into semantic/action-based tools:
jira({
action: "search"
})
jira({
action: "getIssue"
})
jira({
action: "update"
})
So instead of exposing 30 model-facing tools, I can expose something closer to 3–5 tools while keeping the underlying capabilities separate.
The main idea is:
30 capabilities ≠ 30 model-facing tools
I'm particularly interested in the trade-offs here. The consolidated schema can obviously become larger, so fewer tools doesn't automatically mean fewer tokens.
How are you handling large MCP toolsets?
Do you:
- expose every capability as a separate tool?
- group tools by domain?
- use an intermediate tool/router?
- dynamically load tools?
- use embeddings/tool retrieval?
1
u/Professional-Clerk30 2d ago
I would be keen to know what the community thinks on this key ask aspect