Skip to main content
Glama

Catfacts

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 1870 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,201 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. Added

TDQS

A4.7/5.0
Behavior5/5

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

Annotations only declare readOnly/openWorld/idempotent/non-destructive; the description adds far more: an auth gate with a signup URL, tier-dependent depth, expected latency (15–60s, ~90s for thorough), what the findings packet contains (verbatim evidence, confidence, source, fetched_at, pipeworx:// citation), gaps[] behavior for unanswerable facets, contradictions[] on standard/thorough, citation_uri fetchability, and semantic excerpting instead of truncation.

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

Conciseness3/5

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

The critical constraints (account required, paid tier for thorough) are correctly front-loaded, but the body is a single dense block with repetition — ask_pipeworx routing is stated three times and the 'not open-web search' point is restated. It is information-rich but longer than it needs to be.

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?

With no output schema, the description carries the full burden of describing return values and does so (findings packet fields, gaps[], contradictions[], hop, citation_uri). Combined with auth, latency, and failure-mode disclosure, an agent has everything needed to call this correctly and interpret results.

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 coverage is 100%, so the baseline is 3, but the description goes beyond it by explaining what each depth actually does behaviorally: standard re-angles unanswered gaps, thorough chases first-pass leads plus gap recovery, and both add a contradiction scan. It also clarifies that the question can be broad/multi-part and that aliases are accepted.

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: decomposes a question into facets, routes each in parallel to tools over 1,870 structured sources, and returns a findings packet. It explicitly excludes open-web search and names the sibling (ask_pipeworx) it is not, so an agent can distinguish it without opening any schema.

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 when-to-use examples ('compare X and Y's regulatory + financial exposure'), when-not rules (single lookup → ask_pipeworx; breaking/colloquial news → ask_pipeworx because live news APIs are elsewhere), and a prerequisite (sign-in required, paid plan for depth:"thorough"). Depth levels are tied to concrete question shapes.

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.