Skip to main content
Glama
SpiritHerb

MCP Research Router

by SpiritHerb

get_tool_list

List all research tools or get intelligent recommendations and a research strategy based on your query.

Instructions

获取研究可用的所有工具列表,或根据用户查询智能推荐最合适的工具并提供研究策略指导。

两种使用模式:

模式1:获取所有工具

  • 直接调用,不传任何参数

  • 返回所有可用工具的完整列表

  • 用于了解系统中有哪些工具可用

模式2:智能工具推荐(推荐)

  • 传入 user_query 参数

  • 系统会根据查询内容智能推荐最合适的工具

  • 返回推荐工具列表、参数建议和研究策略

  • 适用于需要搜索、研究或查询的场景

参数说明:

  • user_query(可选,推荐模式必需):用户的研究查询或问题

  • max_tools(可选):推荐的最大工具数量,默认 5

  • max_iterations(可选):最大搜索迭代次数,默认 3

  • prompt_mode(可选):提示词模式,接受任何字符串值。预定义模式包括 tool_recommendation(默认,快速推荐)和 deep_research(深度研究)。用户也可以在 prompts/ 文件夹中创建自定义提示词模式,文件夹名称即为模式名称

返回内容: 模式1(获取所有工具):

  • tools:所有工具的完整列表

  • total:工具总数

模式2(智能推荐):

  • selected_tools:推荐的工具列表,包含工具名、参数建议和使用理由

  • research_strategy 或 research_plan:研究策略和执行计划

  • 执行指南:如何使用推荐的工具

重要说明:

  • 推荐的工具必须通过 execute_tools 工具执行

  • 推荐多个工具时,使用 execute_tools 的批量模式(tools 参数)并行执行以获得 3-5倍加速

  • 仅在工具之间存在依赖关系时使用单个模式(tool_name 参数)顺序执行

智能推荐约束:

  • LLM 必须返回有效的 JSON 格式

  • tool_name 必须是工具列表中存在的完整工具名(格式为 server_name-tool_name)

  • suggested_params 中的参数名必须严格匹配工具的 input_schema 定义

  • 必须包含 selection_reason 说明选择理由

  • 参数值必须符合 input_schema 中定义的类型和约束

示例: 获取所有工具:{"name": "get_tool_list"} 智能推荐:{"user_query": "搜索人工智能的最新新闻"} 深度研究:{"user_query": "分析人工智能在医疗领域的最新进展", "prompt_mode": "deep_research", "max_tools": 5} 自定义模式:{"user_query": "搜索新闻", "prompt_mode": "news_mode"}

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
user_queryNo用户的研究查询或问题(可选,传入则启用智能推荐)
max_toolsNo推荐的最大工具数量(默认:5)
max_iterationsNo最大搜索迭代次数(默认:3)
prompt_modeNo提示词模式:tool_recommendation(默认,快速推荐)、deep_research(深度研究)或用户自定义模式名称。用户可以在 prompts/ 文件夹中创建自定义提示词模式,文件夹名称即为模式名称tool_recommendation
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses the tool's behavior: it returns lists or recommendations, includes constraints on JSON format, exact tool names, and parameter matching. It also mentions performance benefits of batch execution. However, it does not explicitly state side effects (none expected for a read tool) or authentication needs, but that is acceptable for an informational tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but well-organized with headings, bullet points, and examples. Every section adds necessary information. It could be slightly more concise by merging some redundant explanations, but the structure aids readability and completeness. The front-loaded summary of modes is effective.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (two modes, four parameters, custom prompt modes) and lack of output schema, the description adequately covers return values for both modes, usage constraints, and integration with 'execute_tools'. It is thorough enough for an agent to use the tool correctly without additional context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the description adds substantial value beyond the schema. It explains optionality, default values, and the custom prompt mode feature (e.g., creating prompt files in 'prompts/' folder). It also provides concrete examples demonstrating different parameter combinations, which helps the agent understand usage patterns.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's dual purpose: listing all available tools or intelligently recommending tools based on a query. It distinguishes two modes and specifies the resource ('工具列表'). The verb 'get' and resource are explicit, and it differentiates from the sibling tool 'execute_tools' by stating that execution should be done via that tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance on when to use each mode: mode 1 for simply listing tools, mode 2 for research/query scenarios. It also instructs to use 'execute_tools' for execution, recommends batch mode for multiple tools, and warns against sequential execution without dependencies. This leaves no ambiguity about when to invoke this tool versus alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

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/SpiritHerb/mcp-research-router'

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