Skip to main content
Glama

exa_research_start

Start an Exa research agent for open-ended tasks like building lists or analyzing topics across sources; it returns a run_id immediately so you can fetch results later.

Instructions

Start an Exa research agent for open-ended tasks (building lists, analyzing a topic
across many sources). Runs take minutes, so this returns a run_id right away;
fetch the result with exa_research_get. This is the most expensive Exa tool.

Args:
    query: The research task (e.g., "Find 10 AI consultant companies in Indonesia")
    output_schema: Optional JSON Schema for a structured result; without it the result is a report
    effort: "minimal", "low" (default), "medium" or "auto"

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
queryYes
effortNolow
output_schemaNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.4/5.0
Behavior4/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 well: it discloses the async pattern (returns run_id immediately), latency ('runs take minutes'), and relative cost. It omits failure/retry behavior and any auth or rate-limit context, keeping it short of a 5.

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

Conciseness5/5

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

Front-loads the core purpose, then the async/cost caveat, then a compact Args block. Every sentence adds signal and nothing is redundant.

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

Completeness4/5

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

For an async tool with an output schema, it covers what an agent needs: purpose, the run_id/fetch handoff, cost, and all three parameters. It stops short only on failure handling and the practical meaning of effort levels.

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 0%, so the description must compensate, and it does: query is explained with a concrete example, output_schema is described behaviorally (structured result vs. a report when omitted), and effort's enum values including the default are listed even though the schema lacks them. Minor gaps remain (e.g., cost/quality tradeoff between effort levels).

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 (start an Exa research agent) and scopes it to open-ended tasks like building lists or analyzing a topic across sources. It explicitly routes the async result retrieval to the sibling exa_research_get and flags cost relative to other tools, so an agent can distinguish it from exa_search/exa_deep_search.

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?

Clearly states the context for use ('open-ended tasks') and gives the follow-up path via exa_research_get, plus a cost warning ('most expensive Exa tool'). It does not explicitly say when NOT to use it in favor of exa_search or exa_deep_search, so the exclusion guidance is implied rather than stated.

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