Design effective MCP tools and Claude Code integrations using the consolidation principle. Fewer, better-designed tools dramatically improve agent success rates. Use when creating MCP servers, designing tool interfaces, optimizing tool sets, or when user mentions 'tool design', 'MCP', 'fewer tools', 'tool consolidation', 'tool architecture', or 'tool optimization'.
/plugin marketplace add greyhaven-ai/claude-code-config/plugin install core@grey-haven-pluginsThis skill is limited to using the following tools:
checklists/tool-audit-checklist.mdexamples/mcp-consolidation-examples.mdreference/consolidation-guide.mdreference/mcp-best-practices.mdDesign effective MCP tools and Claude Code integrations using the consolidation principle.
Fewer tools = Higher success rates
Vercel d0 achieved 80% → 100% success by reducing from 17 to 2 tools. This isn't coincidence—it's architecture.
| Tool Count | Expected Success | Example |
|---|---|---|
| 1-3 | 95-100% | Vercel d0 (2 tools) |
| 4-7 | 85-95% | Focused agent |
| 8-15 | 70-85% | General assistant |
| 15+ | <70% | Kitchen sink |
examples/)reference/)checklists/)Before (17 tools):
create_file, read_file, update_file, delete_file,
list_directory, search_files, get_file_info,
create_folder, rename_file, move_file, copy_file,
get_permissions, set_permissions, watch_file,
compress_file, decompress_file, calculate_hash
After (2 tools):
file_operation(action, path, content?, options?)
directory_operation(action, path, options?)
Result: 80% → 100% success rate
Instead of many tools with few parameters, use few tools with structured parameters.
Before (5 tools):
search_code(query: string)
search_files(pattern: string)
search_in_file(file: string, query: string)
search_directory(dir: string, query: string)
search_with_regex(regex: string)
After (1 tool):
search(options: {
query: string
type: 'code' | 'files' | 'content'
path?: string
regex?: boolean
})
Use prefixes to prevent collisions and clarify scope:
mcp__firecrawl__search // External MCP
mcp__linear__create_issue // External MCP
search // Claude Code native
| Use Tool When | Use Agent When |
|---|---|
| Single operation | Multi-step workflow |
| Deterministic result | Judgment required |
| Fast execution (<1s) | Complex reasoning |
| Simple I/O | Context accumulation |
Grey Haven uses these MCP servers effectively:
| Server | Tools | Purpose |
|---|---|---|
| firecrawl | 5 | Web scraping, search |
| linear | 12 | Issue/project management |
| playwright | 15 | Browser automation |
| context7 | 2 | Documentation lookup |
| filesystem | 10 | File operations |
Even well-designed MCPs can be wrapped for consolidation:
// Instead of exposing all 15 playwright tools
// Create 3 workflow-level tools:
browser_navigate(url, options?) // Navigate + wait
browser_interact(selector, action) // Click/type/select
browser_extract(selector, format) // Screenshot/text/html
Adding tools "just in case" someone needs them.
Fix: Only add tools with proven usage patterns.
Separate tools for each atomic operation.
Fix: Combine related operations with action parameters.
getUser, fetch_project, listTeams, SEARCH_ISSUES
Fix: Consistent verb_noun pattern: get_user, list_projects
Tools with cryptic names and no description.
Fix: Every tool needs clear description + examples.
api-design-standards - REST/GraphQL patterns apply to toolsllm-project-development - Pipeline architecturecontext-management - Managing context with tools# Audit your tool set
cat checklists/tool-audit-checklist.md
# Learn consolidation patterns
cat reference/consolidation-guide.md
# See real examples
cat examples/mcp-consolidation-examples.md
Skill Version: 1.0 Key Metric: 17→2 tools = 80%→100% success Last Updated: 2025-01-15
This skill should be used when the user asks to "create a slash command", "add a command", "write a custom command", "define command arguments", "use command frontmatter", "organize commands", "create command with file references", "interactive command", "use AskUserQuestion in command", or needs guidance on slash command structure, YAML frontmatter fields, dynamic arguments, bash execution in commands, user interaction patterns, or command development best practices for Claude Code.
This skill should be used when the user asks to "create an agent", "add an agent", "write a subagent", "agent frontmatter", "when to use description", "agent examples", "agent tools", "agent colors", "autonomous agent", or needs guidance on agent structure, system prompts, triggering conditions, or agent development best practices for Claude Code plugins.
This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.