Skip to main content
Glama

@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 task

  • max_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 name

  • description (string, required) - What the tool does

  • category (string, required) - Category (e.g. coding, testing, deployment, research, analysis)

  • strengths (string[], required) - What the tool is good at

  • use_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 name

  • task (string, required) - Task description

  • success (boolean, required) - Whether the tool completed the task successfully

  • duration_ms (number, optional) - Execution time in milliseconds

  • notes (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

  1. Register tools with their capabilities and use cases

  2. Ask for recommendations by describing your task

  3. Record outcomes after using a tool (success/failure)

  4. 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 metadata

  • tool-stats.json - Aggregated usage statistics

  • usage-log.jsonl - Append-only usage log for auditing

License

MIT - Copyright 2026 AEGIS AI Cooperative

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sangokp/mcp-toolselect'

If you have feedback or need assistance with the MCP directory API, please join our Discord server