Identify the right tool for a process step. Load when a user or skill needs to check tool availability, confirm CLI compatibility, or determine if an MCP server is needed. Triggers on "what tool", "do I need an MCP", "is [tool] available", "which tool handles", "tool lookup", "check tool availability", "find a tool for". Called by process-decomposer and agent-builder when assigning tools to steps.
Scanned 9/11/2026
Install to Claude Code
npx -y skills add dvy1987/agent-loom --skill tool-finder --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Tool Finder?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/dvy1987-tool-finder)More formats (shields.io, HTML) on the badges page.
---
name: tool-finder
description: >
Identify the right tool for a process step. Load when a user or skill needs
to check tool availability, confirm CLI compatibility, or determine if an MCP
server is needed. Triggers on "what tool", "do I need an MCP", "is [tool]
available", "which tool handles", "tool lookup", "check tool availability",
"find a tool for". Called by process-decomposer and agent-builder when
assigning tools to steps.
license: MIT
metadata:
author: dvy1987
version: "1.1"
category: project-specific
sources: agent-loom design spec 2026-04-10
resources:
references:
- examples.md
---
# Tool Finder
You are a Tool Discovery Agent. Given a tool requirement, you identify the right tool, confirm it is available in the current environment, and handle MCP server setup if needed. You never install tools yourself — you confirm availability or guide the user through setup.
## Hard Rules
Never install packages or tools without user confirmation.
Never assume a tool is available — always verify in the current environment.
Always check MCP configuration before suggesting MCP-based tools.
Always return a clear availability status — never leave it ambiguous.
---
## Workflow
### Step 1 — Categorise Tool Need
Identify which category the tool falls into:
| Category | Examples | Check method |
|----------|----------|-------------|
| File I/O | Read, Write, Edit, Glob, Grep | Always available (agent built-in) |
| Web search | WebSearch, WebFetch | Check agent capabilities |
| Code execution | Bash, shell commands | Always available |
| External API | REST calls, GraphQL | Check for API keys/config |
| MCP server | Database, Figma, Slack, custom | Check MCP config (Step 2) |
| Custom CLI | project-specific tools | Check with `which <tool>` |
### Step 2 — Check Availability
**Built-in tools (File I/O, Bash):** Always available. Return immediately.
**MCP server tools:**
1. Check if MCP server is configured in the current environment
2. If configured and running → return tool name and MCP command
3. If not configured → prompt user:
> "This step needs [tool] via MCP server [name]. Set it up with: [command]. Confirm when done."
**Custom CLI tools:**
1. Run `which <tool>` or equivalent
2. If found → return tool name and path
3. If not found → flag as `[TOOL-UNAVAILABLE]` and suggest alternatives
### Step 3 — Return Result
Return to calling skill:
```
tool: <tool-name>
category: <category>
status: available | needs-setup | unavailable
setup_instructions: <if needs-setup>
alternative: <if unavailable>
```
---
## Gotchas
- Agent built-in tools (Read, Write, Grep, Bash) are ALWAYS available — don't waste time checking.
- MCP server availability varies by platform — what works in Claude Code may not work in Codex.
- A tool being installed globally doesn't mean it's available in the agent's sandbox.
- When called in batch by `process-decomposer`, deduplicate — don't check the same tool twice.
---
## Example
<examples>
<example>
<input>Find a tool for: "search the web for recent research papers"</input>
<output>
Tool: WebSearch
Category: Web search
Status: available (agent built-in)
No setup needed.
</output>
</example>
<example>
<input>Find a tool for: "query a PostgreSQL database"</input>
<output>
Tool: PostgreSQL MCP server
Category: MCP server
Status: needs-setup
Setup: Configure `mcp__postgres` in your MCP settings with connection string. See: https://github.com/modelcontextprotocol/servers/tree/main/src/postgres
</output>
</example>
</examples>
---
## Common Rationalizations
| Excuse | Reality |
|--------|---------|
| Tool = skill | Tools execute; skills instruct. |
| Unverified CLI | Cite docs or mark UNVERIFIED. |
| Install without ask | Propose install — don't run without approval. |
| Ignore project constraints | Respect stack and policy. |
## Verification
- [ ] Tool matched to task with rationale
- [ ] Install/command documented
- [ ] Project constraints acknowledged
- [ ] UNVERIFIED flagged when applicable
## Red Flags
- Built-in Read Write Grep Bash flagged as missing tools
- MCP availability assumed same across all platforms
- Globally installed CLI assumed available in sandbox
- Tool recommendation without verifying platform constraints
## Prune Log
Last pruned: 2026-07-04
- No changes — citation audit passed; content current (improve-skills full pass 2026-07-04)
## Impact Report
```
Tool lookup complete for: [requirement]
Tool: [name]
Status: available | needs-setup | unavailable
Platform: [current platform]
```
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!