Skip to main content
Glama

Deep Research

deep_research
Read-onlyIdempotent

ACCOUNT REQUIRED (free — sign in via GitHub at https://pipeworx.io/signup; depth:"thorough" needs a paid plan). If you are not signed in, use ask_pipeworx instead — it works on every tier. Grounded multi-source research across Pipeworx's 1872 STRUCTURED data sources (SEC filings, FRED/BLS economics, FDA, USPTO patents, markets, science, government records, etc.) in ONE call — this is NOT open-web search. Decomposes your question into focused facets, routes each to the right one of 7,210 tools IN PARALLEL, and returns a findings packet: verbatim evidence + confidence + source + fetched_at + a stable pipeworx:// citation per finding, with explicit gaps[] for facets the data couldn't answer (never invented). Best for broad/multi-part questions over structured data ("compare X and Y's regulatory + financial exposure", "research the filings + market picture for ACME"). For a single lookup use ask_pipeworx (one LLM call, not many). For BREAKING or colloquial CURRENT-NEWS / "what's the world saying about X" topics, prefer ask_pipeworx — it routes to live news APIs and the *-news-feeds packs; deep_research returns mostly empty gaps[] when the topic isn't in the structured catalog. Second-hop iteration: depth:"standard" re-angles unanswered gaps (gap recovery); depth:"thorough" additionally chases the best leads from the first pass — so multi-step questions resolve in one call. Every finding carries a hop field and a citation_uri — a resolvable pipeworx:// record URI, present only when the source emits one that resources/read can actually serve, so a citation you get back is always fetchable. "standard" and "thorough" also return contradictions[] flagging findings that disagree. Large records are semantically excerpted to the passages relevant to each facet (not head-truncated), so answers deep in a long filing/series aren't missed. Expect 15-60s (thorough with its follow-up + contradiction pass: up to ~90s).

Example tool call

This call uses example arguments supplied in the tool’s input schema.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "depth": "quick",
      "question": "What is the current US unemployment rate and how has it changed over the past year?"
    },
    "name": "deep_research"
  }
}

Input Schema

