Improve MCP tool selection guidance
This commit is contained in:
@@ -56,12 +56,11 @@ TOOLS = [
|
||||
{
|
||||
"name": "web_search",
|
||||
"description": (
|
||||
"Fast read-only web discovery. Returns a compact list of titles, direct URLs, "
|
||||
"previews and upstream dates. Search previews are discovery hints, not verified "
|
||||
"facts. Use web_compare when factual claims must be checked, and web_shop for "
|
||||
"products or prices. The result already includes the retrieval timestamp; do not "
|
||||
"call another clock tool. One call is normally sufficient. If no direct match is "
|
||||
"returned, report not found; do not retry wording variants."
|
||||
"USE for a quick lookup of current public internet information or candidate URLs. "
|
||||
"DO NOT use for Home Assistant, Sonarr/Radarr, Unraid, product prices (use "
|
||||
"web_shop), source-verified claims (use web_compare), or difficult multi-source "
|
||||
"research (use web_research). Results are unverified discovery hints. Make one "
|
||||
"call; if nothing relevant is found, say so instead of retrying variants."
|
||||
),
|
||||
"inputSchema": {
|
||||
"type": "object",
|
||||
@@ -70,7 +69,7 @@ TOOLS = [
|
||||
"type": "string",
|
||||
"minLength": 2,
|
||||
"maxLength": 500,
|
||||
"description": "Search query preserving names, constraints and intent.",
|
||||
"description": "One precise public-web query. Preserve exact names, versions, dates and constraints from the user.",
|
||||
},
|
||||
"max_results": {
|
||||
"type": "integer",
|
||||
@@ -82,7 +81,7 @@ TOOLS = [
|
||||
"type": "string",
|
||||
"enum": ["auto", "web", "github", "huggingface"],
|
||||
"default": "auto",
|
||||
"description": "Use auto unless the requested source is explicit.",
|
||||
"description": "Use auto normally; choose github or huggingface only when that source is explicitly requested.",
|
||||
},
|
||||
"include_domains": {
|
||||
"type": "array",
|
||||
@@ -106,15 +105,20 @@ TOOLS = [
|
||||
{
|
||||
"name": "web_compare",
|
||||
"description": (
|
||||
"Read-only evidence comparison for factual research. Discovers sources, crawls up "
|
||||
"to five public pages, and returns short source-bound evidence. Treat a claim as "
|
||||
"verified only when it appears in page_evidence; never promote a search preview to "
|
||||
"a fact. Prefer primary sources when available and cite the supplied URL."
|
||||
"USE when the user asks to verify a factual claim, check whether information is "
|
||||
"correct, or answer with trustworthy citations. It discovers and reads up to five "
|
||||
"public pages. DO NOT use for a simple URL lookup, shopping, or private systems. "
|
||||
"Only page_evidence is verified; cite its URLs and expose conflicts or missing evidence."
|
||||
),
|
||||
"inputSchema": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"query": {"type": "string", "minLength": 2, "maxLength": 500},
|
||||
"query": {
|
||||
"type": "string",
|
||||
"minLength": 2,
|
||||
"maxLength": 500,
|
||||
"description": "The exact claim or question to verify, including relevant date/version context.",
|
||||
},
|
||||
"max_sources": {
|
||||
"type": "integer",
|
||||
"minimum": 2,
|
||||
@@ -142,11 +146,10 @@ TOOLS = [
|
||||
{
|
||||
"name": "web_shop",
|
||||
"description": (
|
||||
"Read-only product and price lookup designed for small models. Separates the "
|
||||
"requested retailer from comparison sites, extracts pack-size and price evidence, "
|
||||
"and marks whether price and direct product URL were actually verified. Recommend "
|
||||
"only candidates with price_verified_on_retailer=true when the user requested a "
|
||||
"specific retailer. Never invent a missing link, pack size, availability or price."
|
||||
"USE ONLY for finding products, current prices, availability, pack sizes, or a "
|
||||
"purchase link. DO NOT use web_search for shopping. Preserve the requested retailer, "
|
||||
"brand and total budget. Recommend retailer-specific results only when "
|
||||
"price_verified_on_retailer=true; never invent price, stock, quantity or URL."
|
||||
),
|
||||
"inputSchema": {
|
||||
"type": "object",
|
||||
@@ -196,27 +199,32 @@ TOOLS = [
|
||||
{
|
||||
"name": "web_research",
|
||||
"description": (
|
||||
"Read-only multi-source research for difficult questions. Uses local hybrid "
|
||||
"BM25 plus dense ONNX reranking, crawls only the best pages, removes duplicates, "
|
||||
"and returns short source-bound evidence. Use depth=deep only when one search is "
|
||||
"unlikely to be enough. The tool never decides unsupported facts: cite evidence "
|
||||
"URLs and say insufficient when evidence is missing or conflicting. This tool "
|
||||
"already performs bounded variants internally; never follow it with more searches "
|
||||
"for the same request."
|
||||
"USE ONLY for difficult, broad, or niche questions that require several sources, "
|
||||
"cross-checking, or discovery variants. For one factual claim use web_compare; for "
|
||||
"a quick lookup use web_search; for products use web_shop. This tool already runs "
|
||||
"bounded variants internally, so never repeat the same research with another web "
|
||||
"tool. Cite returned evidence URLs and state when evidence is insufficient."
|
||||
),
|
||||
"inputSchema": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"query": {"type": "string", "minLength": 2, "maxLength": 500},
|
||||
"query": {
|
||||
"type": "string",
|
||||
"minLength": 2,
|
||||
"maxLength": 500,
|
||||
"description": "The complete research question, including scope, timeframe, versions and comparison criteria.",
|
||||
},
|
||||
"depth": {
|
||||
"type": "string",
|
||||
"enum": ["quick", "deep"],
|
||||
"default": "quick",
|
||||
"description": "Use quick by default. Use deep only for genuinely complex or poorly indexed topics.",
|
||||
},
|
||||
"backend": {
|
||||
"type": "string",
|
||||
"enum": ["auto", "web", "github", "huggingface"],
|
||||
"default": "auto",
|
||||
"description": "Use auto unless the user explicitly restricts research to GitHub or Hugging Face.",
|
||||
},
|
||||
"max_sources": {
|
||||
"type": "integer",
|
||||
|
||||
Reference in New Issue
Block a user