Skip to main content
Glama
radoxtech

DeepSeek Search Everywhere MCP

by radoxtech

deepseek_search_and_read

Search and read full page content in one request, including PDFs and forum threads, to gather research sources without separate fetch calls.

Instructions

Search and return full page content in one request — the recommended retrieval path.

This is search with need_content=True. Measured on 14 benchmark questions it returned content for PDFs and Reddit threads where deepseek_fetch returned HTTP 404, in about 0.7s per call.

Responses are cached in memory for a few minutes and identical concurrent calls share one upstream request; the envelope's cached flag tells which happened. Calls are rate-limited locally per endpoint: if no slot frees up within a short wait the error code is rate_limited_local. A response larger than 8 MiB fails with response_too_large.

Args: query: Search query, max 128 characters. count: Number of results to return, 1-50 (default 5). With dedupe on, extras are requested upstream so duplicates do not leave you short. ori_question: Original natural-language question, max 128 characters. lang: Language operator, e.g. 'es', 'de' or 'ja'. For non-English queries set it to the appropriate code; without it results may be mixed-language. For named entities test with and without the operator. max_chars_per_result: Content cap per result. max_total_chars: Total content budget across all results. dedupe: Collapse near-duplicate results (same canonical URL or same title+site), default on. rewrite: Rewrite the query via deepseek-flash before searching, default off. Skipped when lang is set; falls back silently to the original query on failure. refresh: Bypass the response cache and query upstream again (the envelope's cached flag says whether the results came from the cache).

Input Schema

NameRequiredDescriptionDefault
langNo
countNo
queryYes
dedupeNo
refreshNo
rewriteNo
ori_questionNo
max_total_charsNo
max_chars_per_resultNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A4.7/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and does so well: in-memory caching window, concurrent-call coalescing, the `cached` envelope flag, per-endpoint local rate limiting with the specific `rate_limited_local` error, and an 8 MiB `response_too_large` ceiling. These are exactly the runtime traits an agent needs to retry or budget correctly.

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 recommendation and the one-request framing are front-loaded, followed by operational behavior, then an Args block — a sensible order. The benchmark anecdote (14 questions, ~0.7s/call) is slightly padded but does real work justifying the recommendation.

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

Completeness5/5

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

An output schema exists, so return values need not be explained, and the description still flags the `cached` envelope field. For a 9-parameter retrieval tool with no annotations, the mix of routing guidance, failure modes, and per-argument behavior leaves nothing an agent needs missing.

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 0%, so the description must compensate — and it documents all nine parameters with behavior the schema cannot express: count interacts with dedupe (extras requested upstream), rewrite is skipped when lang is set and falls back silently, refresh bypasses cache, lang is a language operator with a test-with-and-without heuristic for named entities, plus the two char budgets.

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?

Opening line states a specific verb and resource plus the key differentiator: search *and* full page content in a single request. It also equates itself to a known primitive ('search with need_content=True') and names the sibling it outperforms (deepseek_fetch), so an agent can place it immediately.

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

Usage Guidelines4/5

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

Calls itself 'the recommended retrieval path' and gives concrete evidence for preferring it over deepseek_fetch (PDFs/Reddit where fetch returned 404). It does not, however, state when to prefer deepseek_web_search (metadata-only) or deepseek_fetch_many, which are the closest alternatives in the sibling list.

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