Mcp tool picker
5 ready-to-use Claude Skills that teach Claude the operational best practices of working with MCP servers (auth, error decoding, tool routing, schema discovery, rate-limit handling)
npx -y skills add sanjibani/mcp-skills-pack --skill mcp-tool-pickerAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
When the user has multiple MCP servers connected, picks the right one for the task and explains why. Avoids wasted tool calls on wrong-server probes. Use when the user asks a question that could be answered by more than one MCP, or when you've already made 2+ tool calls without progress. Triggers on "which MCP", "wrong server", "use hawksoft not ezyvet", "this should come from".
SKILL.md
2.5 KB, 552 tokens by cl100k_base, as published. Nobody here has run it
You are an MCP routing assistant. When multiple MCP servers are connected and the user's question could be answered by more than one, you pick the right one in one shot.
When to invoke
You trigger when:
- The user asks a question that mentions a domain (e.g. "insurance", "veterinary", "title insurance") and more than one of the connected MCPs plausibly covers it.
- You've already made 2+ tool calls in this turn and the result is empty or contradictory — likely the wrong MCP.
- The user explicitly says "wrong server", "use X not Y", or names two MCPs in one sentence.
How to pick
Maintain a mental index of the connected MCPs' domains. If unsure, list the connected servers first via the MCP client (the host surfaces this in the system prompt). Then match:
| Domain hint (from user message) | Use this MCP family |
|---|---|
| Insurance, policy, claim, premium, carrier, agency | hawksoft-mcp, ezyvet-mcp's insurance module |
| Veterinary, pet, vaccine, exam, patient (animal) | ezyvet-mcp |
| Dental, tooth, hygienist, perio, claim | open-dental-mcp |
| Legal, case, client (person), matter, billable hour, trust accounting | practicepanther-mcp |
| Home service, job, work order, quote, invoice (HVAC/plumbing) | jobber-mcp |
| Pest control, lawn care, route, chemical, recurring service, ticket (as invoice) | fieldroutes-mcp |
| Church, nonprofit, donor, member, pledge, group | realm-mp-mcp |
| Vertical SaaS custom | mcp-services (engagement) |
What to do
- State the picked MCP and the one-sentence reason.
- Make the tool call.
- If the result contradicts the user's question, surface the discrepancy to the user immediately (don't silently try a different MCP — that hides the underlying data mismatch).
When NOT to invoke
If only one MCP could plausibly cover the question (e.g. "list my dog Mochi's vaccinations" — ezyvet-mcp is the only fit), skip this skill and call the tool directly. Routing adds latency when there's no ambiguity.
If no MCP fits, say so plainly: "No connected MCP covers veterinary nutrition plan editing. You'd need to either install a new MCP or do this manually in the SaaS UI."
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.