@aegis-ai/mcp-toolselect
An MCP server that recommends which tools to use for a given task. It learns from usage patterns and adapts recommendations over time based on success rates.
Install
bun install @aegis-ai/mcp-toolselect
Or clone and run directly:
git clone https://github.com/aegis-ai/mcp-toolselect.git
cd mcp-toolselect
bun install
bun src/index.ts
Configuration
Add to your MCP client config (e.g. claude_desktop_config.json):
{
"mcpServers": {
"toolselect": {
"command": "bunx",
"args": ["@aegis-ai/mcp-toolselect"]
}
}
}
Or if running from source:
{
"mcpServers": {
"toolselect": {
"command": "bun",
"args": ["/path/to/mcp-toolselect/src/index.ts"]
}
}
}
Tools
recommend_tools
Get ranked tool recommendations for a task description. Returns confidence scores, priority levels, and historical success rates.
Parameters:
task(string, required) - Description of the taskmax_results(number, optional) - Max recommendations to return (default: 5)
Example:
{
"task": "Write integration tests for the payment API",
"max_results": 3
}
Response:
{
"task": "Write integration tests for the payment API",
"analysis": {
"keywords": ["testing", "coding", "api"],
"complexity": "medium",
"estimatedDuration": "medium"
},
"recommendations": [
{
"tool": "jest",
"confidence": 0.85,
"reason": "matches keyword \"testing\"; strength \"integration tests\" found in task",
"priority": "required",
"successRate": 0.92,
"timesUsed": 47
}
]
}
register_tool
Register a tool with its capabilities so it can be recommended for future tasks.
Parameters:
name(string, required) - Unique tool namedescription(string, required) - What the tool doescategory(string, required) - Category (e.g. coding, testing, deployment, research, analysis)strengths(string[], required) - What the tool is good atuse_cases(string[], required) - Typical scenarios where the tool shines
Example:
{
"name": "playwright",
"description": "Browser automation and end-to-end testing framework",
"category": "testing",
"strengths": ["browser automation", "e2e testing", "cross-browser", "screenshot comparison"],
"use_cases": ["end-to-end tests", "visual regression testing", "web scraping", "form automation"]
}
record_usage
Record that a tool was used for a task and whether it succeeded. This feedback drives future recommendation quality.
Parameters:
tool(string, required) - Tool nametask(string, required) - Task descriptionsuccess(boolean, required) - Whether the tool completed the task successfullyduration_ms(number, optional) - Execution time in millisecondsnotes(string, optional) - Additional context
Example:
{
"tool": "playwright",
"task": "Run e2e tests for checkout flow",
"success": true,
"duration_ms": 12500,
"notes": "All 15 tests passed"
}
get_tool_stats
Get usage statistics and success rates for registered tools.
Parameters:
tool(string, optional) - Specific tool name. Omit to get all stats.
Example response:
{
"totalTools": 8,
"totalUsages": 142,
"tools": [
{
"name": "playwright",
"timesUsed": 47,
"successCount": 43,
"failCount": 4,
"avgDurationMs": 11200,
"overallSuccessRate": 0.91,
"contextSuccessRates": {
"testing": 0.94,
"debugging": 0.78
}
}
]
}
list_tools
List all registered tools grouped by category.
Parameters:
category(string, optional) - Filter by category
How It Works
- Register tools with their capabilities and use cases
- Ask for recommendations by describing your task
- Record outcomes after using a tool (success/failure)
- The system learns which tools work best for which types of tasks and adjusts future confidence scores accordingly
The recommendation engine:
- Analyzes task descriptions to extract keywords and estimate complexity
- Matches keywords against registered tool strengths and use cases
- Adjusts confidence using historical success rates (exponential moving average)
- Returns prioritized recommendations sorted by relevance
Data Storage
All data is stored locally in ~/.mcp-toolselect/:
tool-registry.json- Registered tools and their metadatatool-stats.json- Aggregated usage statisticsusage-log.jsonl- Append-only usage log for auditing
License
MIT - Copyright 2026 AEGIS AI Cooperative