Skip to main content
Glama

AIsa Web Search & Research

Submit an asynchronous research Agent run.

post_exa_agent_runs
Read-onlyIdempotent

Hand a research task to an agent that works in the background. query and an Idempotency-Key are required; effort trades depth against time, outputSchema shapes the result, dataSources restricts where it looks, and previousRunId continues an earlier run. Asynchronous. Submitting returns HTTP 202 and a job envelope — id, object, endpoint, status, createdAt, completedAt, pricing, output, error — with output still null. Poll get_exa_agent_run until terminal; output then carries text, structured and grounding. A one-sentence question completed in well under a minute. Billed a flat $0.10 per run — pricing.billingMode is fixed_request, so unlike a Firecrawl crawl the price does not grow with what it finds. Use it when a report is the deliverable. For an answer you read in one sitting, post_exa_answer returns in about two seconds. Send a fresh Idempotency-Key per distinct task.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
inputNoRow-processing input: rows to process and exclusions.
queryYesThe natural-language research query.
effortNoCompute/depth tier for the run.
dataSourcesNoThird-party data sources (Exa Connect) the Agent is granted access to.
outputSchemaNoJSON Schema used to validate the structured output.
previousRunIdNoContinue from a previously completed run.
Idempotency-KeyYesUnique key (1 to 191 characters) that makes the submit idempotent. Re-submitting with the same key and request fingerprint returns the original run.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior1/5

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

The description clearly describes a mutating submission operation that creates a background run and bills $0.10, but the annotations declare readOnlyHint=true. That is an annotation contradiction: submitting a run and receiving HTTP 202 is not a read-only action, even though the description is otherwise rich about async behavior and polling.

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 description is front-loaded with the core action and then moves through required inputs, lifecycle, pricing, and alternatives. It is long but each section earns its place, with only minor redundancy like repeating that the run is asynchronous after already saying it works in the background.

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 complex asynchronous submit-plus-poll tool, the description covers everything needed to call and monitor it: required parameters, job envelope fields, polling endpoint, latency expectation, pricing, and the sibling alternative. The output schema handles return-value details, so nothing critical 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?

The schema already has 100% coverage, so the baseline is 3, but the description adds real meaning: 'effort' trades depth against time, 'outputSchema' shapes the result, 'dataSources' restricts where the agent looks, and 'previousRunId' continues an earlier run. It also reinforces that query and Idempotency-Key are required and that a fresh key is needed per distinct task.

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?

The description states a specific action and resource: hand a research task to a background agent and get an async run. It also names distinct use cases and contrasts with post_exa_answer, so an agent can tell this tool apart from its 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?

The description gives explicit when-to-use guidance ('Use it when a report is the deliverable'), when-not-to-use guidance ('For an answer you read in one sitting, post_exa_answer returns in about two seconds'), and names get_exa_agent_run as the polling follow-up. It also notes flat pricing, which helps an agent decide between this and Firecrawl crawls.

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.

Resources