Search and research MCP for knowledge work.

One server to search the web and specialised indexes built for knowledge work, and run multi-step research with cited outputs, from Claude, Codex or any agent. Read the docs.

Works withClaudeCodexCursorHermes Agent (Nous Research)Hermespiand more…

Connect

Claude

Settings → Connectors → Add custom connector. Paste the endpoint and sign in with Valyu.

endpoint
https://mcp.valyu.ai/mcp

ChatGPT

Settings → Connectors → Create. Paste the endpoint and sign in with Valyu.

endpoint
https://mcp.valyu.ai/mcp

Claude Code

terminal
claude mcp add --transport http valyu https://mcp.valyu.ai/mcp

Codex, Cursor and others

Any client that speaks Streamable HTTP. Sign in with Valyu when prompted, or put an API key on the URL (an Authorization: Bearer header works too):

mcp.json
{
  "mcpServers": {
    "valyu": {
      "type": "http",
      "url": "https://mcp.valyu.ai/mcp?valyuApiKey=<VALYU_API_KEY>"
    }
  }
}

Hermes Agent (Nous Research)Hermes, pi and terminal agents

Point the agent at the endpoint; it signs in on first use. Keys live at platform.valyu.ai.

Tools

valyu_searchSearch the web and specialised indexes built for knowledge work in one call, or scope to one index.

Any question that needs current information, primary sources or citations. Returns ranked results with content, URLs and relevance; scope with included_sources for precision, leave it unscoped for breadth.

Parameters
queryrequiredstring

Focused natural-language search query.

included_sourcesstring[]

Hard source filter: dataset ids from valyu_datasources, domains, URL prefixes, supported presets (academic, finance, legal), or web.

source_biasesobject

Requested source preferences: map domains or URL prefixes to integers from -5 to 5; 0 is neutral.

excluded_sourcesstring[]

Sources the user asked to exclude, as dataset ids, domains or URL prefixes.

max_num_resultsinteger = 10

Maximum number of results or document chunks (1-100, default 10).

response_length"short" | "medium" | "large" | "max" | integer

Optional API response length per result: short (25000 characters, API default), medium (50000), large (100000), max (all available content), or a positive integer character limit.

start_datestring

Include results published on or after this date (YYYY-MM-DD).

end_datestring

Include results published on or before this date (YYYY-MM-DD).

include_imagesboolean = false

Include available figure links with results.

country_codestring

Country preference requested by the user, as an ISO 3166-1 alpha-2 code such as GB or US.

valyu_datasourcesFind datasets by describing what you need; returns the ids that scope a search.

Discover specialist datasets before choosing a source filter. Returns dataset ids, descriptions and account coverage where confirmed; unlisted access remains unknown.

Parameters
querystring

Describe the data you need in plain language, e.g. "peer-reviewed medical literature", "FDA drug labels", "insider transactions", "CPI inflation".

check_accessboolean = true

Show account-reported dataset coverage when available; access not confirmed by the account API remains unknown.

categorystring

Only list datasets in this category ID.

valyu_contentsExtract readable content from supplied URLs.

Extract content from one or more URLs, optionally summarised to an instruction. Uses the API response-length default unless a length is requested.

Parameters
urlsrequiredstring[]

1-10 absolute http(s) URLs to fetch.

summaryboolean | string

true for a general summary, or a string instruction describing what to extract, e.g. "only the methodology and results".

extract_effort"normal" | "high" | "auto" = "auto"

"normal" requests standard extraction; "high" requests JavaScript rendering; "auto" selects per URL.

screenshotboolean = false

Request a page screenshot link when the user's request depends on visual content, such as a chart or layout.

response_length"short" | "medium" | "large" | "max" | integer

Optional API response length per URL: short (25000 characters, API default), medium (50000), large (100000), max (all available content), or a positive integer character limit.

valyu_deepresearchStart a long-running deepresearch task that writes a cited report.

Start a background report when the user explicitly asks for deep research or an exhaustive investigation. Creation incurs a charge; returns a task id after acceptance, with optional waiting capped at 30 seconds.

Parameters
queryrequiredstring

The research question, scope, timeframe and requested output.

mode"instant" | "fast" | "standard" | "heavy" | "max" = "fast"

Depth/cost tier.

wait_secondsinteger = 0

Seconds to wait for completion, from 0 to 30.

report_formatstring

Natural-language guidance for the report structure, e.g. "a one-page memo with a risks table" or "bullet points, no preamble".

research_strategystring

Natural-language guidance for how to run the research, e.g. "prioritise primary sources and SEC filings over news".

included_sourcesstring[]

Restrict research to dataset ids, domains or URL prefixes, or "web".

excluded_sourcesstring[]

Dataset ids, domains or URL prefixes to exclude when requested by the user.

source_biasesobject

Adjust source ranking without excluding sources.

search_type"all" | "web" | "proprietary"

Search all sources (default), web only, or proprietary datasets only.

country_codestring

Two-letter country code to geo-target web results when relevant to the requested geographic scope, e.g. GB.

start_datestring

Include sources published on or after this date (YYYY-MM-DD).

end_datestring

Include sources published on or before this date (YYYY-MM-DD).

urlsstring[]

Up to 10 URLs the agent must read and use as context (e.g. a filing, a trial page, a competitor's site).

previous_reportsstring[]

Up to 3 earlier task ids whose reports become context for this one - for follow-ups and updates.

filesobject[]

Up to 10 files (as base64 data URLs) for the agent to analyse.

pdfboolean = false

Also produce a PDF of the report (a download link is returned with the report).

output_schemaobject

JSON Schema for structured JSON output instead of a markdown report.

deliverablesstring | object[]

Up to 10 files to generate from the report, e.g. "an Excel sheet of every trial with phase and sponsor" or {"type": "pptx", "description": "10-slide summary"}.

toolsobject

Enable or disable analysis and document tools needed for the requested research.

hitlobject

Human-in-the-loop checkpoints.

valyu_deepresearch_statusCheck a task, collect the finished report, or list recent tasks.

Check a running task, collect the finished report with citations, or, with no task id, list recent tasks.

Parameters
task_idstring

The task id returned by valyu_deepresearch.

limitinteger = 20

Listing only: how many recent tasks to return (default 20).

wait_secondsinteger = 0

Seconds to wait for completion, from 0 to 30.

include_sourcesboolean = true

Include the citation list with deep links into each source (completed tasks only).

valyu_deepresearch_controlSteer, answer a checkpoint, share, cancel or delete a task.

Redirect a running task, answer a checkpoint it is waiting on, toggle the share link, or cancel or delete it.

Parameters
task_idrequiredstring

The task id returned by valyu_deepresearch (or listed by valyu_deepresearch_status).

actionrequired"steer" | "cancel" | "respond" | "share" | "delete"

"steer", "cancel", "respond", "share" or "delete" - see the tool description.

instructionstring

The steering instruction, in plain language.

interaction_idstring

The checkpoint id shown by valyu_deepresearch_status.

responseobject

The checkpoint answer, in the shape valyu_deepresearch_status specified for that checkpoint type.

publicboolean

Required when action is "share": true publishes a share link, false removes it.

Sources

The live web plus academic, financial, clinical, patent, economic, legal and security datasets, growing every month. Browse every data source.