A unified search MCP server that routes queries to multiple providers (Tavily, Firecrawl, Exa, xAI) based on task type, with support for web search, content extraction, and research workflows.
Server has 4 tools with complete input schemas and descriptions. Naming follows verb_noun convention (search, extract_url, research, mysearch_health). Descriptions are present but brief (10-50 chars for most). Parameters are well-typed with enums for constrained inputs (mode, intent, strategy, provider). However, parameter descriptions are minimal or missing for many fields (e.g., 'formats' in extract_url lacks detail on expected format types). Output schemas are not documented, LLMs cannot predict response structure. Error handling is absent from tool definitions. No tool annotations (readOnlyHint, destructiveHint) despite all being read-only operations. The research tool combines multiple concerns (web search + scraping + social media) but is justified as a workflow. Overall solid foundation with gaps in documentation completeness and output clarity.
抓取單個 URL 的正文,默認優先 Firecrawl;失敗或空正文時回退 Tavily extract。
查看 MySearch 當前 provider 配置、search mode、auth 模式、base URL 和 key 可用性。
小型研究工作流:網頁發現 + 正文抓取 + 可選 X 輿情補充。
統一搜索入口。按任務類型自動選擇 Tavily / Firecrawl / Exa / xAI。
Output schemas not documented. LLMs cannot predict response structure or plan downstream tool calls. All 4 tools return dict with no schema specification.
Parameter descriptions are minimal or absent. 'formats' in extract_url, 'sources' in search, and many others lack detail on expected values, format, or constraints.
No tool annotations despite all tools being read-only. Missing readOnlyHint metadata to signal safety to agents.
No error handling guidance in tool definitions. Agents cannot determine if failures are retryable or require user intervention.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 57 | 2026-07-28+ | v2 |
research tool combines web discovery + scraping + optional social media. While justified as a workflow, consider splitting into separate tools for finer-grained agent control.