NameRequiredDescriptionDefault
qNoAlias for question.
askNoAlias for question.
textNoAlias for question.
depthNoHow many facets to research in parallel: quick=3 (single hop), standard=3 (default; adds a gap-recovery hop that re-angles unanswered facets + a contradictions[] scan across findings), thorough=6 (paid; adds a full iterative hop that chases leads + recovers gaps, plus the contradictions[] scan).
inputNoAlias for question.
queryNoAlias for question.
promptNoAlias for question.
messageNoAlias for question.
questionYesThe research question, in natural language. Broad/multi-part is fine — decomposition is the point. Accepts query, q, prompt, text, input, ask, message as aliases.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed9 schema fields changed
    • addedInput schema / examples
      Added value: +[
      +  {
      +    "depth": "quick",
      +    "question": "What is the current US unemployment rate and how has it changed over the past year?"
      +  }
      +]
    • addedInput schema / properties / ask
      Added value: +{
      +  "description": "Alias for question.",
      +  "type": "string"
      +}
    • addedInput schema / properties / input
      Added value: +{
      +  "description": "Alias for question.",
      +  "type": "string"
      +}
    • addedInput schema / properties / message
      Added value: +{
      +  "description": "Alias for question.",
      +  "type": "string"
      +}
    • addedInput schema / properties / prompt
      Added value: +{
      +  "description": "Alias for question.",
      +  "type": "string"
      +}
    • addedInput schema / properties / q
      Added value: +{
      +  "description": "Alias for question.",
      +  "type": "string"
      +}
    • addedInput schema / properties / query
      Added value: +{
      +  "description": "Alias for question.",
      +  "type": "string"
      +}
    • changedInput schema / properties / question / description
      Previous value: -"The research question, in natural language. Broad/multi-part is fine — decomposition is the point."New value: +"The research question, in natural language. Broad/multi-part is fine — decomposition is the point. Accepts query, q, prompt, text, input, ask, message as aliases."
    • addedInput schema / properties / text
      Added value: +{
      +  "description": "Alias for question.",
      +  "type": "string"
      +}
  2. Changed1 schema field changed
    • changedInput schema / properties / depth / description
      Previous value: -"How many facets to research in parallel: quick=3 (single hop), standard=5 (default; adds a gap-recovery hop that re-angles unanswered facets + a contradictions[] scan across findings), thorough=8 (paid; adds a full iterative hop that chases leads + recovers gaps, plus the contradictions[] scan)."New value: +"How many facets to research in parallel: quick=3 (single hop), standard=3 (default; adds a gap-recovery hop that re-angles unanswered facets + a contradictions[] scan across findings), thorough=6 (paid; adds a full iterative hop that chases leads + recovers gaps, plus the contradictions[] scan)."
  3. Changed1 schema field changed
    • changedInput schema / properties / depth / description
      Previous value: -"How many facets to research in parallel: quick=3 (single hop), standard=5 (default; adds a gap-recovery hop that re-angles unanswered facets), thorough=8 (paid; adds a full iterative hop that chases leads + recovers gaps, plus a contradictions[] scan across findings)."New value: +"How many facets to research in parallel: quick=3 (single hop), standard=5 (default; adds a gap-recovery hop that re-angles unanswered facets + a contradictions[] scan across findings), thorough=8 (paid; adds a full iterative hop that chases leads + recovers gaps, plus the contradictions[] scan)."
  4. Changed1 schema field changed
    • changedInput schema / properties / depth / description
      Previous value: -"How many facets to research in parallel: quick=3, standard=5 (default), thorough=8 (paid plans). \"thorough\" also runs a second ITERATIVE hop — a planner inspects the first-pass findings/gaps and chases the most valuable leads or recovers gaps, resolving multi-step questions in one call."New value: +"How many facets to research in parallel: quick=3 (single hop), standard=5 (default; adds a gap-recovery hop that re-angles unanswered facets), thorough=8 (paid; adds a full iterative hop that chases leads + recovers gaps, plus a contradictions[] scan across findings)."
  5. Changed1 schema field changed
    • changedInput schema / properties / depth / description
      Previous value: -"How many facets to research in parallel: quick=3, standard=5 (default), thorough=8 (paid plans)."New value: +"How many facets to research in parallel: quick=3, standard=5 (default), thorough=8 (paid plans). \"thorough\" also runs a second ITERATIVE hop — a planner inspects the first-pass findings/gaps and chases the most valuable leads or recovers gaps, resolving multi-step questions in one call."
  6. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already cover safety (readOnlyHint, destructiveHint=false, idempotent), but the description adds cost/auth tiers, expected latency (15-60s, up to ~90s), the gaps[] never-invented guarantee, contradictions[] behavior at standard/thorough, semantic excerpting instead of head truncation, and the caveat that citation_uri only appears when resources/read can serve it. That is substantial context beyond structured fields.

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?

Dense and front-loaded, with the access prerequisite first and the sibling routing before the deep mechanism description. It loses a little to repetition — the ask_pipeworx alternative is raised three separate times and some latency/citation detail sits in the middle of an already long block — but nearly every sentence carries distinct operational information.

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?

For a high-complexity, high-latency, paid-tier tool with no output schema, the description covers access, timing, result shape, failure mode (gaps), citation stability, and alternatives. Nothing an agent needs to decide whether and how to call it is missing.

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

Parameters4/5

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

Schema description coverage is 100% and the depth enum is already fully documented in the schema, so the description only needs to add framing. It does add meaning about what the hops accomplish (re-angling gaps vs chasing first-pass leads) and reinforces that broad/multi-part questions are acceptable input, though it does not discuss the alias parameters beyond what the schema states.

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?

States a specific verb+resource ('grounded multi-source research across 1872 STRUCTURED data sources') and explicitly negates the nearest misreading ('this is NOT open-web search'). It also describes the mechanism (decompose into facets, route to 7,210 tools in parallel) and the return artifact, which distinguishes it from ask_pipeworx and the prediction/archive siblings.

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?

Gives explicit routing rules in both directions: use ask_pipeworx for a single lookup, for breaking/colloquial current news, and when unauthenticated; use this for broad multi-part structured-data questions, with concrete example questions. The depth-level trade-offs (quick/standard/thorough) are mapped to situations (gap recovery vs lead chasing).

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.